edf9e04955
Compile testing configurations without REGMAP support enabled results in
a bunch of errors being reported:
../drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c:569:21: error: variable ‘rk_hdptx_phy_regmap_config’ has initializer but incomplete type
569 | static const struct regmap_config rk_hdptx_phy_regmap_config = {
| ^~~~~~~~~~~~~
../drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c:570:10: error: ‘const struct regmap_config’ has no member named ‘reg_bits’
570 | .reg_bits = 32,
| ^~~~~~~~
Note that selecting REGMAP alone is not enough, because of the following
liker error:
phy-rockchip-samsung-hdptx.c:(.text+0x10c): undefined reference to `__devm_regmap_init_mmio_clk'
Instead of the obvious fix to enable REGMAP_MMIO, select MFD_SYSCON,
which implicitly enables REGMAP_MMIO as well. The rationale is that the
driver has been already relying on the syscon functionality.
Moreover, without MFD_SYSCON enabled, the test coverage is reduced,
since the linker might not detect any potential undefined references
following syscon_regmap_lookup_by_phandle() invocation in
rk_hdptx_phy_probe() body. That is because the function would
unconditionally return -ENOTSUP, hence the compiler is free to optimize
out any unreachable code.
Finally ensure PHY_ROCKCHIP_SAMSUNG_HDPTX depends on HAS_IOMEM, as
required by MFD_SYSCON.
Fixes: 553be2830c
("phy: rockchip: Add Samsung HDMI/eDP Combo PHY driver")
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Link: https://lore.kernel.org/r/20240629-rk-hdptx-compile-test-fix-v1-1-c86675ba8070@collabora.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
132 lines
3.7 KiB
Text
132 lines
3.7 KiB
Text
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Phy drivers for Rockchip platforms
|
|
#
|
|
config PHY_ROCKCHIP_DP
|
|
tristate "Rockchip Display Port PHY Driver"
|
|
depends on ARCH_ROCKCHIP && OF
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip Display Port PHY.
|
|
|
|
config PHY_ROCKCHIP_DPHY_RX0
|
|
tristate "Rockchip MIPI Synopsys DPHY RX0 driver"
|
|
depends on ARCH_ROCKCHIP || COMPILE_TEST
|
|
select GENERIC_PHY_MIPI_DPHY
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip MIPI Synopsys DPHY RX0
|
|
associated to the Rockchip ISP module present in RK3399 SoCs.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called phy-rockchip-dphy-rx0.
|
|
|
|
config PHY_ROCKCHIP_EMMC
|
|
tristate "Rockchip EMMC PHY Driver"
|
|
depends on ARCH_ROCKCHIP && OF
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip EMMC PHY.
|
|
|
|
config PHY_ROCKCHIP_INNO_HDMI
|
|
tristate "Rockchip INNO HDMI PHY Driver"
|
|
depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
|
|
depends on COMMON_CLK
|
|
depends on HAS_IOMEM
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip Innosilicon HDMI PHY.
|
|
|
|
config PHY_ROCKCHIP_INNO_USB2
|
|
tristate "Rockchip INNO USB2PHY Driver"
|
|
depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
|
|
depends on COMMON_CLK
|
|
depends on EXTCON
|
|
depends on USB_SUPPORT
|
|
select GENERIC_PHY
|
|
select USB_COMMON
|
|
help
|
|
Support for Rockchip USB2.0 PHY with Innosilicon IP block.
|
|
|
|
config PHY_ROCKCHIP_INNO_CSIDPHY
|
|
tristate "Rockchip Innosilicon MIPI CSI PHY driver"
|
|
depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
|
|
select GENERIC_PHY
|
|
select GENERIC_PHY_MIPI_DPHY
|
|
help
|
|
Enable this to support the Rockchip MIPI CSI PHY with
|
|
Innosilicon IP block.
|
|
|
|
config PHY_ROCKCHIP_INNO_DSIDPHY
|
|
tristate "Rockchip Innosilicon MIPI/LVDS/TTL PHY driver"
|
|
depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
|
|
select GENERIC_PHY
|
|
select GENERIC_PHY_MIPI_DPHY
|
|
help
|
|
Enable this to support the Rockchip MIPI/LVDS/TTL PHY with
|
|
Innosilicon IP block.
|
|
|
|
config PHY_ROCKCHIP_NANENG_COMBO_PHY
|
|
tristate "Rockchip NANENG COMBO PHY Driver"
|
|
depends on ARCH_ROCKCHIP && OF
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip PCIe/USB3.0/SATA/QSGMII
|
|
combo PHY with NaNeng IP block.
|
|
|
|
config PHY_ROCKCHIP_PCIE
|
|
tristate "Rockchip PCIe PHY Driver"
|
|
depends on (ARCH_ROCKCHIP && OF) || COMPILE_TEST
|
|
depends on HAS_IOMEM
|
|
select GENERIC_PHY
|
|
select MFD_SYSCON
|
|
help
|
|
Enable this to support the Rockchip PCIe PHY.
|
|
|
|
config PHY_ROCKCHIP_SAMSUNG_HDPTX
|
|
tristate "Rockchip Samsung HDMI/eDP Combo PHY driver"
|
|
depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
|
|
depends on HAS_IOMEM
|
|
select GENERIC_PHY
|
|
select MFD_SYSCON
|
|
select RATIONAL
|
|
help
|
|
Enable this to support the Rockchip HDMI/eDP Combo PHY
|
|
with Samsung IP block.
|
|
|
|
config PHY_ROCKCHIP_SNPS_PCIE3
|
|
tristate "Rockchip Snps PCIe3 PHY Driver"
|
|
depends on (ARCH_ROCKCHIP && OF) || COMPILE_TEST
|
|
depends on HAS_IOMEM
|
|
select GENERIC_PHY
|
|
select MFD_SYSCON
|
|
help
|
|
Enable this to support the Rockchip snps PCIe3 PHY.
|
|
|
|
config PHY_ROCKCHIP_TYPEC
|
|
tristate "Rockchip TYPEC PHY Driver"
|
|
depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
|
|
select EXTCON
|
|
select GENERIC_PHY
|
|
select RESET_CONTROLLER
|
|
help
|
|
Enable this to support the Rockchip USB TYPEC PHY.
|
|
|
|
config PHY_ROCKCHIP_USB
|
|
tristate "Rockchip USB2 PHY Driver"
|
|
depends on ARCH_ROCKCHIP && OF
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip USB 2.0 PHY.
|
|
|
|
config PHY_ROCKCHIP_USBDP
|
|
tristate "Rockchip USBDP COMBO PHY Driver"
|
|
depends on ARCH_ROCKCHIP && OF
|
|
depends on TYPEC
|
|
select GENERIC_PHY
|
|
help
|
|
Enable this to support the Rockchip USB3.0/DP combo PHY with
|
|
Samsung IP block. This is required for USB3 support on RK3588.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called phy-rockchip-usbdp
|