mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-29 14:05:19 +08:00
b9670ca20a
A bug that I had fixed earlier just came back, with CONFIG_EXTCON=m, the rockchip drm driver will fail to link: drivers/gpu/drm/rockchip/cdn-dp-core.o: In function `cdn_dp_get_port_lanes': cdn-dp-core.c:(.text.cdn_dp_get_port_lanes+0x30): undefined reference to `extcon_get_state' cdn-dp-core.c:(.text.cdn_dp_get_port_lanes+0x6c): undefined reference to `extcon_get_property' drivers/gpu/drm/rockchip/cdn-dp-core.o: In function `cdn_dp_check_sink_connection': cdn-dp-core.c:(.text.cdn_dp_check_sink_connection+0x80): undefined reference to `extcon_get_state' drivers/gpu/drm/rockchip/cdn-dp-core.o: In function `cdn_dp_enable': cdn-dp-core.c:(.text.cdn_dp_enable+0x748): undefined reference to `extcon_get_property' The problem is that that the sub-drivers are now all linked into the main rockchip drm module, which breaks all the Kconfig dependencies that are specified in the options for those sub-drivers. This clarifies the dependency to ensure that we can only turn on the DP driver when EXTCON is reachable. As the 'select' statements can now cause additional options to become built-in when they should be loadable modules, I'm moving those into the main driver config option. The dependency on DRM_ROCKCHIP can be reduced into a single 'if' statement here for brevity, but this has no functional effect. Fixes:b6705157b2
("drm/rockchip: add extcon dependency for DP") Fixes:8820b68bd3
("drm/rockchip: Refactor the component match logic.") Link: https://patchwork.kernel.org/patch/9648761/ Acked-by: Guenter Roeck <groeck@chromium.org> Tested-by: Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Mark Yao <mark.yao@rock-chips.com> Link: https://patchwork.freedesktop.org/patch/msgid/20170721211214.3386387-1-arnd@arndb.de
61 lines
2.0 KiB
Plaintext
61 lines
2.0 KiB
Plaintext
config DRM_ROCKCHIP
|
|
tristate "DRM Support for Rockchip"
|
|
depends on DRM && ROCKCHIP_IOMMU
|
|
select DRM_GEM_CMA_HELPER
|
|
select DRM_KMS_HELPER
|
|
select DRM_PANEL
|
|
select VIDEOMODE_HELPERS
|
|
select DRM_ANALOGIX_DP if ROCKCHIP_ANALOGIX_DP
|
|
select DRM_DW_HDMI if ROCKCHIP_DW_HDMI
|
|
select DRM_MIPI_DSI if ROCKCHIP_DW_MIPI_DSI
|
|
select SND_SOC_HDMI_CODEC if ROCKCHIP_CDN_DP && SND_SOC
|
|
help
|
|
Choose this option if you have a Rockchip soc chipset.
|
|
This driver provides kernel mode setting and buffer
|
|
management to userspace. This driver does not provide
|
|
2D or 3D acceleration; acceleration is performed by other
|
|
IP found on the SoC.
|
|
|
|
if DRM_ROCKCHIP
|
|
|
|
config ROCKCHIP_ANALOGIX_DP
|
|
bool "Rockchip specific extensions for Analogix DP driver"
|
|
help
|
|
This selects support for Rockchip SoC specific extensions
|
|
for the Analogix Core DP driver. If you want to enable DP
|
|
on RK3288 based SoC, you should selet this option.
|
|
|
|
config ROCKCHIP_CDN_DP
|
|
bool "Rockchip cdn DP"
|
|
depends on EXTCON=y || (EXTCON=m && DRM_ROCKCHIP=m)
|
|
help
|
|
This selects support for Rockchip SoC specific extensions
|
|
for the cdn DP driver. If you want to enable Dp on
|
|
RK3399 based SoC, you should select this
|
|
option.
|
|
|
|
config ROCKCHIP_DW_HDMI
|
|
bool "Rockchip specific extensions for Synopsys DW HDMI"
|
|
help
|
|
This selects support for Rockchip SoC specific extensions
|
|
for the Synopsys DesignWare HDMI driver. If you want to
|
|
enable HDMI on RK3288 based SoC, you should selet this
|
|
option.
|
|
|
|
config ROCKCHIP_DW_MIPI_DSI
|
|
bool "Rockchip specific extensions for Synopsys DW MIPI DSI"
|
|
help
|
|
This selects support for Rockchip SoC specific extensions
|
|
for the Synopsys DesignWare HDMI driver. If you want to
|
|
enable MIPI DSI on RK3288 based SoC, you should selet this
|
|
option.
|
|
|
|
config ROCKCHIP_INNO_HDMI
|
|
bool "Rockchip specific extensions for Innosilicon HDMI"
|
|
help
|
|
This selects support for Rockchip SoC specific extensions
|
|
for the Innosilicon HDMI driver. If you want to enable
|
|
HDMI on RK3036 based SoC, you should select this option.
|
|
|
|
endif
|