forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.h
....@@ -28,41 +28,44 @@
2828
2929 struct hw_gpio_pin;
3030 struct hw_hpd;
31
+struct hw_ddc;
32
+struct hw_generic;
33
+struct gpio;
3134
3235 struct hw_factory {
3336 uint32_t number_of_pins[GPIO_ID_COUNT];
3437
3538 const struct hw_factory_funcs {
36
- struct hw_gpio_pin *(*create_ddc_data)(
37
- struct dc_context *ctx,
38
- enum gpio_id id,
39
- uint32_t en);
40
- struct hw_gpio_pin *(*create_ddc_clock)(
41
- struct dc_context *ctx,
42
- enum gpio_id id,
43
- uint32_t en);
44
- struct hw_gpio_pin *(*create_generic)(
45
- struct dc_context *ctx,
46
- enum gpio_id id,
47
- uint32_t en);
48
- struct hw_gpio_pin *(*create_hpd)(
49
- struct dc_context *ctx,
50
- enum gpio_id id,
51
- uint32_t en);
52
- struct hw_gpio_pin *(*create_sync)(
53
- struct dc_context *ctx,
54
- enum gpio_id id,
55
- uint32_t en);
56
- struct hw_gpio_pin *(*create_gsl)(
57
- struct dc_context *ctx,
58
- enum gpio_id id,
59
- uint32_t en);
39
+ void (*init_ddc_data)(
40
+ struct hw_ddc **hw_ddc,
41
+ struct dc_context *ctx,
42
+ enum gpio_id id,
43
+ uint32_t en);
44
+ void (*init_generic)(
45
+ struct hw_generic **hw_generic,
46
+ struct dc_context *ctx,
47
+ enum gpio_id id,
48
+ uint32_t en);
49
+ void (*init_hpd)(
50
+ struct hw_hpd **hw_hpd,
51
+ struct dc_context *ctx,
52
+ enum gpio_id id,
53
+ uint32_t en);
54
+ struct hw_gpio_pin *(*get_hpd_pin)(
55
+ struct gpio *gpio);
56
+ struct hw_gpio_pin *(*get_ddc_pin)(
57
+ struct gpio *gpio);
58
+ struct hw_gpio_pin *(*get_generic_pin)(
59
+ struct gpio *gpio);
6060 void (*define_hpd_registers)(
6161 struct hw_gpio_pin *pin,
6262 uint32_t en);
6363 void (*define_ddc_registers)(
6464 struct hw_gpio_pin *pin,
6565 uint32_t en);
66
+ void (*define_generic_registers)(
67
+ struct hw_gpio_pin *pin,
68
+ uint32_t en);
6669 } *funcs;
6770 };
6871