usb: typec: STUSB160X should select REGMAP_I2C
Subsystems (2)
PATCH 1/1 usb: typec: STUSB160X should select REGMAP_I2C
REGMAP_I2C is not a user visible kconfig symbol so driver configs should not "depend on" it. They should depend on I2C and then select REGMAP_I2C.
If this worked, it was only because some other driver had set/enabled REGMAP_I2C.
--- drivers/usb/typec/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/usb/typec/Kconfig +2 -2
@@ -65,9 +65,9 @@ config TYPEC_HD3SS3220 config TYPEC_STUSB160X tristate "STMicroelectronics STUSB160x Type-C controller driver" - depends on I2C - depends on REGMAP_I2C depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH + depends on I2C + select REGMAP_I2C help Say Y or M here if your system has STMicroelectronics STUSB160x Type-C port controller.
Quoted 9 lines · Randy Dunlap
REGMAP_I2Cis not a user visible kconfig symbol so driver configs should not "depend on" it. They should depend on I2C and then selectREGMAP_I2C.If this worked, it was only because some other driver had set/enabled
REGMAP_I2C.Fixes da0cb6310094 ("usb: typec: add support for STUSB160x Type-C controller family")Signed-off-by Randy Dunlap <[email protected]>
Thanks for your patch.
Quoted 23 lines
Cc Heikki Krogerus <[email protected]>Cc Amelie Delaunay <[email protected]>Cc Greg Kroah-Hartman <[email protected]>--- drivers/usb/typec/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/usb/typec/Kconfig +2
-2@@ -65,9 +65,9 @@ config TYPEC_HD3SS3220 config TYPEC_STUSB160X tristate "STMicroelectronics STUSB160x Type-C controller driver" - depends on I2C - depends on REGMAP_I2C depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH + depends on I2C + select REGMAP_I2C help Say Y or M here if your system has STMicroelectronics STUSB160x Type-C port controller.
Quoted 7 lines · Randy Dunlap
REGMAP_I2Cis not a user visible kconfig symbol so driver configs should not "depend on" it. They should depend on I2C and then selectREGMAP_I2C.If this worked, it was only because some other driver had set/enabled
REGMAP_I2C.
Quoted 6 lines
Fixes da0cb6310094 ("usb: typec: add support for STUSB160x Type-C controller family")Signed-off-by Randy Dunlap <[email protected]>Cc Heikki Krogerus <[email protected]>Cc Amelie Delaunay <[email protected]>Cc Greg Kroah-Hartman <[email protected]>
Quoted 18 lines
--- drivers/usb/typec/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/usb/typec/Kconfig +2
-2@@ -65,9 +65,9 @@ config TYPEC_HD3SS3220 config TYPEC_STUSB160X tristate "STMicroelectronics STUSB160x Type-C controller driver" - depends on I2C - depends on REGMAP_I2C depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH + depends on I2C + select REGMAP_I2C help Say Y or M here if your system has STMicroelectronics STUSB160x Type-C port controller.
Signature · 1 line
heikki
Greg Kroah-Hartman
maintainerQuoted 13 lines · Randy Dunlap
REGMAP_I2Cis not a user visible kconfig symbol so driver configs should not "depend on" it. They should depend on I2C and then selectREGMAP_I2C.If this worked, it was only because some other driver had set/enabled
REGMAP_I2C.Fixes da0cb6310094 ("usb: typec: add support for STUSB160x Type-C controller family")Signed-off-by Randy Dunlap <[email protected]>Cc Heikki Krogerus <[email protected]>Cc Amelie Delaunay <[email protected]>Cc Greg Kroah-Hartman <[email protected]>
Quoted 3 lines
--- drivers/usb/typec/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
With this applied, I get the following build error:
drivers/of/Kconfig:69:error: recursive dependency detected!drivers/of/Kconfig:69: symbol OF_IRQ depends on IRQ_DOMAINkernel/irq/Kconfig:59: symbol IRQ_DOMAIN is selected by REGMAPdrivers/base/regmap/Kconfig:7: symbol REGMAP default is visible depending on REGMAP_I2C
drivers/base/regmap/Kconfig:20:symbol REGMAP_I2C is selected by TYPEC_STUSB160Xdrivers/usb/typec/Kconfig:66: symbol TYPEC_STUSB160X depends on USB_ROLE_SWITCHdrivers/usb/roles/Kconfig:3: symbol USB_ROLE_SWITCH is selected by USB_MUSB_MEDIATEKdrivers/usb/musb/Kconfig:119: symbol USB_MUSB_MEDIATEK depends on GENERIC_PHYdrivers/phy/Kconfig:8: symbol GENERIC_PHY is selected by PHY_BCM_NS_USB3drivers/phy/broadcom/Kconfig:49: symbol PHY_BCM_NS_USB3 depends on MDIO_BUSdrivers/net/mdio/Kconfig:13: symbol MDIO_BUS depends on MDIO_DEVICEdrivers/net/mdio/Kconfig:6: symbol MDIO_DEVICE is selected by PHYLIBdrivers/net/phy/Kconfig:16: symbol PHYLIB is selected by ARC_EMAC_COREdrivers/net/ethernet/arc/Kconfig:19: symbol ARC_EMAC_CORE is selected by ARC_EMACdrivers/net/ethernet/arc/Kconfig:25: symbol ARC_EMAC depends on OF_IRQ
For a resolution refer to Documentation/kbuild/kconfig-language.rst subsection "Kconfig recursive dependency limitations"
So I can't take it as-is :(
thanks,
greg k-h
Quoted 38 lines · Greg Kroah-Hartman
Quoted 13 lines · Randy Dunlap
REGMAP_I2Cis not a user visible kconfig symbol so driver configs should not "depend on" it. They should depend on I2C and then selectREGMAP_I2C.If this worked, it was only because some other driver had set/enabled
REGMAP_I2C.Fixes da0cb6310094 ("usb: typec: add support for STUSB160x Type-C controller family")Signed-off-by Randy Dunlap <[email protected]>Cc Heikki Krogerus <[email protected]>Cc Amelie Delaunay <[email protected]>Cc Greg Kroah-Hartman <[email protected]>Quoted 3 lines
--- drivers/usb/typec/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)With this applied, I get the following build error:
drivers/of/Kconfig:69:error: recursive dependency detected!
drivers/of/Kconfig:69: symbolOF_IRQdepends onIRQ_DOMAINkernel/irq/Kconfig:59: symbolIRQ_DOMAINis selected by REGMAPdrivers/base/regmap/Kconfig:7: symbol REGMAP default is visible depending onREGMAP_I2C
drivers/base/regmap/Kconfig:20:symbolREGMAP_I2Cis selected byTYPEC_STUSB160Xdrivers/usb/typec/Kconfig:66: symbolTYPEC_STUSB160Xdepends onUSB_ROLE_SWITCHdrivers/usb/roles/Kconfig:3: symbolUSB_ROLE_SWITCHis selected byUSB_MUSB_MEDIATEKdrivers/usb/musb/Kconfig:119: symbolUSB_MUSB_MEDIATEKdepends onGENERIC_PHYdrivers/phy/Kconfig:8: symbolGENERIC_PHYis selected byPHY_BCM_NS_USB3drivers/phy/broadcom/Kconfig:49: symbolPHY_BCM_NS_USB3depends onMDIO_BUSdrivers/net/mdio/Kconfig:13: symbolMDIO_BUSdepends onMDIO_DEVICEdrivers/net/mdio/Kconfig:6: symbolMDIO_DEVICEis selected by PHYLIBdrivers/net/phy/Kconfig:16: symbol PHYLIB is selected byARC_EMAC_COREdrivers/net/ethernet/arc/Kconfig:19: symbolARC_EMAC_COREis selected byARC_EMACdrivers/net/ethernet/arc/Kconfig:25: symbolARC_EMACdepends onOF_IRQ
For a resolution refer toDocumentation/kbuild/kconfig-language.rstsubsection "Kconfigrecursive dependency limitations"
Quoted 1 line
So I can't take it as-is :(
Darn, I never saw that, but I'll look into it.
thanks.
Signature · 1 line
~Randy
Quoted 39 lines · Randy Dunlap
Quoted 38 lines · Greg Kroah-Hartman
Quoted 13 lines · Randy Dunlap
REGMAP_I2Cis not a user visible kconfig symbol so driver configs should not "depend on" it. They should depend on I2C and then selectREGMAP_I2C.If this worked, it was only because some other driver had set/enabled
REGMAP_I2C.Fixes da0cb6310094 ("usb: typec: add support for STUSB160x Type-C controller family")Signed-off-by Randy Dunlap <[email protected]>Cc Heikki Krogerus <[email protected]>Cc Amelie Delaunay <[email protected]>Cc Greg Kroah-Hartman <[email protected]>Quoted 3 lines
---
drivers/usb/typec/Kconfig| 4 ++--1 file changed, 2 insertions(+), 2 deletions(-)With this applied, I get the following build error:
drivers/of/Kconfig:69:error: recursive dependency detected! drivers/of/Kconfig:69: symbol
OF_IRQdepends onIRQ_DOMAINkernel/irq/Kconfig:59: symbolIRQ_DOMAINis selected by REGMAP drivers/base/regmap/Kconfig:7: symbol REGMAP default is visible depending onREGMAP_I2Cdrivers/base/regmap/Kconfig:20:symbolREGMAP_I2Cis selected byTYPEC_STUSB160Xdrivers/usb/typec/Kconfig:66: symbolTYPEC_STUSB160Xdepends onUSB_ROLE_SWITCHdrivers/usb/roles/Kconfig:3: symbolUSB_ROLE_SWITCHis selected byUSB_MUSB_MEDIATEKdrivers/usb/musb/Kconfig:119: symbolUSB_MUSB_MEDIATEKdepends onGENERIC_PHYdrivers/phy/Kconfig:8: symbolGENERIC_PHYis selected byPHY_BCM_NS_USB3drivers/phy/broadcom/Kconfig:49: symbolPHY_BCM_NS_USB3depends onMDIO_BUSdrivers/net/mdio/Kconfig:13: symbolMDIO_BUSdepends onMDIO_DEVICEdrivers/net/mdio/Kconfig:6: symbolMDIO_DEVICEis selected by PHYLIB drivers/net/phy/Kconfig:16: symbol PHYLIB is selected byARC_EMAC_COREdrivers/net/ethernet/arc/Kconfig:19: symbolARC_EMAC_COREis selected byARC_EMACdrivers/net/ethernet/arc/Kconfig:25: symbolARC_EMACdepends onOF_IRQFor a resolution refer toDocumentation/kbuild/kconfig-language.rstsubsection "Kconfigrecursive dependency limitations"
Quoted 3 lines
Quoted 1 line
So I can't take it as-is :(
Darn, I never saw that, but I'll look into it.
Yeah, I easily see that in linux-next instead of mainline.
Still digging into it. :(
Signature · 1 line
~Randy