Re: [linux-sunxi] Re: [PATCH] soc: sunxi: Fix missing dependency on REGMAP_MMIO

From: Samuel Holland
Date: Mon Apr 01 2019 - 18:11:48 EST

On 4/1/19 10:29 AM, 'Bin Liu' via linux-sunxi wrote:
> On Fri, Mar 01, 2019 at 03:43:48PM +0100, Maxime Ripard wrote:
>> On Thu, Feb 28, 2019 at 08:20:44PM -0600, Samuel Holland wrote:
>>> When enabling ARCH_SUNXI from allnoconfig, SUNXI_SRAM is enabled, but
>>> not REGMAP_MMIO, so the kernel fails to link with an undefined reference
>>> to __devm_regmap_init_mmio_clk. Select REGMAP_MMIO, as suggested in
>>> drivers/base/regmap/Kconfig.
>>> This creates the following dependency loop:
>>> drivers/of/Kconfig:68: symbol OF_IRQ depends on IRQ_DOMAIN
>>> kernel/irq/Kconfig:63: symbol IRQ_DOMAIN is selected by REGMAP
>>> drivers/base/regmap/Kconfig:7: symbol REGMAP default is visible depending on REGMAP_MMIO
>>> drivers/base/regmap/Kconfig:39: symbol REGMAP_MMIO is selected by SUNXI_SRAM
>>> drivers/soc/sunxi/Kconfig:4: symbol SUNXI_SRAM is selected by USB_MUSB_SUNXI
>>> drivers/usb/musb/Kconfig:63: symbol USB_MUSB_SUNXI depends on GENERIC_PHY
>>> drivers/phy/Kconfig:7: symbol GENERIC_PHY is selected by PHY_BCM_NS_USB3
>>> drivers/phy/broadcom/Kconfig:29: symbol PHY_BCM_NS_USB3 depends on MDIO_BUS
>>> drivers/net/phy/Kconfig:12: symbol MDIO_BUS default is visible depending on PHYLIB
>>> drivers/net/phy/Kconfig:181: symbol PHYLIB is selected by ARC_EMAC_CORE
>>> drivers/net/ethernet/arc/Kconfig:18: symbol ARC_EMAC_CORE is selected by ARC_EMAC
>>> drivers/net/ethernet/arc/Kconfig:24: symbol ARC_EMAC depends on OF_IRQ
>>> To fix the circular dependency, make USB_MUSB_SUNXI select GENERIC_PHY
>>> instead of depending on it. This matches the use of GENERIC_PHY by all
>>> but two other drivers.
> Should this go to stable tree as well? Is a 'Fixes' tag for it?

Yes, I just sent v2 with these tags (although I forgot Maxime's Ack).

>>> Signed-off-by: Samuel Holland <samuel@xxxxxxxxxxxx>
>> I assume it would go through the USB tree.
>> Acked-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxx>