diff options
71 files changed, 135 insertions, 109 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c index 4dcc8fba5792..093599aba64b 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | |||
@@ -3729,7 +3729,7 @@ static void dce_v10_0_encoder_add(struct amdgpu_device *adev, | |||
3729 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: | 3729 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: |
3730 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: | 3730 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: |
3731 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3731 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3732 | DRM_MODE_ENCODER_DAC); | 3732 | DRM_MODE_ENCODER_DAC, NULL); |
3733 | drm_encoder_helper_add(encoder, &dce_v10_0_dac_helper_funcs); | 3733 | drm_encoder_helper_add(encoder, &dce_v10_0_dac_helper_funcs); |
3734 | break; | 3734 | break; |
3735 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: | 3735 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: |
@@ -3740,15 +3740,15 @@ static void dce_v10_0_encoder_add(struct amdgpu_device *adev, | |||
3740 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { | 3740 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { |
3741 | amdgpu_encoder->rmx_type = RMX_FULL; | 3741 | amdgpu_encoder->rmx_type = RMX_FULL; |
3742 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3742 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3743 | DRM_MODE_ENCODER_LVDS); | 3743 | DRM_MODE_ENCODER_LVDS, NULL); |
3744 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_lcd_info(amdgpu_encoder); | 3744 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_lcd_info(amdgpu_encoder); |
3745 | } else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { | 3745 | } else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { |
3746 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3746 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3747 | DRM_MODE_ENCODER_DAC); | 3747 | DRM_MODE_ENCODER_DAC, NULL); |
3748 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); | 3748 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); |
3749 | } else { | 3749 | } else { |
3750 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3750 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3751 | DRM_MODE_ENCODER_TMDS); | 3751 | DRM_MODE_ENCODER_TMDS, NULL); |
3752 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); | 3752 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); |
3753 | } | 3753 | } |
3754 | drm_encoder_helper_add(encoder, &dce_v10_0_dig_helper_funcs); | 3754 | drm_encoder_helper_add(encoder, &dce_v10_0_dig_helper_funcs); |
@@ -3766,13 +3766,13 @@ static void dce_v10_0_encoder_add(struct amdgpu_device *adev, | |||
3766 | amdgpu_encoder->is_ext_encoder = true; | 3766 | amdgpu_encoder->is_ext_encoder = true; |
3767 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) | 3767 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) |
3768 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3768 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3769 | DRM_MODE_ENCODER_LVDS); | 3769 | DRM_MODE_ENCODER_LVDS, NULL); |
3770 | else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) | 3770 | else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) |
3771 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3771 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3772 | DRM_MODE_ENCODER_DAC); | 3772 | DRM_MODE_ENCODER_DAC, NULL); |
3773 | else | 3773 | else |
3774 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, | 3774 | drm_encoder_init(dev, encoder, &dce_v10_0_encoder_funcs, |
3775 | DRM_MODE_ENCODER_TMDS); | 3775 | DRM_MODE_ENCODER_TMDS, NULL); |
3776 | drm_encoder_helper_add(encoder, &dce_v10_0_ext_helper_funcs); | 3776 | drm_encoder_helper_add(encoder, &dce_v10_0_ext_helper_funcs); |
3777 | break; | 3777 | break; |
3778 | } | 3778 | } |
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c index 8f1e51128b33..8701661a8868 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | |||
@@ -3722,7 +3722,7 @@ static void dce_v11_0_encoder_add(struct amdgpu_device *adev, | |||
3722 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: | 3722 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: |
3723 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: | 3723 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: |
3724 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3724 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3725 | DRM_MODE_ENCODER_DAC); | 3725 | DRM_MODE_ENCODER_DAC, NULL); |
3726 | drm_encoder_helper_add(encoder, &dce_v11_0_dac_helper_funcs); | 3726 | drm_encoder_helper_add(encoder, &dce_v11_0_dac_helper_funcs); |
3727 | break; | 3727 | break; |
3728 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: | 3728 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: |
@@ -3733,15 +3733,15 @@ static void dce_v11_0_encoder_add(struct amdgpu_device *adev, | |||
3733 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { | 3733 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { |
3734 | amdgpu_encoder->rmx_type = RMX_FULL; | 3734 | amdgpu_encoder->rmx_type = RMX_FULL; |
3735 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3735 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3736 | DRM_MODE_ENCODER_LVDS); | 3736 | DRM_MODE_ENCODER_LVDS, NULL); |
3737 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_lcd_info(amdgpu_encoder); | 3737 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_lcd_info(amdgpu_encoder); |
3738 | } else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { | 3738 | } else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { |
3739 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3739 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3740 | DRM_MODE_ENCODER_DAC); | 3740 | DRM_MODE_ENCODER_DAC, NULL); |
3741 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); | 3741 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); |
3742 | } else { | 3742 | } else { |
3743 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3743 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3744 | DRM_MODE_ENCODER_TMDS); | 3744 | DRM_MODE_ENCODER_TMDS, NULL); |
3745 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); | 3745 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); |
3746 | } | 3746 | } |
3747 | drm_encoder_helper_add(encoder, &dce_v11_0_dig_helper_funcs); | 3747 | drm_encoder_helper_add(encoder, &dce_v11_0_dig_helper_funcs); |
@@ -3759,13 +3759,13 @@ static void dce_v11_0_encoder_add(struct amdgpu_device *adev, | |||
3759 | amdgpu_encoder->is_ext_encoder = true; | 3759 | amdgpu_encoder->is_ext_encoder = true; |
3760 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) | 3760 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) |
3761 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3761 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3762 | DRM_MODE_ENCODER_LVDS); | 3762 | DRM_MODE_ENCODER_LVDS, NULL); |
3763 | else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) | 3763 | else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) |
3764 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3764 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3765 | DRM_MODE_ENCODER_DAC); | 3765 | DRM_MODE_ENCODER_DAC, NULL); |
3766 | else | 3766 | else |
3767 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, | 3767 | drm_encoder_init(dev, encoder, &dce_v11_0_encoder_funcs, |
3768 | DRM_MODE_ENCODER_TMDS); | 3768 | DRM_MODE_ENCODER_TMDS, NULL); |
3769 | drm_encoder_helper_add(encoder, &dce_v11_0_ext_helper_funcs); | 3769 | drm_encoder_helper_add(encoder, &dce_v11_0_ext_helper_funcs); |
3770 | break; | 3770 | break; |
3771 | } | 3771 | } |
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c index 42d954dc436d..d0e128c24813 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | |||
@@ -3659,7 +3659,7 @@ static void dce_v8_0_encoder_add(struct amdgpu_device *adev, | |||
3659 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: | 3659 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: |
3660 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: | 3660 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: |
3661 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3661 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3662 | DRM_MODE_ENCODER_DAC); | 3662 | DRM_MODE_ENCODER_DAC, NULL); |
3663 | drm_encoder_helper_add(encoder, &dce_v8_0_dac_helper_funcs); | 3663 | drm_encoder_helper_add(encoder, &dce_v8_0_dac_helper_funcs); |
3664 | break; | 3664 | break; |
3665 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: | 3665 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1: |
@@ -3670,15 +3670,15 @@ static void dce_v8_0_encoder_add(struct amdgpu_device *adev, | |||
3670 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { | 3670 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { |
3671 | amdgpu_encoder->rmx_type = RMX_FULL; | 3671 | amdgpu_encoder->rmx_type = RMX_FULL; |
3672 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3672 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3673 | DRM_MODE_ENCODER_LVDS); | 3673 | DRM_MODE_ENCODER_LVDS, NULL); |
3674 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_lcd_info(amdgpu_encoder); | 3674 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_lcd_info(amdgpu_encoder); |
3675 | } else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { | 3675 | } else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { |
3676 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3676 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3677 | DRM_MODE_ENCODER_DAC); | 3677 | DRM_MODE_ENCODER_DAC, NULL); |
3678 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); | 3678 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); |
3679 | } else { | 3679 | } else { |
3680 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3680 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3681 | DRM_MODE_ENCODER_TMDS); | 3681 | DRM_MODE_ENCODER_TMDS, NULL); |
3682 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); | 3682 | amdgpu_encoder->enc_priv = amdgpu_atombios_encoder_get_dig_info(amdgpu_encoder); |
3683 | } | 3683 | } |
3684 | drm_encoder_helper_add(encoder, &dce_v8_0_dig_helper_funcs); | 3684 | drm_encoder_helper_add(encoder, &dce_v8_0_dig_helper_funcs); |
@@ -3696,13 +3696,13 @@ static void dce_v8_0_encoder_add(struct amdgpu_device *adev, | |||
3696 | amdgpu_encoder->is_ext_encoder = true; | 3696 | amdgpu_encoder->is_ext_encoder = true; |
3697 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) | 3697 | if (amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) |
3698 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3698 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3699 | DRM_MODE_ENCODER_LVDS); | 3699 | DRM_MODE_ENCODER_LVDS, NULL); |
3700 | else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) | 3700 | else if (amdgpu_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) |
3701 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3701 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3702 | DRM_MODE_ENCODER_DAC); | 3702 | DRM_MODE_ENCODER_DAC, NULL); |
3703 | else | 3703 | else |
3704 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, | 3704 | drm_encoder_init(dev, encoder, &dce_v8_0_encoder_funcs, |
3705 | DRM_MODE_ENCODER_TMDS); | 3705 | DRM_MODE_ENCODER_TMDS, NULL); |
3706 | drm_encoder_helper_add(encoder, &dce_v8_0_ext_helper_funcs); | 3706 | drm_encoder_helper_add(encoder, &dce_v8_0_ext_helper_funcs); |
3707 | break; | 3707 | break; |
3708 | } | 3708 | } |
diff --git a/drivers/gpu/drm/ast/ast_mode.c b/drivers/gpu/drm/ast/ast_mode.c index 69d19f3304a5..0123458cbd83 100644 --- a/drivers/gpu/drm/ast/ast_mode.c +++ b/drivers/gpu/drm/ast/ast_mode.c | |||
@@ -751,7 +751,7 @@ static int ast_encoder_init(struct drm_device *dev) | |||
751 | return -ENOMEM; | 751 | return -ENOMEM; |
752 | 752 | ||
753 | drm_encoder_init(dev, &ast_encoder->base, &ast_enc_funcs, | 753 | drm_encoder_init(dev, &ast_encoder->base, &ast_enc_funcs, |
754 | DRM_MODE_ENCODER_DAC); | 754 | DRM_MODE_ENCODER_DAC, NULL); |
755 | drm_encoder_helper_add(&ast_encoder->base, &ast_enc_helper_funcs); | 755 | drm_encoder_helper_add(&ast_encoder->base, &ast_enc_helper_funcs); |
756 | 756 | ||
757 | ast_encoder->base.possible_crtcs = 1; | 757 | ast_encoder->base.possible_crtcs = 1; |
diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c index 067e4c144bd6..d1129000c5cf 100644 --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | |||
@@ -256,7 +256,7 @@ static int atmel_hlcdc_create_panel_output(struct drm_device *dev, | |||
256 | &atmel_hlcdc_panel_encoder_helper_funcs); | 256 | &atmel_hlcdc_panel_encoder_helper_funcs); |
257 | ret = drm_encoder_init(dev, &panel->base.encoder, | 257 | ret = drm_encoder_init(dev, &panel->base.encoder, |
258 | &atmel_hlcdc_panel_encoder_funcs, | 258 | &atmel_hlcdc_panel_encoder_funcs, |
259 | DRM_MODE_ENCODER_LVDS); | 259 | DRM_MODE_ENCODER_LVDS, NULL); |
260 | if (ret) | 260 | if (ret) |
261 | return ret; | 261 | return ret; |
262 | 262 | ||
diff --git a/drivers/gpu/drm/bochs/bochs_kms.c b/drivers/gpu/drm/bochs/bochs_kms.c index 26bcd03a8cb6..a88be6dd34a4 100644 --- a/drivers/gpu/drm/bochs/bochs_kms.c +++ b/drivers/gpu/drm/bochs/bochs_kms.c | |||
@@ -196,7 +196,7 @@ static void bochs_encoder_init(struct drm_device *dev) | |||
196 | 196 | ||
197 | encoder->possible_crtcs = 0x1; | 197 | encoder->possible_crtcs = 0x1; |
198 | drm_encoder_init(dev, encoder, &bochs_encoder_encoder_funcs, | 198 | drm_encoder_init(dev, encoder, &bochs_encoder_encoder_funcs, |
199 | DRM_MODE_ENCODER_DAC); | 199 | DRM_MODE_ENCODER_DAC, NULL); |
200 | drm_encoder_helper_add(encoder, &bochs_encoder_helper_funcs); | 200 | drm_encoder_helper_add(encoder, &bochs_encoder_helper_funcs); |
201 | } | 201 | } |
202 | 202 | ||
diff --git a/drivers/gpu/drm/cirrus/cirrus_mode.c b/drivers/gpu/drm/cirrus/cirrus_mode.c index 61385f2298bf..276719e52153 100644 --- a/drivers/gpu/drm/cirrus/cirrus_mode.c +++ b/drivers/gpu/drm/cirrus/cirrus_mode.c | |||
@@ -489,7 +489,7 @@ static struct drm_encoder *cirrus_encoder_init(struct drm_device *dev) | |||
489 | encoder->possible_crtcs = 0x1; | 489 | encoder->possible_crtcs = 0x1; |
490 | 490 | ||
491 | drm_encoder_init(dev, encoder, &cirrus_encoder_encoder_funcs, | 491 | drm_encoder_init(dev, encoder, &cirrus_encoder_encoder_funcs, |
492 | DRM_MODE_ENCODER_DAC); | 492 | DRM_MODE_ENCODER_DAC, NULL); |
493 | drm_encoder_helper_add(encoder, &cirrus_encoder_helper_funcs); | 493 | drm_encoder_helper_add(encoder, &cirrus_encoder_helper_funcs); |
494 | 494 | ||
495 | return encoder; | 495 | return encoder; |
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 20d67a06efce..b1111ea2b29d 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c | |||
@@ -1077,6 +1077,7 @@ EXPORT_SYMBOL(drm_connector_unplug_all); | |||
1077 | * @encoder: the encoder to init | 1077 | * @encoder: the encoder to init |
1078 | * @funcs: callbacks for this encoder | 1078 | * @funcs: callbacks for this encoder |
1079 | * @encoder_type: user visible type of the encoder | 1079 | * @encoder_type: user visible type of the encoder |
1080 | * @name: printf style format string for the encoder name, or NULL for default name | ||
1080 | * | 1081 | * |
1081 | * Initialises a preallocated encoder. Encoder should be | 1082 | * Initialises a preallocated encoder. Encoder should be |
1082 | * subclassed as part of driver encoder objects. | 1083 | * subclassed as part of driver encoder objects. |
@@ -1087,7 +1088,7 @@ EXPORT_SYMBOL(drm_connector_unplug_all); | |||
1087 | int drm_encoder_init(struct drm_device *dev, | 1088 | int drm_encoder_init(struct drm_device *dev, |
1088 | struct drm_encoder *encoder, | 1089 | struct drm_encoder *encoder, |
1089 | const struct drm_encoder_funcs *funcs, | 1090 | const struct drm_encoder_funcs *funcs, |
1090 | int encoder_type) | 1091 | int encoder_type, const char *name, ...) |
1091 | { | 1092 | { |
1092 | int ret; | 1093 | int ret; |
1093 | 1094 | ||
diff --git a/drivers/gpu/drm/exynos/exynos_dp_core.c b/drivers/gpu/drm/exynos/exynos_dp_core.c index 124fb9a56f02..cf17713907bd 100644 --- a/drivers/gpu/drm/exynos/exynos_dp_core.c +++ b/drivers/gpu/drm/exynos/exynos_dp_core.c | |||
@@ -1313,7 +1313,7 @@ static int exynos_dp_bind(struct device *dev, struct device *master, void *data) | |||
1313 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); | 1313 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); |
1314 | 1314 | ||
1315 | drm_encoder_init(drm_dev, encoder, &exynos_dp_encoder_funcs, | 1315 | drm_encoder_init(drm_dev, encoder, &exynos_dp_encoder_funcs, |
1316 | DRM_MODE_ENCODER_TMDS); | 1316 | DRM_MODE_ENCODER_TMDS, NULL); |
1317 | 1317 | ||
1318 | drm_encoder_helper_add(encoder, &exynos_dp_encoder_helper_funcs); | 1318 | drm_encoder_helper_add(encoder, &exynos_dp_encoder_helper_funcs); |
1319 | 1319 | ||
diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c index c748b8790de3..1dbf8dca2d6b 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_dpi.c +++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c | |||
@@ -309,7 +309,7 @@ int exynos_dpi_bind(struct drm_device *dev, struct drm_encoder *encoder) | |||
309 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); | 309 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); |
310 | 310 | ||
311 | drm_encoder_init(dev, encoder, &exynos_dpi_encoder_funcs, | 311 | drm_encoder_init(dev, encoder, &exynos_dpi_encoder_funcs, |
312 | DRM_MODE_ENCODER_TMDS); | 312 | DRM_MODE_ENCODER_TMDS, NULL); |
313 | 313 | ||
314 | drm_encoder_helper_add(encoder, &exynos_dpi_encoder_helper_funcs); | 314 | drm_encoder_helper_add(encoder, &exynos_dpi_encoder_helper_funcs); |
315 | 315 | ||
diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c index 12b03b364703..0a99160afaaa 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c | |||
@@ -1831,7 +1831,7 @@ static int exynos_dsi_bind(struct device *dev, struct device *master, | |||
1831 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); | 1831 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); |
1832 | 1832 | ||
1833 | drm_encoder_init(drm_dev, encoder, &exynos_dsi_encoder_funcs, | 1833 | drm_encoder_init(drm_dev, encoder, &exynos_dsi_encoder_funcs, |
1834 | DRM_MODE_ENCODER_TMDS); | 1834 | DRM_MODE_ENCODER_TMDS, NULL); |
1835 | 1835 | ||
1836 | drm_encoder_helper_add(encoder, &exynos_dsi_encoder_helper_funcs); | 1836 | drm_encoder_helper_add(encoder, &exynos_dsi_encoder_helper_funcs); |
1837 | 1837 | ||
diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.c b/drivers/gpu/drm/exynos/exynos_drm_vidi.c index 669362c53f49..c34d49a8fd84 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_vidi.c +++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.c | |||
@@ -473,7 +473,7 @@ static int vidi_bind(struct device *dev, struct device *master, void *data) | |||
473 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); | 473 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); |
474 | 474 | ||
475 | drm_encoder_init(drm_dev, encoder, &exynos_vidi_encoder_funcs, | 475 | drm_encoder_init(drm_dev, encoder, &exynos_vidi_encoder_funcs, |
476 | DRM_MODE_ENCODER_TMDS); | 476 | DRM_MODE_ENCODER_TMDS, NULL); |
477 | 477 | ||
478 | drm_encoder_helper_add(encoder, &exynos_vidi_encoder_helper_funcs); | 478 | drm_encoder_helper_add(encoder, &exynos_vidi_encoder_helper_funcs); |
479 | 479 | ||
diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c index 57b675563e94..ba3543e1af6e 100644 --- a/drivers/gpu/drm/exynos/exynos_hdmi.c +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c | |||
@@ -1793,7 +1793,7 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data) | |||
1793 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); | 1793 | DRM_DEBUG_KMS("possible_crtcs = 0x%x\n", encoder->possible_crtcs); |
1794 | 1794 | ||
1795 | drm_encoder_init(drm_dev, encoder, &exynos_hdmi_encoder_funcs, | 1795 | drm_encoder_init(drm_dev, encoder, &exynos_hdmi_encoder_funcs, |
1796 | DRM_MODE_ENCODER_TMDS); | 1796 | DRM_MODE_ENCODER_TMDS, NULL); |
1797 | 1797 | ||
1798 | drm_encoder_helper_add(encoder, &exynos_hdmi_encoder_helper_funcs); | 1798 | drm_encoder_helper_add(encoder, &exynos_hdmi_encoder_helper_funcs); |
1799 | 1799 | ||
diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c index fe8ab5da04fb..8780deba5e8a 100644 --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | |||
@@ -57,7 +57,7 @@ int fsl_dcu_drm_encoder_create(struct fsl_dcu_drm_device *fsl_dev, | |||
57 | 57 | ||
58 | encoder->possible_crtcs = 1; | 58 | encoder->possible_crtcs = 1; |
59 | ret = drm_encoder_init(fsl_dev->drm, encoder, &encoder_funcs, | 59 | ret = drm_encoder_init(fsl_dev->drm, encoder, &encoder_funcs, |
60 | DRM_MODE_ENCODER_LVDS); | 60 | DRM_MODE_ENCODER_LVDS, NULL); |
61 | if (ret < 0) | 61 | if (ret < 0) |
62 | return ret; | 62 | return ret; |
63 | 63 | ||
diff --git a/drivers/gpu/drm/gma500/cdv_intel_crt.c b/drivers/gpu/drm/gma500/cdv_intel_crt.c index 248c33a35ebf..d0717a85c7ec 100644 --- a/drivers/gpu/drm/gma500/cdv_intel_crt.c +++ b/drivers/gpu/drm/gma500/cdv_intel_crt.c | |||
@@ -273,7 +273,7 @@ void cdv_intel_crt_init(struct drm_device *dev, | |||
273 | 273 | ||
274 | encoder = &gma_encoder->base; | 274 | encoder = &gma_encoder->base; |
275 | drm_encoder_init(dev, encoder, | 275 | drm_encoder_init(dev, encoder, |
276 | &cdv_intel_crt_enc_funcs, DRM_MODE_ENCODER_DAC); | 276 | &cdv_intel_crt_enc_funcs, DRM_MODE_ENCODER_DAC, NULL); |
277 | 277 | ||
278 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 278 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
279 | 279 | ||
diff --git a/drivers/gpu/drm/gma500/cdv_intel_dp.c b/drivers/gpu/drm/gma500/cdv_intel_dp.c index 17cea400ae32..7bb1f1aff932 100644 --- a/drivers/gpu/drm/gma500/cdv_intel_dp.c +++ b/drivers/gpu/drm/gma500/cdv_intel_dp.c | |||
@@ -2020,7 +2020,8 @@ cdv_intel_dp_init(struct drm_device *dev, struct psb_intel_mode_device *mode_dev | |||
2020 | encoder = &gma_encoder->base; | 2020 | encoder = &gma_encoder->base; |
2021 | 2021 | ||
2022 | drm_connector_init(dev, connector, &cdv_intel_dp_connector_funcs, type); | 2022 | drm_connector_init(dev, connector, &cdv_intel_dp_connector_funcs, type); |
2023 | drm_encoder_init(dev, encoder, &cdv_intel_dp_enc_funcs, DRM_MODE_ENCODER_TMDS); | 2023 | drm_encoder_init(dev, encoder, &cdv_intel_dp_enc_funcs, |
2024 | DRM_MODE_ENCODER_TMDS, NULL); | ||
2024 | 2025 | ||
2025 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 2026 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
2026 | 2027 | ||
diff --git a/drivers/gpu/drm/gma500/cdv_intel_hdmi.c b/drivers/gpu/drm/gma500/cdv_intel_hdmi.c index e7b1e99fe2cc..ddf2d7700759 100644 --- a/drivers/gpu/drm/gma500/cdv_intel_hdmi.c +++ b/drivers/gpu/drm/gma500/cdv_intel_hdmi.c | |||
@@ -313,7 +313,7 @@ void cdv_hdmi_init(struct drm_device *dev, | |||
313 | DRM_MODE_CONNECTOR_DVID); | 313 | DRM_MODE_CONNECTOR_DVID); |
314 | 314 | ||
315 | drm_encoder_init(dev, encoder, &psb_intel_lvds_enc_funcs, | 315 | drm_encoder_init(dev, encoder, &psb_intel_lvds_enc_funcs, |
316 | DRM_MODE_ENCODER_TMDS); | 316 | DRM_MODE_ENCODER_TMDS, NULL); |
317 | 317 | ||
318 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 318 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
319 | gma_encoder->type = INTEL_OUTPUT_HDMI; | 319 | gma_encoder->type = INTEL_OUTPUT_HDMI; |
diff --git a/drivers/gpu/drm/gma500/cdv_intel_lvds.c b/drivers/gpu/drm/gma500/cdv_intel_lvds.c index 9e648bcb81a7..813ef23a8054 100644 --- a/drivers/gpu/drm/gma500/cdv_intel_lvds.c +++ b/drivers/gpu/drm/gma500/cdv_intel_lvds.c | |||
@@ -652,7 +652,7 @@ void cdv_intel_lvds_init(struct drm_device *dev, | |||
652 | 652 | ||
653 | drm_encoder_init(dev, encoder, | 653 | drm_encoder_init(dev, encoder, |
654 | &cdv_intel_lvds_enc_funcs, | 654 | &cdv_intel_lvds_enc_funcs, |
655 | DRM_MODE_ENCODER_LVDS); | 655 | DRM_MODE_ENCODER_LVDS, NULL); |
656 | 656 | ||
657 | 657 | ||
658 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 658 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c b/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c index d4813e03f5ee..1a1acd3cb049 100644 --- a/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c +++ b/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c | |||
@@ -994,7 +994,7 @@ struct mdfld_dsi_encoder *mdfld_dsi_dpi_init(struct drm_device *dev, | |||
994 | drm_encoder_init(dev, | 994 | drm_encoder_init(dev, |
995 | encoder, | 995 | encoder, |
996 | p_funcs->encoder_funcs, | 996 | p_funcs->encoder_funcs, |
997 | DRM_MODE_ENCODER_LVDS); | 997 | DRM_MODE_ENCODER_LVDS, NULL); |
998 | drm_encoder_helper_add(encoder, | 998 | drm_encoder_helper_add(encoder, |
999 | p_funcs->encoder_helper_funcs); | 999 | p_funcs->encoder_helper_funcs); |
1000 | 1000 | ||
diff --git a/drivers/gpu/drm/gma500/oaktrail_hdmi.c b/drivers/gpu/drm/gma500/oaktrail_hdmi.c index 2310d879cdc2..2d18499d6060 100644 --- a/drivers/gpu/drm/gma500/oaktrail_hdmi.c +++ b/drivers/gpu/drm/gma500/oaktrail_hdmi.c | |||
@@ -654,7 +654,7 @@ void oaktrail_hdmi_init(struct drm_device *dev, | |||
654 | 654 | ||
655 | drm_encoder_init(dev, encoder, | 655 | drm_encoder_init(dev, encoder, |
656 | &oaktrail_hdmi_enc_funcs, | 656 | &oaktrail_hdmi_enc_funcs, |
657 | DRM_MODE_ENCODER_TMDS); | 657 | DRM_MODE_ENCODER_TMDS, NULL); |
658 | 658 | ||
659 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 659 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
660 | 660 | ||
diff --git a/drivers/gpu/drm/gma500/oaktrail_lvds.c b/drivers/gpu/drm/gma500/oaktrail_lvds.c index 83bbc271bcfb..f7038f12ac76 100644 --- a/drivers/gpu/drm/gma500/oaktrail_lvds.c +++ b/drivers/gpu/drm/gma500/oaktrail_lvds.c | |||
@@ -323,7 +323,7 @@ void oaktrail_lvds_init(struct drm_device *dev, | |||
323 | DRM_MODE_CONNECTOR_LVDS); | 323 | DRM_MODE_CONNECTOR_LVDS); |
324 | 324 | ||
325 | drm_encoder_init(dev, encoder, &psb_intel_lvds_enc_funcs, | 325 | drm_encoder_init(dev, encoder, &psb_intel_lvds_enc_funcs, |
326 | DRM_MODE_ENCODER_LVDS); | 326 | DRM_MODE_ENCODER_LVDS, NULL); |
327 | 327 | ||
328 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 328 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
329 | gma_encoder->type = INTEL_OUTPUT_LVDS; | 329 | gma_encoder->type = INTEL_OUTPUT_LVDS; |
diff --git a/drivers/gpu/drm/gma500/psb_intel_lvds.c b/drivers/gpu/drm/gma500/psb_intel_lvds.c index 0d6143702b86..b1b93317d054 100644 --- a/drivers/gpu/drm/gma500/psb_intel_lvds.c +++ b/drivers/gpu/drm/gma500/psb_intel_lvds.c | |||
@@ -723,7 +723,7 @@ void psb_intel_lvds_init(struct drm_device *dev, | |||
723 | 723 | ||
724 | drm_encoder_init(dev, encoder, | 724 | drm_encoder_init(dev, encoder, |
725 | &psb_intel_lvds_enc_funcs, | 725 | &psb_intel_lvds_enc_funcs, |
726 | DRM_MODE_ENCODER_LVDS); | 726 | DRM_MODE_ENCODER_LVDS, NULL); |
727 | 727 | ||
728 | gma_connector_attach_encoder(gma_connector, gma_encoder); | 728 | gma_connector_attach_encoder(gma_connector, gma_encoder); |
729 | gma_encoder->type = INTEL_OUTPUT_LVDS; | 729 | gma_encoder->type = INTEL_OUTPUT_LVDS; |
diff --git a/drivers/gpu/drm/gma500/psb_intel_sdvo.c b/drivers/gpu/drm/gma500/psb_intel_sdvo.c index 86f28ac1e673..e787d376ba67 100644 --- a/drivers/gpu/drm/gma500/psb_intel_sdvo.c +++ b/drivers/gpu/drm/gma500/psb_intel_sdvo.c | |||
@@ -2526,7 +2526,8 @@ bool psb_intel_sdvo_init(struct drm_device *dev, int sdvo_reg) | |||
2526 | /* encoder type will be decided later */ | 2526 | /* encoder type will be decided later */ |
2527 | gma_encoder = &psb_intel_sdvo->base; | 2527 | gma_encoder = &psb_intel_sdvo->base; |
2528 | gma_encoder->type = INTEL_OUTPUT_SDVO; | 2528 | gma_encoder->type = INTEL_OUTPUT_SDVO; |
2529 | drm_encoder_init(dev, &gma_encoder->base, &psb_intel_sdvo_enc_funcs, 0); | 2529 | drm_encoder_init(dev, &gma_encoder->base, &psb_intel_sdvo_enc_funcs, |
2530 | 0, NULL); | ||
2530 | 2531 | ||
2531 | /* Read the regs to test if we can talk to the device */ | 2532 | /* Read the regs to test if we can talk to the device */ |
2532 | for (i = 0; i < 0x40; i++) { | 2533 | for (i = 0; i < 0x40; i++) { |
diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/i2c/tda998x_drv.c index 79cb9208530e..a46248f0c9c3 100644 --- a/drivers/gpu/drm/i2c/tda998x_drv.c +++ b/drivers/gpu/drm/i2c/tda998x_drv.c | |||
@@ -1423,7 +1423,7 @@ static int tda998x_bind(struct device *dev, struct device *master, void *data) | |||
1423 | 1423 | ||
1424 | drm_encoder_helper_add(&priv->encoder, &tda998x_encoder_helper_funcs); | 1424 | drm_encoder_helper_add(&priv->encoder, &tda998x_encoder_helper_funcs); |
1425 | ret = drm_encoder_init(drm, &priv->encoder, &tda998x_encoder_funcs, | 1425 | ret = drm_encoder_init(drm, &priv->encoder, &tda998x_encoder_funcs, |
1426 | DRM_MODE_ENCODER_TMDS); | 1426 | DRM_MODE_ENCODER_TMDS, NULL); |
1427 | if (ret) | 1427 | if (ret) |
1428 | goto err_encoder; | 1428 | goto err_encoder; |
1429 | 1429 | ||
diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c index 27b3e610e8f0..912c0ac95f2a 100644 --- a/drivers/gpu/drm/i915/intel_crt.c +++ b/drivers/gpu/drm/i915/intel_crt.c | |||
@@ -798,7 +798,7 @@ void intel_crt_init(struct drm_device *dev) | |||
798 | &intel_crt_connector_funcs, DRM_MODE_CONNECTOR_VGA); | 798 | &intel_crt_connector_funcs, DRM_MODE_CONNECTOR_VGA); |
799 | 799 | ||
800 | drm_encoder_init(dev, &crt->base.base, &intel_crt_enc_funcs, | 800 | drm_encoder_init(dev, &crt->base.base, &intel_crt_enc_funcs, |
801 | DRM_MODE_ENCODER_DAC); | 801 | DRM_MODE_ENCODER_DAC, NULL); |
802 | 802 | ||
803 | intel_connector_attach_encoder(intel_connector, &crt->base); | 803 | intel_connector_attach_encoder(intel_connector, &crt->base); |
804 | 804 | ||
diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c index 76ce7c2960b6..37efcd16ec81 100644 --- a/drivers/gpu/drm/i915/intel_ddi.c +++ b/drivers/gpu/drm/i915/intel_ddi.c | |||
@@ -3284,7 +3284,7 @@ void intel_ddi_init(struct drm_device *dev, enum port port) | |||
3284 | encoder = &intel_encoder->base; | 3284 | encoder = &intel_encoder->base; |
3285 | 3285 | ||
3286 | drm_encoder_init(dev, encoder, &intel_ddi_funcs, | 3286 | drm_encoder_init(dev, encoder, &intel_ddi_funcs, |
3287 | DRM_MODE_ENCODER_TMDS); | 3287 | DRM_MODE_ENCODER_TMDS, NULL); |
3288 | 3288 | ||
3289 | intel_encoder->compute_config = intel_ddi_compute_config; | 3289 | intel_encoder->compute_config = intel_ddi_compute_config; |
3290 | intel_encoder->enable = intel_enable_ddi; | 3290 | intel_encoder->enable = intel_enable_ddi; |
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index e1ceff7ab265..9b10526cc6dd 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -5977,7 +5977,7 @@ intel_dp_init(struct drm_device *dev, | |||
5977 | encoder = &intel_encoder->base; | 5977 | encoder = &intel_encoder->base; |
5978 | 5978 | ||
5979 | drm_encoder_init(dev, &intel_encoder->base, &intel_dp_enc_funcs, | 5979 | drm_encoder_init(dev, &intel_encoder->base, &intel_dp_enc_funcs, |
5980 | DRM_MODE_ENCODER_TMDS); | 5980 | DRM_MODE_ENCODER_TMDS, NULL); |
5981 | 5981 | ||
5982 | intel_encoder->compute_config = intel_dp_compute_config; | 5982 | intel_encoder->compute_config = intel_dp_compute_config; |
5983 | intel_encoder->disable = intel_disable_dp; | 5983 | intel_encoder->disable = intel_disable_dp; |
diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c index 8c4e7dfe304c..e8d369d0a713 100644 --- a/drivers/gpu/drm/i915/intel_dp_mst.c +++ b/drivers/gpu/drm/i915/intel_dp_mst.c | |||
@@ -536,7 +536,7 @@ intel_dp_create_fake_mst_encoder(struct intel_digital_port *intel_dig_port, enum | |||
536 | intel_mst->primary = intel_dig_port; | 536 | intel_mst->primary = intel_dig_port; |
537 | 537 | ||
538 | drm_encoder_init(dev, &intel_encoder->base, &intel_dp_mst_enc_funcs, | 538 | drm_encoder_init(dev, &intel_encoder->base, &intel_dp_mst_enc_funcs, |
539 | DRM_MODE_ENCODER_DPMST); | 539 | DRM_MODE_ENCODER_DPMST, NULL); |
540 | 540 | ||
541 | intel_encoder->type = INTEL_OUTPUT_DP_MST; | 541 | intel_encoder->type = INTEL_OUTPUT_DP_MST; |
542 | intel_encoder->crtc_mask = 0x7; | 542 | intel_encoder->crtc_mask = 0x7; |
diff --git a/drivers/gpu/drm/i915/intel_dsi.c b/drivers/gpu/drm/i915/intel_dsi.c index efb5a27dd49c..add2cf541218 100644 --- a/drivers/gpu/drm/i915/intel_dsi.c +++ b/drivers/gpu/drm/i915/intel_dsi.c | |||
@@ -1152,7 +1152,8 @@ void intel_dsi_init(struct drm_device *dev) | |||
1152 | 1152 | ||
1153 | connector = &intel_connector->base; | 1153 | connector = &intel_connector->base; |
1154 | 1154 | ||
1155 | drm_encoder_init(dev, encoder, &intel_dsi_funcs, DRM_MODE_ENCODER_DSI); | 1155 | drm_encoder_init(dev, encoder, &intel_dsi_funcs, DRM_MODE_ENCODER_DSI, |
1156 | NULL); | ||
1156 | 1157 | ||
1157 | /* XXX: very likely not all of these are needed */ | 1158 | /* XXX: very likely not all of these are needed */ |
1158 | intel_encoder->compute_config = intel_dsi_compute_config; | 1159 | intel_encoder->compute_config = intel_dsi_compute_config; |
diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c index 7161deb2aed8..286baec979c8 100644 --- a/drivers/gpu/drm/i915/intel_dvo.c +++ b/drivers/gpu/drm/i915/intel_dvo.c | |||
@@ -429,7 +429,7 @@ void intel_dvo_init(struct drm_device *dev) | |||
429 | 429 | ||
430 | intel_encoder = &intel_dvo->base; | 430 | intel_encoder = &intel_dvo->base; |
431 | drm_encoder_init(dev, &intel_encoder->base, | 431 | drm_encoder_init(dev, &intel_encoder->base, |
432 | &intel_dvo_enc_funcs, encoder_type); | 432 | &intel_dvo_enc_funcs, encoder_type, NULL); |
433 | 433 | ||
434 | intel_encoder->disable = intel_disable_dvo; | 434 | intel_encoder->disable = intel_disable_dvo; |
435 | intel_encoder->enable = intel_enable_dvo; | 435 | intel_encoder->enable = intel_enable_dvo; |
diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c index bdd462e7c690..6dd1e09a894b 100644 --- a/drivers/gpu/drm/i915/intel_hdmi.c +++ b/drivers/gpu/drm/i915/intel_hdmi.c | |||
@@ -2165,7 +2165,7 @@ void intel_hdmi_init(struct drm_device *dev, | |||
2165 | intel_encoder = &intel_dig_port->base; | 2165 | intel_encoder = &intel_dig_port->base; |
2166 | 2166 | ||
2167 | drm_encoder_init(dev, &intel_encoder->base, &intel_hdmi_enc_funcs, | 2167 | drm_encoder_init(dev, &intel_encoder->base, &intel_hdmi_enc_funcs, |
2168 | DRM_MODE_ENCODER_TMDS); | 2168 | DRM_MODE_ENCODER_TMDS, NULL); |
2169 | 2169 | ||
2170 | intel_encoder->compute_config = intel_hdmi_compute_config; | 2170 | intel_encoder->compute_config = intel_hdmi_compute_config; |
2171 | if (HAS_PCH_SPLIT(dev)) { | 2171 | if (HAS_PCH_SPLIT(dev)) { |
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c index 61f1145f6579..0da0240caf81 100644 --- a/drivers/gpu/drm/i915/intel_lvds.c +++ b/drivers/gpu/drm/i915/intel_lvds.c | |||
@@ -1025,7 +1025,7 @@ void intel_lvds_init(struct drm_device *dev) | |||
1025 | DRM_MODE_CONNECTOR_LVDS); | 1025 | DRM_MODE_CONNECTOR_LVDS); |
1026 | 1026 | ||
1027 | drm_encoder_init(dev, &intel_encoder->base, &intel_lvds_enc_funcs, | 1027 | drm_encoder_init(dev, &intel_encoder->base, &intel_lvds_enc_funcs, |
1028 | DRM_MODE_ENCODER_LVDS); | 1028 | DRM_MODE_ENCODER_LVDS, NULL); |
1029 | 1029 | ||
1030 | intel_encoder->enable = intel_enable_lvds; | 1030 | intel_encoder->enable = intel_enable_lvds; |
1031 | intel_encoder->pre_enable = intel_pre_enable_lvds; | 1031 | intel_encoder->pre_enable = intel_pre_enable_lvds; |
diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c index 06679f164b3e..2e1da060b0e1 100644 --- a/drivers/gpu/drm/i915/intel_sdvo.c +++ b/drivers/gpu/drm/i915/intel_sdvo.c | |||
@@ -2978,7 +2978,8 @@ bool intel_sdvo_init(struct drm_device *dev, | |||
2978 | /* encoder type will be decided later */ | 2978 | /* encoder type will be decided later */ |
2979 | intel_encoder = &intel_sdvo->base; | 2979 | intel_encoder = &intel_sdvo->base; |
2980 | intel_encoder->type = INTEL_OUTPUT_SDVO; | 2980 | intel_encoder->type = INTEL_OUTPUT_SDVO; |
2981 | drm_encoder_init(dev, &intel_encoder->base, &intel_sdvo_enc_funcs, 0); | 2981 | drm_encoder_init(dev, &intel_encoder->base, &intel_sdvo_enc_funcs, 0, |
2982 | NULL); | ||
2982 | 2983 | ||
2983 | /* Read the regs to test if we can talk to the device */ | 2984 | /* Read the regs to test if we can talk to the device */ |
2984 | for (i = 0; i < 0x40; i++) { | 2985 | for (i = 0; i < 0x40; i++) { |
diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c index 6bea78944cd6..948cbff6c62e 100644 --- a/drivers/gpu/drm/i915/intel_tv.c +++ b/drivers/gpu/drm/i915/intel_tv.c | |||
@@ -1645,7 +1645,7 @@ intel_tv_init(struct drm_device *dev) | |||
1645 | DRM_MODE_CONNECTOR_SVIDEO); | 1645 | DRM_MODE_CONNECTOR_SVIDEO); |
1646 | 1646 | ||
1647 | drm_encoder_init(dev, &intel_encoder->base, &intel_tv_enc_funcs, | 1647 | drm_encoder_init(dev, &intel_encoder->base, &intel_tv_enc_funcs, |
1648 | DRM_MODE_ENCODER_TVDAC); | 1648 | DRM_MODE_ENCODER_TVDAC, NULL); |
1649 | 1649 | ||
1650 | intel_encoder->compute_config = intel_tv_compute_config; | 1650 | intel_encoder->compute_config = intel_tv_compute_config; |
1651 | intel_encoder->get_config = intel_tv_get_config; | 1651 | intel_encoder->get_config = intel_tv_get_config; |
diff --git a/drivers/gpu/drm/imx/dw_hdmi-imx.c b/drivers/gpu/drm/imx/dw_hdmi-imx.c index 98605ea2ad9d..35fcf6b84537 100644 --- a/drivers/gpu/drm/imx/dw_hdmi-imx.c +++ b/drivers/gpu/drm/imx/dw_hdmi-imx.c | |||
@@ -251,7 +251,7 @@ static int dw_hdmi_imx_bind(struct device *dev, struct device *master, | |||
251 | 251 | ||
252 | drm_encoder_helper_add(encoder, &dw_hdmi_imx_encoder_helper_funcs); | 252 | drm_encoder_helper_add(encoder, &dw_hdmi_imx_encoder_helper_funcs); |
253 | drm_encoder_init(drm, encoder, &dw_hdmi_imx_encoder_funcs, | 253 | drm_encoder_init(drm, encoder, &dw_hdmi_imx_encoder_funcs, |
254 | DRM_MODE_ENCODER_TMDS); | 254 | DRM_MODE_ENCODER_TMDS, NULL); |
255 | 255 | ||
256 | return dw_hdmi_bind(dev, master, data, encoder, iores, irq, plat_data); | 256 | return dw_hdmi_bind(dev, master, data, encoder, iores, irq, plat_data); |
257 | } | 257 | } |
diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c index abacc8f67469..c79a61b67ded 100644 --- a/drivers/gpu/drm/imx/imx-ldb.c +++ b/drivers/gpu/drm/imx/imx-ldb.c | |||
@@ -422,7 +422,7 @@ static int imx_ldb_register(struct drm_device *drm, | |||
422 | drm_encoder_helper_add(&imx_ldb_ch->encoder, | 422 | drm_encoder_helper_add(&imx_ldb_ch->encoder, |
423 | &imx_ldb_encoder_helper_funcs); | 423 | &imx_ldb_encoder_helper_funcs); |
424 | drm_encoder_init(drm, &imx_ldb_ch->encoder, &imx_ldb_encoder_funcs, | 424 | drm_encoder_init(drm, &imx_ldb_ch->encoder, &imx_ldb_encoder_funcs, |
425 | DRM_MODE_ENCODER_LVDS); | 425 | DRM_MODE_ENCODER_LVDS, NULL); |
426 | 426 | ||
427 | drm_connector_helper_add(&imx_ldb_ch->connector, | 427 | drm_connector_helper_add(&imx_ldb_ch->connector, |
428 | &imx_ldb_connector_helper_funcs); | 428 | &imx_ldb_connector_helper_funcs); |
diff --git a/drivers/gpu/drm/imx/imx-tve.c b/drivers/gpu/drm/imx/imx-tve.c index f9597146dc67..e61a8fca77cd 100644 --- a/drivers/gpu/drm/imx/imx-tve.c +++ b/drivers/gpu/drm/imx/imx-tve.c | |||
@@ -508,7 +508,7 @@ static int imx_tve_register(struct drm_device *drm, struct imx_tve *tve) | |||
508 | 508 | ||
509 | drm_encoder_helper_add(&tve->encoder, &imx_tve_encoder_helper_funcs); | 509 | drm_encoder_helper_add(&tve->encoder, &imx_tve_encoder_helper_funcs); |
510 | drm_encoder_init(drm, &tve->encoder, &imx_tve_encoder_funcs, | 510 | drm_encoder_init(drm, &tve->encoder, &imx_tve_encoder_funcs, |
511 | encoder_type); | 511 | encoder_type, NULL); |
512 | 512 | ||
513 | drm_connector_helper_add(&tve->connector, | 513 | drm_connector_helper_add(&tve->connector, |
514 | &imx_tve_connector_helper_funcs); | 514 | &imx_tve_connector_helper_funcs); |
diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c index 2e9b9f1b5cd2..fcbe4d2eeabf 100644 --- a/drivers/gpu/drm/imx/parallel-display.c +++ b/drivers/gpu/drm/imx/parallel-display.c | |||
@@ -192,7 +192,7 @@ static int imx_pd_register(struct drm_device *drm, | |||
192 | 192 | ||
193 | drm_encoder_helper_add(&imxpd->encoder, &imx_pd_encoder_helper_funcs); | 193 | drm_encoder_helper_add(&imxpd->encoder, &imx_pd_encoder_helper_funcs); |
194 | drm_encoder_init(drm, &imxpd->encoder, &imx_pd_encoder_funcs, | 194 | drm_encoder_init(drm, &imxpd->encoder, &imx_pd_encoder_funcs, |
195 | DRM_MODE_ENCODER_NONE); | 195 | DRM_MODE_ENCODER_NONE, NULL); |
196 | 196 | ||
197 | drm_connector_helper_add(&imxpd->connector, | 197 | drm_connector_helper_add(&imxpd->connector, |
198 | &imx_pd_connector_helper_funcs); | 198 | &imx_pd_connector_helper_funcs); |
diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c index c99d3fe12881..31802128dfbb 100644 --- a/drivers/gpu/drm/mgag200/mgag200_mode.c +++ b/drivers/gpu/drm/mgag200/mgag200_mode.c | |||
@@ -1538,7 +1538,7 @@ static struct drm_encoder *mga_encoder_init(struct drm_device *dev) | |||
1538 | encoder->possible_crtcs = 0x1; | 1538 | encoder->possible_crtcs = 0x1; |
1539 | 1539 | ||
1540 | drm_encoder_init(dev, encoder, &mga_encoder_encoder_funcs, | 1540 | drm_encoder_init(dev, encoder, &mga_encoder_encoder_funcs, |
1541 | DRM_MODE_ENCODER_DAC); | 1541 | DRM_MODE_ENCODER_DAC, NULL); |
1542 | drm_encoder_helper_add(encoder, &mga_encoder_helper_funcs); | 1542 | drm_encoder_helper_add(encoder, &mga_encoder_helper_funcs); |
1543 | 1543 | ||
1544 | return encoder; | 1544 | return encoder; |
diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_dtv_encoder.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_dtv_encoder.c index 89614c6a6c1b..a21df54cb50f 100644 --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_dtv_encoder.c +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_dtv_encoder.c | |||
@@ -262,7 +262,7 @@ struct drm_encoder *mdp4_dtv_encoder_init(struct drm_device *dev) | |||
262 | encoder = &mdp4_dtv_encoder->base; | 262 | encoder = &mdp4_dtv_encoder->base; |
263 | 263 | ||
264 | drm_encoder_init(dev, encoder, &mdp4_dtv_encoder_funcs, | 264 | drm_encoder_init(dev, encoder, &mdp4_dtv_encoder_funcs, |
265 | DRM_MODE_ENCODER_TMDS); | 265 | DRM_MODE_ENCODER_TMDS, NULL); |
266 | drm_encoder_helper_add(encoder, &mdp4_dtv_encoder_helper_funcs); | 266 | drm_encoder_helper_add(encoder, &mdp4_dtv_encoder_helper_funcs); |
267 | 267 | ||
268 | mdp4_dtv_encoder->src_clk = devm_clk_get(dev->dev, "src_clk"); | 268 | mdp4_dtv_encoder->src_clk = devm_clk_get(dev->dev, "src_clk"); |
diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_lcdc_encoder.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_lcdc_encoder.c index 4cd6e721aa0a..f824c643a7d1 100644 --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_lcdc_encoder.c +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_lcdc_encoder.c | |||
@@ -460,7 +460,7 @@ struct drm_encoder *mdp4_lcdc_encoder_init(struct drm_device *dev, | |||
460 | encoder = &mdp4_lcdc_encoder->base; | 460 | encoder = &mdp4_lcdc_encoder->base; |
461 | 461 | ||
462 | drm_encoder_init(dev, encoder, &mdp4_lcdc_encoder_funcs, | 462 | drm_encoder_init(dev, encoder, &mdp4_lcdc_encoder_funcs, |
463 | DRM_MODE_ENCODER_LVDS); | 463 | DRM_MODE_ENCODER_LVDS, NULL); |
464 | drm_encoder_helper_add(encoder, &mdp4_lcdc_encoder_helper_funcs); | 464 | drm_encoder_helper_add(encoder, &mdp4_lcdc_encoder_helper_funcs); |
465 | 465 | ||
466 | /* TODO: do we need different pll in other cases? */ | 466 | /* TODO: do we need different pll in other cases? */ |
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c index 8e6c9b598a57..1aa21dba663d 100644 --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c | |||
@@ -326,7 +326,7 @@ struct drm_encoder *mdp5_cmd_encoder_init(struct drm_device *dev, | |||
326 | mdp5_cmd_enc->ctl = ctl; | 326 | mdp5_cmd_enc->ctl = ctl; |
327 | 327 | ||
328 | drm_encoder_init(dev, encoder, &mdp5_cmd_encoder_funcs, | 328 | drm_encoder_init(dev, encoder, &mdp5_cmd_encoder_funcs, |
329 | DRM_MODE_ENCODER_DSI); | 329 | DRM_MODE_ENCODER_DSI, NULL); |
330 | 330 | ||
331 | drm_encoder_helper_add(encoder, &mdp5_cmd_encoder_helper_funcs); | 331 | drm_encoder_helper_add(encoder, &mdp5_cmd_encoder_helper_funcs); |
332 | 332 | ||
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c index c9e32b08a7a0..278e307c36fd 100644 --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c | |||
@@ -354,7 +354,7 @@ struct drm_encoder *mdp5_encoder_init(struct drm_device *dev, | |||
354 | 354 | ||
355 | spin_lock_init(&mdp5_encoder->intf_lock); | 355 | spin_lock_init(&mdp5_encoder->intf_lock); |
356 | 356 | ||
357 | drm_encoder_init(dev, encoder, &mdp5_encoder_funcs, enc_type); | 357 | drm_encoder_init(dev, encoder, &mdp5_encoder_funcs, enc_type, NULL); |
358 | 358 | ||
359 | drm_encoder_helper_add(encoder, &mdp5_encoder_helper_funcs); | 359 | drm_encoder_helper_add(encoder, &mdp5_encoder_helper_funcs); |
360 | 360 | ||
diff --git a/drivers/gpu/drm/nouveau/dispnv04/dac.c b/drivers/gpu/drm/nouveau/dispnv04/dac.c index 6c442def403d..b48eec395f07 100644 --- a/drivers/gpu/drm/nouveau/dispnv04/dac.c +++ b/drivers/gpu/drm/nouveau/dispnv04/dac.c | |||
@@ -549,7 +549,8 @@ nv04_dac_create(struct drm_connector *connector, struct dcb_output *entry) | |||
549 | else | 549 | else |
550 | helper = &nv04_dac_helper_funcs; | 550 | helper = &nv04_dac_helper_funcs; |
551 | 551 | ||
552 | drm_encoder_init(dev, encoder, &nv04_dac_funcs, DRM_MODE_ENCODER_DAC); | 552 | drm_encoder_init(dev, encoder, &nv04_dac_funcs, DRM_MODE_ENCODER_DAC, |
553 | NULL); | ||
553 | drm_encoder_helper_add(encoder, helper); | 554 | drm_encoder_helper_add(encoder, helper); |
554 | 555 | ||
555 | encoder->possible_crtcs = entry->heads; | 556 | encoder->possible_crtcs = entry->heads; |
diff --git a/drivers/gpu/drm/nouveau/dispnv04/dfp.c b/drivers/gpu/drm/nouveau/dispnv04/dfp.c index 4c5fb89d74db..05bfd151d1d8 100644 --- a/drivers/gpu/drm/nouveau/dispnv04/dfp.c +++ b/drivers/gpu/drm/nouveau/dispnv04/dfp.c | |||
@@ -705,7 +705,7 @@ nv04_dfp_create(struct drm_connector *connector, struct dcb_output *entry) | |||
705 | nv_encoder->dcb = entry; | 705 | nv_encoder->dcb = entry; |
706 | nv_encoder->or = ffs(entry->or) - 1; | 706 | nv_encoder->or = ffs(entry->or) - 1; |
707 | 707 | ||
708 | drm_encoder_init(connector->dev, encoder, &nv04_dfp_funcs, type); | 708 | drm_encoder_init(connector->dev, encoder, &nv04_dfp_funcs, type, NULL); |
709 | drm_encoder_helper_add(encoder, helper); | 709 | drm_encoder_helper_add(encoder, helper); |
710 | 710 | ||
711 | encoder->possible_crtcs = entry->heads; | 711 | encoder->possible_crtcs = entry->heads; |
diff --git a/drivers/gpu/drm/nouveau/dispnv04/tvnv04.c b/drivers/gpu/drm/nouveau/dispnv04/tvnv04.c index 91d689400d2e..54e9fb9eb5c0 100644 --- a/drivers/gpu/drm/nouveau/dispnv04/tvnv04.c +++ b/drivers/gpu/drm/nouveau/dispnv04/tvnv04.c | |||
@@ -223,7 +223,8 @@ nv04_tv_create(struct drm_connector *connector, struct dcb_output *entry) | |||
223 | /* Initialize the common members */ | 223 | /* Initialize the common members */ |
224 | encoder = to_drm_encoder(nv_encoder); | 224 | encoder = to_drm_encoder(nv_encoder); |
225 | 225 | ||
226 | drm_encoder_init(dev, encoder, &nv04_tv_funcs, DRM_MODE_ENCODER_TVDAC); | 226 | drm_encoder_init(dev, encoder, &nv04_tv_funcs, DRM_MODE_ENCODER_TVDAC, |
227 | NULL); | ||
227 | drm_encoder_helper_add(encoder, &nv04_tv_helper_funcs); | 228 | drm_encoder_helper_add(encoder, &nv04_tv_helper_funcs); |
228 | 229 | ||
229 | nv_encoder->enc_save = drm_i2c_encoder_save; | 230 | nv_encoder->enc_save = drm_i2c_encoder_save; |
diff --git a/drivers/gpu/drm/nouveau/dispnv04/tvnv17.c b/drivers/gpu/drm/nouveau/dispnv04/tvnv17.c index ff8c55866b18..d9644c0c5a83 100644 --- a/drivers/gpu/drm/nouveau/dispnv04/tvnv17.c +++ b/drivers/gpu/drm/nouveau/dispnv04/tvnv17.c | |||
@@ -814,7 +814,8 @@ nv17_tv_create(struct drm_connector *connector, struct dcb_output *entry) | |||
814 | tv_enc->base.dcb = entry; | 814 | tv_enc->base.dcb = entry; |
815 | tv_enc->base.or = ffs(entry->or) - 1; | 815 | tv_enc->base.or = ffs(entry->or) - 1; |
816 | 816 | ||
817 | drm_encoder_init(dev, encoder, &nv17_tv_funcs, DRM_MODE_ENCODER_TVDAC); | 817 | drm_encoder_init(dev, encoder, &nv17_tv_funcs, DRM_MODE_ENCODER_TVDAC, |
818 | NULL); | ||
818 | drm_encoder_helper_add(encoder, &nv17_tv_helper_funcs); | 819 | drm_encoder_helper_add(encoder, &nv17_tv_helper_funcs); |
819 | to_encoder_slave(encoder)->slave_funcs = &nv17_tv_slave_funcs; | 820 | to_encoder_slave(encoder)->slave_funcs = &nv17_tv_slave_funcs; |
820 | 821 | ||
diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c index a240939beca4..44e1952582aa 100644 --- a/drivers/gpu/drm/nouveau/nv50_display.c +++ b/drivers/gpu/drm/nouveau/nv50_display.c | |||
@@ -1718,7 +1718,7 @@ nv50_dac_create(struct drm_connector *connector, struct dcb_output *dcbe) | |||
1718 | encoder = to_drm_encoder(nv_encoder); | 1718 | encoder = to_drm_encoder(nv_encoder); |
1719 | encoder->possible_crtcs = dcbe->heads; | 1719 | encoder->possible_crtcs = dcbe->heads; |
1720 | encoder->possible_clones = 0; | 1720 | encoder->possible_clones = 0; |
1721 | drm_encoder_init(connector->dev, encoder, &nv50_dac_func, type); | 1721 | drm_encoder_init(connector->dev, encoder, &nv50_dac_func, type, NULL); |
1722 | drm_encoder_helper_add(encoder, &nv50_dac_hfunc); | 1722 | drm_encoder_helper_add(encoder, &nv50_dac_hfunc); |
1723 | 1723 | ||
1724 | drm_mode_connector_attach_encoder(connector, encoder); | 1724 | drm_mode_connector_attach_encoder(connector, encoder); |
@@ -2126,7 +2126,7 @@ nv50_sor_create(struct drm_connector *connector, struct dcb_output *dcbe) | |||
2126 | encoder = to_drm_encoder(nv_encoder); | 2126 | encoder = to_drm_encoder(nv_encoder); |
2127 | encoder->possible_crtcs = dcbe->heads; | 2127 | encoder->possible_crtcs = dcbe->heads; |
2128 | encoder->possible_clones = 0; | 2128 | encoder->possible_clones = 0; |
2129 | drm_encoder_init(connector->dev, encoder, &nv50_sor_func, type); | 2129 | drm_encoder_init(connector->dev, encoder, &nv50_sor_func, type, NULL); |
2130 | drm_encoder_helper_add(encoder, &nv50_sor_hfunc); | 2130 | drm_encoder_helper_add(encoder, &nv50_sor_hfunc); |
2131 | 2131 | ||
2132 | drm_mode_connector_attach_encoder(connector, encoder); | 2132 | drm_mode_connector_attach_encoder(connector, encoder); |
@@ -2306,7 +2306,7 @@ nv50_pior_create(struct drm_connector *connector, struct dcb_output *dcbe) | |||
2306 | encoder = to_drm_encoder(nv_encoder); | 2306 | encoder = to_drm_encoder(nv_encoder); |
2307 | encoder->possible_crtcs = dcbe->heads; | 2307 | encoder->possible_crtcs = dcbe->heads; |
2308 | encoder->possible_clones = 0; | 2308 | encoder->possible_clones = 0; |
2309 | drm_encoder_init(connector->dev, encoder, &nv50_pior_func, type); | 2309 | drm_encoder_init(connector->dev, encoder, &nv50_pior_func, type, NULL); |
2310 | drm_encoder_helper_add(encoder, &nv50_pior_hfunc); | 2310 | drm_encoder_helper_add(encoder, &nv50_pior_hfunc); |
2311 | 2311 | ||
2312 | drm_mode_connector_attach_encoder(connector, encoder); | 2312 | drm_mode_connector_attach_encoder(connector, encoder); |
diff --git a/drivers/gpu/drm/omapdrm/omap_encoder.c b/drivers/gpu/drm/omapdrm/omap_encoder.c index 7d9b32a0eb43..0c104ad7ef66 100644 --- a/drivers/gpu/drm/omapdrm/omap_encoder.c +++ b/drivers/gpu/drm/omapdrm/omap_encoder.c | |||
@@ -178,7 +178,7 @@ struct drm_encoder *omap_encoder_init(struct drm_device *dev, | |||
178 | encoder = &omap_encoder->base; | 178 | encoder = &omap_encoder->base; |
179 | 179 | ||
180 | drm_encoder_init(dev, encoder, &omap_encoder_funcs, | 180 | drm_encoder_init(dev, encoder, &omap_encoder_funcs, |
181 | DRM_MODE_ENCODER_TMDS); | 181 | DRM_MODE_ENCODER_TMDS, NULL); |
182 | drm_encoder_helper_add(encoder, &omap_encoder_helper_funcs); | 182 | drm_encoder_helper_add(encoder, &omap_encoder_helper_funcs); |
183 | 183 | ||
184 | return encoder; | 184 | return encoder; |
diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c index ebf7f3946a65..9be1af41e8d7 100644 --- a/drivers/gpu/drm/qxl/qxl_display.c +++ b/drivers/gpu/drm/qxl/qxl_display.c | |||
@@ -968,7 +968,7 @@ static int qdev_output_init(struct drm_device *dev, int num_output) | |||
968 | &qxl_connector_funcs, DRM_MODE_CONNECTOR_VIRTUAL); | 968 | &qxl_connector_funcs, DRM_MODE_CONNECTOR_VIRTUAL); |
969 | 969 | ||
970 | drm_encoder_init(dev, &qxl_output->enc, &qxl_enc_funcs, | 970 | drm_encoder_init(dev, &qxl_output->enc, &qxl_enc_funcs, |
971 | DRM_MODE_ENCODER_VIRTUAL); | 971 | DRM_MODE_ENCODER_VIRTUAL, NULL); |
972 | 972 | ||
973 | /* we get HPD via client monitors config */ | 973 | /* we get HPD via client monitors config */ |
974 | connector->polled = DRM_CONNECTOR_POLL_HPD; | 974 | connector->polled = DRM_CONNECTOR_POLL_HPD; |
diff --git a/drivers/gpu/drm/radeon/atombios_encoders.c b/drivers/gpu/drm/radeon/atombios_encoders.c index bb292143997e..01b20e14a247 100644 --- a/drivers/gpu/drm/radeon/atombios_encoders.c +++ b/drivers/gpu/drm/radeon/atombios_encoders.c | |||
@@ -2767,23 +2767,27 @@ radeon_add_atom_encoder(struct drm_device *dev, | |||
2767 | case ENCODER_OBJECT_ID_INTERNAL_LVTM1: | 2767 | case ENCODER_OBJECT_ID_INTERNAL_LVTM1: |
2768 | if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { | 2768 | if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { |
2769 | radeon_encoder->rmx_type = RMX_FULL; | 2769 | radeon_encoder->rmx_type = RMX_FULL; |
2770 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_LVDS); | 2770 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2771 | DRM_MODE_ENCODER_LVDS, NULL); | ||
2771 | radeon_encoder->enc_priv = radeon_atombios_get_lvds_info(radeon_encoder); | 2772 | radeon_encoder->enc_priv = radeon_atombios_get_lvds_info(radeon_encoder); |
2772 | } else { | 2773 | } else { |
2773 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS); | 2774 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2775 | DRM_MODE_ENCODER_TMDS, NULL); | ||
2774 | radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); | 2776 | radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); |
2775 | } | 2777 | } |
2776 | drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs); | 2778 | drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs); |
2777 | break; | 2779 | break; |
2778 | case ENCODER_OBJECT_ID_INTERNAL_DAC1: | 2780 | case ENCODER_OBJECT_ID_INTERNAL_DAC1: |
2779 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_DAC); | 2781 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2782 | DRM_MODE_ENCODER_DAC, NULL); | ||
2780 | radeon_encoder->enc_priv = radeon_atombios_set_dac_info(radeon_encoder); | 2783 | radeon_encoder->enc_priv = radeon_atombios_set_dac_info(radeon_encoder); |
2781 | drm_encoder_helper_add(encoder, &radeon_atom_dac_helper_funcs); | 2784 | drm_encoder_helper_add(encoder, &radeon_atom_dac_helper_funcs); |
2782 | break; | 2785 | break; |
2783 | case ENCODER_OBJECT_ID_INTERNAL_DAC2: | 2786 | case ENCODER_OBJECT_ID_INTERNAL_DAC2: |
2784 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: | 2787 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1: |
2785 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: | 2788 | case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: |
2786 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TVDAC); | 2789 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2790 | DRM_MODE_ENCODER_TVDAC, NULL); | ||
2787 | radeon_encoder->enc_priv = radeon_atombios_set_dac_info(radeon_encoder); | 2791 | radeon_encoder->enc_priv = radeon_atombios_set_dac_info(radeon_encoder); |
2788 | drm_encoder_helper_add(encoder, &radeon_atom_dac_helper_funcs); | 2792 | drm_encoder_helper_add(encoder, &radeon_atom_dac_helper_funcs); |
2789 | break; | 2793 | break; |
@@ -2797,13 +2801,16 @@ radeon_add_atom_encoder(struct drm_device *dev, | |||
2797 | case ENCODER_OBJECT_ID_INTERNAL_UNIPHY3: | 2801 | case ENCODER_OBJECT_ID_INTERNAL_UNIPHY3: |
2798 | if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { | 2802 | if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { |
2799 | radeon_encoder->rmx_type = RMX_FULL; | 2803 | radeon_encoder->rmx_type = RMX_FULL; |
2800 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_LVDS); | 2804 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2805 | DRM_MODE_ENCODER_LVDS, NULL); | ||
2801 | radeon_encoder->enc_priv = radeon_atombios_get_lvds_info(radeon_encoder); | 2806 | radeon_encoder->enc_priv = radeon_atombios_get_lvds_info(radeon_encoder); |
2802 | } else if (radeon_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { | 2807 | } else if (radeon_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) { |
2803 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_DAC); | 2808 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2809 | DRM_MODE_ENCODER_DAC, NULL); | ||
2804 | radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); | 2810 | radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); |
2805 | } else { | 2811 | } else { |
2806 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS); | 2812 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2813 | DRM_MODE_ENCODER_TMDS, NULL); | ||
2807 | radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); | 2814 | radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); |
2808 | } | 2815 | } |
2809 | drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs); | 2816 | drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs); |
@@ -2820,11 +2827,14 @@ radeon_add_atom_encoder(struct drm_device *dev, | |||
2820 | /* these are handled by the primary encoders */ | 2827 | /* these are handled by the primary encoders */ |
2821 | radeon_encoder->is_ext_encoder = true; | 2828 | radeon_encoder->is_ext_encoder = true; |
2822 | if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) | 2829 | if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) |
2823 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_LVDS); | 2830 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2831 | DRM_MODE_ENCODER_LVDS, NULL); | ||
2824 | else if (radeon_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) | 2832 | else if (radeon_encoder->devices & (ATOM_DEVICE_CRT_SUPPORT)) |
2825 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_DAC); | 2833 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2834 | DRM_MODE_ENCODER_DAC, NULL); | ||
2826 | else | 2835 | else |
2827 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS); | 2836 | drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, |
2837 | DRM_MODE_ENCODER_TMDS, NULL); | ||
2828 | drm_encoder_helper_add(encoder, &radeon_atom_ext_helper_funcs); | 2838 | drm_encoder_helper_add(encoder, &radeon_atom_ext_helper_funcs); |
2829 | break; | 2839 | break; |
2830 | } | 2840 | } |
diff --git a/drivers/gpu/drm/radeon/radeon_dp_mst.c b/drivers/gpu/drm/radeon/radeon_dp_mst.c index 744f5c49c664..94323f51ffcf 100644 --- a/drivers/gpu/drm/radeon/radeon_dp_mst.c +++ b/drivers/gpu/drm/radeon/radeon_dp_mst.c | |||
@@ -641,7 +641,7 @@ radeon_dp_create_fake_mst_encoder(struct radeon_connector *connector) | |||
641 | } | 641 | } |
642 | 642 | ||
643 | drm_encoder_init(dev, &radeon_encoder->base, &radeon_dp_mst_enc_funcs, | 643 | drm_encoder_init(dev, &radeon_encoder->base, &radeon_dp_mst_enc_funcs, |
644 | DRM_MODE_ENCODER_DPMST); | 644 | DRM_MODE_ENCODER_DPMST, NULL); |
645 | drm_encoder_helper_add(encoder, &radeon_mst_helper_funcs); | 645 | drm_encoder_helper_add(encoder, &radeon_mst_helper_funcs); |
646 | 646 | ||
647 | mst_enc = radeon_encoder->enc_priv; | 647 | mst_enc = radeon_encoder->enc_priv; |
diff --git a/drivers/gpu/drm/radeon/radeon_legacy_encoders.c b/drivers/gpu/drm/radeon/radeon_legacy_encoders.c index 30de43366eae..88dc973fb209 100644 --- a/drivers/gpu/drm/radeon/radeon_legacy_encoders.c +++ b/drivers/gpu/drm/radeon/radeon_legacy_encoders.c | |||
@@ -1772,7 +1772,8 @@ radeon_add_legacy_encoder(struct drm_device *dev, uint32_t encoder_enum, uint32_ | |||
1772 | switch (radeon_encoder->encoder_id) { | 1772 | switch (radeon_encoder->encoder_id) { |
1773 | case ENCODER_OBJECT_ID_INTERNAL_LVDS: | 1773 | case ENCODER_OBJECT_ID_INTERNAL_LVDS: |
1774 | encoder->possible_crtcs = 0x1; | 1774 | encoder->possible_crtcs = 0x1; |
1775 | drm_encoder_init(dev, encoder, &radeon_legacy_lvds_enc_funcs, DRM_MODE_ENCODER_LVDS); | 1775 | drm_encoder_init(dev, encoder, &radeon_legacy_lvds_enc_funcs, |
1776 | DRM_MODE_ENCODER_LVDS, NULL); | ||
1776 | drm_encoder_helper_add(encoder, &radeon_legacy_lvds_helper_funcs); | 1777 | drm_encoder_helper_add(encoder, &radeon_legacy_lvds_helper_funcs); |
1777 | if (rdev->is_atom_bios) | 1778 | if (rdev->is_atom_bios) |
1778 | radeon_encoder->enc_priv = radeon_atombios_get_lvds_info(radeon_encoder); | 1779 | radeon_encoder->enc_priv = radeon_atombios_get_lvds_info(radeon_encoder); |
@@ -1781,12 +1782,14 @@ radeon_add_legacy_encoder(struct drm_device *dev, uint32_t encoder_enum, uint32_ | |||
1781 | radeon_encoder->rmx_type = RMX_FULL; | 1782 | radeon_encoder->rmx_type = RMX_FULL; |
1782 | break; | 1783 | break; |
1783 | case ENCODER_OBJECT_ID_INTERNAL_TMDS1: | 1784 | case ENCODER_OBJECT_ID_INTERNAL_TMDS1: |
1784 | drm_encoder_init(dev, encoder, &radeon_legacy_tmds_int_enc_funcs, DRM_MODE_ENCODER_TMDS); | 1785 | drm_encoder_init(dev, encoder, &radeon_legacy_tmds_int_enc_funcs, |
1786 | DRM_MODE_ENCODER_TMDS, NULL); | ||
1785 | drm_encoder_helper_add(encoder, &radeon_legacy_tmds_int_helper_funcs); | 1787 | drm_encoder_helper_add(encoder, &radeon_legacy_tmds_int_helper_funcs); |
1786 | radeon_encoder->enc_priv = radeon_legacy_get_tmds_info(radeon_encoder); | 1788 | radeon_encoder->enc_priv = radeon_legacy_get_tmds_info(radeon_encoder); |
1787 | break; | 1789 | break; |
1788 | case ENCODER_OBJECT_ID_INTERNAL_DAC1: | 1790 | case ENCODER_OBJECT_ID_INTERNAL_DAC1: |
1789 | drm_encoder_init(dev, encoder, &radeon_legacy_primary_dac_enc_funcs, DRM_MODE_ENCODER_DAC); | 1791 | drm_encoder_init(dev, encoder, &radeon_legacy_primary_dac_enc_funcs, |
1792 | DRM_MODE_ENCODER_DAC, NULL); | ||
1790 | drm_encoder_helper_add(encoder, &radeon_legacy_primary_dac_helper_funcs); | 1793 | drm_encoder_helper_add(encoder, &radeon_legacy_primary_dac_helper_funcs); |
1791 | if (rdev->is_atom_bios) | 1794 | if (rdev->is_atom_bios) |
1792 | radeon_encoder->enc_priv = radeon_atombios_get_primary_dac_info(radeon_encoder); | 1795 | radeon_encoder->enc_priv = radeon_atombios_get_primary_dac_info(radeon_encoder); |
@@ -1794,7 +1797,8 @@ radeon_add_legacy_encoder(struct drm_device *dev, uint32_t encoder_enum, uint32_ | |||
1794 | radeon_encoder->enc_priv = radeon_combios_get_primary_dac_info(radeon_encoder); | 1797 | radeon_encoder->enc_priv = radeon_combios_get_primary_dac_info(radeon_encoder); |
1795 | break; | 1798 | break; |
1796 | case ENCODER_OBJECT_ID_INTERNAL_DAC2: | 1799 | case ENCODER_OBJECT_ID_INTERNAL_DAC2: |
1797 | drm_encoder_init(dev, encoder, &radeon_legacy_tv_dac_enc_funcs, DRM_MODE_ENCODER_TVDAC); | 1800 | drm_encoder_init(dev, encoder, &radeon_legacy_tv_dac_enc_funcs, |
1801 | DRM_MODE_ENCODER_TVDAC, NULL); | ||
1798 | drm_encoder_helper_add(encoder, &radeon_legacy_tv_dac_helper_funcs); | 1802 | drm_encoder_helper_add(encoder, &radeon_legacy_tv_dac_helper_funcs); |
1799 | if (rdev->is_atom_bios) | 1803 | if (rdev->is_atom_bios) |
1800 | radeon_encoder->enc_priv = radeon_atombios_get_tv_dac_info(radeon_encoder); | 1804 | radeon_encoder->enc_priv = radeon_atombios_get_tv_dac_info(radeon_encoder); |
@@ -1802,7 +1806,8 @@ radeon_add_legacy_encoder(struct drm_device *dev, uint32_t encoder_enum, uint32_ | |||
1802 | radeon_encoder->enc_priv = radeon_combios_get_tv_dac_info(radeon_encoder); | 1806 | radeon_encoder->enc_priv = radeon_combios_get_tv_dac_info(radeon_encoder); |
1803 | break; | 1807 | break; |
1804 | case ENCODER_OBJECT_ID_INTERNAL_DVO1: | 1808 | case ENCODER_OBJECT_ID_INTERNAL_DVO1: |
1805 | drm_encoder_init(dev, encoder, &radeon_legacy_tmds_ext_enc_funcs, DRM_MODE_ENCODER_TMDS); | 1809 | drm_encoder_init(dev, encoder, &radeon_legacy_tmds_ext_enc_funcs, |
1810 | DRM_MODE_ENCODER_TMDS, NULL); | ||
1806 | drm_encoder_helper_add(encoder, &radeon_legacy_tmds_ext_helper_funcs); | 1811 | drm_encoder_helper_add(encoder, &radeon_legacy_tmds_ext_helper_funcs); |
1807 | if (!rdev->is_atom_bios) | 1812 | if (!rdev->is_atom_bios) |
1808 | radeon_encoder->enc_priv = radeon_legacy_get_ext_tmds_info(radeon_encoder); | 1813 | radeon_encoder->enc_priv = radeon_legacy_get_ext_tmds_info(radeon_encoder); |
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_encoder.c b/drivers/gpu/drm/rcar-du/rcar_du_encoder.c index d0ae1e8009c6..c08700757feb 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_encoder.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_encoder.c | |||
@@ -173,7 +173,7 @@ int rcar_du_encoder_init(struct rcar_du_device *rcdu, | |||
173 | goto done; | 173 | goto done; |
174 | } else { | 174 | } else { |
175 | ret = drm_encoder_init(rcdu->ddev, encoder, &encoder_funcs, | 175 | ret = drm_encoder_init(rcdu->ddev, encoder, &encoder_funcs, |
176 | encoder_type); | 176 | encoder_type, NULL); |
177 | if (ret < 0) | 177 | if (ret < 0) |
178 | goto done; | 178 | goto done; |
179 | 179 | ||
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c b/drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c index 81da8419282b..11267de26a51 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c | |||
@@ -151,7 +151,7 @@ int rcar_du_hdmienc_init(struct rcar_du_device *rcdu, | |||
151 | goto error; | 151 | goto error; |
152 | 152 | ||
153 | ret = drm_encoder_init(rcdu->ddev, encoder, &encoder_funcs, | 153 | ret = drm_encoder_init(rcdu->ddev, encoder, &encoder_funcs, |
154 | DRM_MODE_ENCODER_TMDS); | 154 | DRM_MODE_ENCODER_TMDS, NULL); |
155 | if (ret < 0) | 155 | if (ret < 0) |
156 | goto error; | 156 | goto error; |
157 | 157 | ||
diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c index 80d6fc8a5cee..525b5a81e96e 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | |||
@@ -295,7 +295,7 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master, | |||
295 | 295 | ||
296 | drm_encoder_helper_add(encoder, &dw_hdmi_rockchip_encoder_helper_funcs); | 296 | drm_encoder_helper_add(encoder, &dw_hdmi_rockchip_encoder_helper_funcs); |
297 | drm_encoder_init(drm, encoder, &dw_hdmi_rockchip_encoder_funcs, | 297 | drm_encoder_init(drm, encoder, &dw_hdmi_rockchip_encoder_funcs, |
298 | DRM_MODE_ENCODER_TMDS); | 298 | DRM_MODE_ENCODER_TMDS, NULL); |
299 | 299 | ||
300 | return dw_hdmi_bind(dev, master, data, encoder, iores, irq, plat_data); | 300 | return dw_hdmi_bind(dev, master, data, encoder, iores, irq, plat_data); |
301 | } | 301 | } |
diff --git a/drivers/gpu/drm/shmobile/shmob_drm_crtc.c b/drivers/gpu/drm/shmobile/shmob_drm_crtc.c index e9272b0a8592..b80802f55143 100644 --- a/drivers/gpu/drm/shmobile/shmob_drm_crtc.c +++ b/drivers/gpu/drm/shmobile/shmob_drm_crtc.c | |||
@@ -613,7 +613,7 @@ int shmob_drm_encoder_create(struct shmob_drm_device *sdev) | |||
613 | encoder->possible_crtcs = 1; | 613 | encoder->possible_crtcs = 1; |
614 | 614 | ||
615 | ret = drm_encoder_init(sdev->ddev, encoder, &encoder_funcs, | 615 | ret = drm_encoder_init(sdev->ddev, encoder, &encoder_funcs, |
616 | DRM_MODE_ENCODER_LVDS); | 616 | DRM_MODE_ENCODER_LVDS, NULL); |
617 | if (ret < 0) | 617 | if (ret < 0) |
618 | return ret; | 618 | return ret; |
619 | 619 | ||
diff --git a/drivers/gpu/drm/sti/sti_tvout.c b/drivers/gpu/drm/sti/sti_tvout.c index c8a4c5dae2b6..f2afcf5438b8 100644 --- a/drivers/gpu/drm/sti/sti_tvout.c +++ b/drivers/gpu/drm/sti/sti_tvout.c | |||
@@ -512,7 +512,8 @@ sti_tvout_create_dvo_encoder(struct drm_device *dev, | |||
512 | drm_encoder->possible_clones = 1 << 0; | 512 | drm_encoder->possible_clones = 1 << 0; |
513 | 513 | ||
514 | drm_encoder_init(dev, drm_encoder, | 514 | drm_encoder_init(dev, drm_encoder, |
515 | &sti_tvout_encoder_funcs, DRM_MODE_ENCODER_LVDS); | 515 | &sti_tvout_encoder_funcs, DRM_MODE_ENCODER_LVDS, |
516 | NULL); | ||
516 | 517 | ||
517 | drm_encoder_helper_add(drm_encoder, &sti_dvo_encoder_helper_funcs); | 518 | drm_encoder_helper_add(drm_encoder, &sti_dvo_encoder_helper_funcs); |
518 | 519 | ||
@@ -564,7 +565,7 @@ static struct drm_encoder *sti_tvout_create_hda_encoder(struct drm_device *dev, | |||
564 | drm_encoder->possible_clones = 1 << 0; | 565 | drm_encoder->possible_clones = 1 << 0; |
565 | 566 | ||
566 | drm_encoder_init(dev, drm_encoder, | 567 | drm_encoder_init(dev, drm_encoder, |
567 | &sti_tvout_encoder_funcs, DRM_MODE_ENCODER_DAC); | 568 | &sti_tvout_encoder_funcs, DRM_MODE_ENCODER_DAC, NULL); |
568 | 569 | ||
569 | drm_encoder_helper_add(drm_encoder, &sti_hda_encoder_helper_funcs); | 570 | drm_encoder_helper_add(drm_encoder, &sti_hda_encoder_helper_funcs); |
570 | 571 | ||
@@ -613,7 +614,7 @@ static struct drm_encoder *sti_tvout_create_hdmi_encoder(struct drm_device *dev, | |||
613 | drm_encoder->possible_clones = 1 << 1; | 614 | drm_encoder->possible_clones = 1 << 1; |
614 | 615 | ||
615 | drm_encoder_init(dev, drm_encoder, | 616 | drm_encoder_init(dev, drm_encoder, |
616 | &sti_tvout_encoder_funcs, DRM_MODE_ENCODER_TMDS); | 617 | &sti_tvout_encoder_funcs, DRM_MODE_ENCODER_TMDS, NULL); |
617 | 618 | ||
618 | drm_encoder_helper_add(drm_encoder, &sti_hdmi_encoder_helper_funcs); | 619 | drm_encoder_helper_add(drm_encoder, &sti_hdmi_encoder_helper_funcs); |
619 | 620 | ||
diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index f0a138ef68ce..50d46ae3786b 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c | |||
@@ -1023,7 +1023,7 @@ static int tegra_dsi_init(struct host1x_client *client) | |||
1023 | 1023 | ||
1024 | drm_encoder_init(drm, &dsi->output.encoder, | 1024 | drm_encoder_init(drm, &dsi->output.encoder, |
1025 | &tegra_dsi_encoder_funcs, | 1025 | &tegra_dsi_encoder_funcs, |
1026 | DRM_MODE_ENCODER_DSI); | 1026 | DRM_MODE_ENCODER_DSI, NULL); |
1027 | drm_encoder_helper_add(&dsi->output.encoder, | 1027 | drm_encoder_helper_add(&dsi->output.encoder, |
1028 | &tegra_dsi_encoder_helper_funcs); | 1028 | &tegra_dsi_encoder_helper_funcs); |
1029 | 1029 | ||
diff --git a/drivers/gpu/drm/tegra/hdmi.c b/drivers/gpu/drm/tegra/hdmi.c index 52b32cbd9de6..b7ef4929e347 100644 --- a/drivers/gpu/drm/tegra/hdmi.c +++ b/drivers/gpu/drm/tegra/hdmi.c | |||
@@ -1320,7 +1320,7 @@ static int tegra_hdmi_init(struct host1x_client *client) | |||
1320 | hdmi->output.connector.dpms = DRM_MODE_DPMS_OFF; | 1320 | hdmi->output.connector.dpms = DRM_MODE_DPMS_OFF; |
1321 | 1321 | ||
1322 | drm_encoder_init(drm, &hdmi->output.encoder, &tegra_hdmi_encoder_funcs, | 1322 | drm_encoder_init(drm, &hdmi->output.encoder, &tegra_hdmi_encoder_funcs, |
1323 | DRM_MODE_ENCODER_TMDS); | 1323 | DRM_MODE_ENCODER_TMDS, NULL); |
1324 | drm_encoder_helper_add(&hdmi->output.encoder, | 1324 | drm_encoder_helper_add(&hdmi->output.encoder, |
1325 | &tegra_hdmi_encoder_helper_funcs); | 1325 | &tegra_hdmi_encoder_helper_funcs); |
1326 | 1326 | ||
diff --git a/drivers/gpu/drm/tegra/rgb.c b/drivers/gpu/drm/tegra/rgb.c index bc9735b4ad60..e246334e0252 100644 --- a/drivers/gpu/drm/tegra/rgb.c +++ b/drivers/gpu/drm/tegra/rgb.c | |||
@@ -287,7 +287,7 @@ int tegra_dc_rgb_init(struct drm_device *drm, struct tegra_dc *dc) | |||
287 | output->connector.dpms = DRM_MODE_DPMS_OFF; | 287 | output->connector.dpms = DRM_MODE_DPMS_OFF; |
288 | 288 | ||
289 | drm_encoder_init(drm, &output->encoder, &tegra_rgb_encoder_funcs, | 289 | drm_encoder_init(drm, &output->encoder, &tegra_rgb_encoder_funcs, |
290 | DRM_MODE_ENCODER_LVDS); | 290 | DRM_MODE_ENCODER_LVDS, NULL); |
291 | drm_encoder_helper_add(&output->encoder, | 291 | drm_encoder_helper_add(&output->encoder, |
292 | &tegra_rgb_encoder_helper_funcs); | 292 | &tegra_rgb_encoder_helper_funcs); |
293 | 293 | ||
diff --git a/drivers/gpu/drm/tegra/sor.c b/drivers/gpu/drm/tegra/sor.c index 3eff7cf75d25..3e012ee25242 100644 --- a/drivers/gpu/drm/tegra/sor.c +++ b/drivers/gpu/drm/tegra/sor.c | |||
@@ -2178,7 +2178,7 @@ static int tegra_sor_init(struct host1x_client *client) | |||
2178 | sor->output.connector.dpms = DRM_MODE_DPMS_OFF; | 2178 | sor->output.connector.dpms = DRM_MODE_DPMS_OFF; |
2179 | 2179 | ||
2180 | drm_encoder_init(drm, &sor->output.encoder, &tegra_sor_encoder_funcs, | 2180 | drm_encoder_init(drm, &sor->output.encoder, &tegra_sor_encoder_funcs, |
2181 | encoder); | 2181 | encoder, NULL); |
2182 | drm_encoder_helper_add(&sor->output.encoder, helpers); | 2182 | drm_encoder_helper_add(&sor->output.encoder, helpers); |
2183 | 2183 | ||
2184 | drm_mode_connector_attach_encoder(&sor->output.connector, | 2184 | drm_mode_connector_attach_encoder(&sor->output.connector, |
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_panel.c b/drivers/gpu/drm/tilcdc/tilcdc_panel.c index 0af8bed7ce1e..4dda6e2f464b 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_panel.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_panel.c | |||
@@ -128,7 +128,7 @@ static struct drm_encoder *panel_encoder_create(struct drm_device *dev, | |||
128 | encoder->possible_crtcs = 1; | 128 | encoder->possible_crtcs = 1; |
129 | 129 | ||
130 | ret = drm_encoder_init(dev, encoder, &panel_encoder_funcs, | 130 | ret = drm_encoder_init(dev, encoder, &panel_encoder_funcs, |
131 | DRM_MODE_ENCODER_LVDS); | 131 | DRM_MODE_ENCODER_LVDS, NULL); |
132 | if (ret < 0) | 132 | if (ret < 0) |
133 | goto fail; | 133 | goto fail; |
134 | 134 | ||
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c b/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c index 354c47ca6374..5052a8af7ecb 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c | |||
@@ -138,7 +138,7 @@ static struct drm_encoder *tfp410_encoder_create(struct drm_device *dev, | |||
138 | encoder->possible_crtcs = 1; | 138 | encoder->possible_crtcs = 1; |
139 | 139 | ||
140 | ret = drm_encoder_init(dev, encoder, &tfp410_encoder_funcs, | 140 | ret = drm_encoder_init(dev, encoder, &tfp410_encoder_funcs, |
141 | DRM_MODE_ENCODER_TMDS); | 141 | DRM_MODE_ENCODER_TMDS, NULL); |
142 | if (ret < 0) | 142 | if (ret < 0) |
143 | goto fail; | 143 | goto fail; |
144 | 144 | ||
diff --git a/drivers/gpu/drm/udl/udl_encoder.c b/drivers/gpu/drm/udl/udl_encoder.c index 4052c4656498..a181a647fcf9 100644 --- a/drivers/gpu/drm/udl/udl_encoder.c +++ b/drivers/gpu/drm/udl/udl_encoder.c | |||
@@ -73,7 +73,8 @@ struct drm_encoder *udl_encoder_init(struct drm_device *dev) | |||
73 | if (!encoder) | 73 | if (!encoder) |
74 | return NULL; | 74 | return NULL; |
75 | 75 | ||
76 | drm_encoder_init(dev, encoder, &udl_enc_funcs, DRM_MODE_ENCODER_TMDS); | 76 | drm_encoder_init(dev, encoder, &udl_enc_funcs, DRM_MODE_ENCODER_TMDS, |
77 | NULL); | ||
77 | drm_encoder_helper_add(encoder, &udl_helper_funcs); | 78 | drm_encoder_helper_add(encoder, &udl_helper_funcs); |
78 | encoder->possible_crtcs = 1; | 79 | encoder->possible_crtcs = 1; |
79 | return encoder; | 80 | return encoder; |
diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c index da9a36d6e1d1..c69c0460196b 100644 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c | |||
@@ -519,7 +519,7 @@ static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data) | |||
519 | WARN_ON_ONCE((HD_READ(VC4_HD_M_CTL) & VC4_HD_M_ENABLE) == 0); | 519 | WARN_ON_ONCE((HD_READ(VC4_HD_M_CTL) & VC4_HD_M_ENABLE) == 0); |
520 | 520 | ||
521 | drm_encoder_init(drm, hdmi->encoder, &vc4_hdmi_encoder_funcs, | 521 | drm_encoder_init(drm, hdmi->encoder, &vc4_hdmi_encoder_funcs, |
522 | DRM_MODE_ENCODER_TMDS); | 522 | DRM_MODE_ENCODER_TMDS, NULL); |
523 | drm_encoder_helper_add(hdmi->encoder, &vc4_hdmi_encoder_helper_funcs); | 523 | drm_encoder_helper_add(hdmi->encoder, &vc4_hdmi_encoder_helper_funcs); |
524 | 524 | ||
525 | hdmi->connector = vc4_hdmi_connector_init(drm, hdmi->encoder); | 525 | hdmi->connector = vc4_hdmi_connector_init(drm, hdmi->encoder); |
diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c index ef4cef0c8ece..588a7aec60bf 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c | |||
@@ -441,7 +441,7 @@ static int vgdev_output_init(struct virtio_gpu_device *vgdev, int index) | |||
441 | drm_connector_helper_add(connector, &virtio_gpu_conn_helper_funcs); | 441 | drm_connector_helper_add(connector, &virtio_gpu_conn_helper_funcs); |
442 | 442 | ||
443 | drm_encoder_init(dev, encoder, &virtio_gpu_enc_funcs, | 443 | drm_encoder_init(dev, encoder, &virtio_gpu_enc_funcs, |
444 | DRM_MODE_ENCODER_VIRTUAL); | 444 | DRM_MODE_ENCODER_VIRTUAL, NULL); |
445 | drm_encoder_helper_add(encoder, &virtio_gpu_enc_helper_funcs); | 445 | drm_encoder_helper_add(encoder, &virtio_gpu_enc_helper_funcs); |
446 | encoder->possible_crtcs = 1 << index; | 446 | encoder->possible_crtcs = 1 << index; |
447 | 447 | ||
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c index c1c09b338cc1..2aff5e51d926 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | |||
@@ -363,7 +363,7 @@ static int vmw_ldu_init(struct vmw_private *dev_priv, unsigned unit) | |||
363 | connector->status = vmw_du_connector_detect(connector, true); | 363 | connector->status = vmw_du_connector_detect(connector, true); |
364 | 364 | ||
365 | drm_encoder_init(dev, encoder, &vmw_legacy_encoder_funcs, | 365 | drm_encoder_init(dev, encoder, &vmw_legacy_encoder_funcs, |
366 | DRM_MODE_ENCODER_VIRTUAL); | 366 | DRM_MODE_ENCODER_VIRTUAL, NULL); |
367 | drm_mode_connector_attach_encoder(connector, encoder); | 367 | drm_mode_connector_attach_encoder(connector, encoder); |
368 | encoder->possible_crtcs = (1 << unit); | 368 | encoder->possible_crtcs = (1 << unit); |
369 | encoder->possible_clones = 0; | 369 | encoder->possible_clones = 0; |
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c index 5379dc4bbcac..6bb7af37934a 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | |||
@@ -597,7 +597,7 @@ static int vmw_sou_init(struct vmw_private *dev_priv, unsigned unit) | |||
597 | connector->status = vmw_du_connector_detect(connector, true); | 597 | connector->status = vmw_du_connector_detect(connector, true); |
598 | 598 | ||
599 | drm_encoder_init(dev, encoder, &vmw_screen_object_encoder_funcs, | 599 | drm_encoder_init(dev, encoder, &vmw_screen_object_encoder_funcs, |
600 | DRM_MODE_ENCODER_VIRTUAL); | 600 | DRM_MODE_ENCODER_VIRTUAL, NULL); |
601 | drm_mode_connector_attach_encoder(connector, encoder); | 601 | drm_mode_connector_attach_encoder(connector, encoder); |
602 | encoder->possible_crtcs = (1 << unit); | 602 | encoder->possible_crtcs = (1 << unit); |
603 | encoder->possible_clones = 0; | 603 | encoder->possible_clones = 0; |
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c b/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c index 05375a8cc129..45e72c2f15cd 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | |||
@@ -1145,7 +1145,7 @@ static int vmw_stdu_init(struct vmw_private *dev_priv, unsigned unit) | |||
1145 | connector->status = vmw_du_connector_detect(connector, false); | 1145 | connector->status = vmw_du_connector_detect(connector, false); |
1146 | 1146 | ||
1147 | drm_encoder_init(dev, encoder, &vmw_stdu_encoder_funcs, | 1147 | drm_encoder_init(dev, encoder, &vmw_stdu_encoder_funcs, |
1148 | DRM_MODE_ENCODER_VIRTUAL); | 1148 | DRM_MODE_ENCODER_VIRTUAL, NULL); |
1149 | drm_mode_connector_attach_encoder(connector, encoder); | 1149 | drm_mode_connector_attach_encoder(connector, encoder); |
1150 | encoder->possible_crtcs = (1 << unit); | 1150 | encoder->possible_crtcs = (1 << unit); |
1151 | encoder->possible_clones = 0; | 1151 | encoder->possible_clones = 0; |
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index a6f0e25cbd51..5b5e6b650c11 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h | |||
@@ -2196,10 +2196,11 @@ void drm_bridge_mode_set(struct drm_bridge *bridge, | |||
2196 | void drm_bridge_pre_enable(struct drm_bridge *bridge); | 2196 | void drm_bridge_pre_enable(struct drm_bridge *bridge); |
2197 | void drm_bridge_enable(struct drm_bridge *bridge); | 2197 | void drm_bridge_enable(struct drm_bridge *bridge); |
2198 | 2198 | ||
2199 | extern int drm_encoder_init(struct drm_device *dev, | 2199 | extern __printf(5, 6) |
2200 | struct drm_encoder *encoder, | 2200 | int drm_encoder_init(struct drm_device *dev, |
2201 | const struct drm_encoder_funcs *funcs, | 2201 | struct drm_encoder *encoder, |
2202 | int encoder_type); | 2202 | const struct drm_encoder_funcs *funcs, |
2203 | int encoder_type, const char *name, ...); | ||
2203 | 2204 | ||
2204 | /** | 2205 | /** |
2205 | * drm_encoder_crtc_ok - can a given crtc drive a given encoder? | 2206 | * drm_encoder_crtc_ok - can a given crtc drive a given encoder? |