Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1649741 > unrolled thread

[PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080

Started byArnd Bergmann <arnd@arndb.de>
First post2017-05-24 18:10 +0200
Last post2017-06-01 16:50 +0200
Articles 5 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080 Arnd Bergmann <arnd@arndb.de> - 2017-05-24 18:10 +0200
    Re: [PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080 Krzysztof Kozlowski <krzk@kernel.org> - 2017-05-31 21:40 +0200
    Re: [PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080 Russell King - ARM Linux <linux@armlinux.org.uk> - 2017-05-31 22:00 +0200
      Re: [PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080 Arnd Bergmann <arnd@arndb.de> - 2017-05-31 22:30 +0200
        Re: [PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080 Mathieu Poirier <mathieu.poirier@linaro.org> - 2017-06-01 16:50 +0200

#1649741 — [PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080

FromArnd Bergmann <arnd@arndb.de>
Date2017-05-24 18:10 +0200
Subject[PATCH] ARM: s3c64xx: don't select ARM_AMBA from S3C64XX_PL080
Message-ID<tKH1g-4vB-33@gated-at.bofh.it>
While trying a fix a build warning unrelated to s3c64xx, I ran into
a circular dependency:

drivers/i2c/Kconfig:7: symbol I2C is selected by FB_DDC
drivers/video/fbdev/Kconfig:63: symbol FB_DDC is selected by FB_CYBER2000_DDC
drivers/video/fbdev/Kconfig:381: symbol FB_CYBER2000_DDC depends on FB_CYBER2000
drivers/video/fbdev/Kconfig:369: symbol FB_CYBER2000 depends on FB
drivers/video/fbdev/Kconfig:5: symbol FB is selected by DRM_KMS_FB_HELPER
drivers/gpu/drm/Kconfig:72: symbol DRM_KMS_FB_HELPER is selected by DRM_KMS_CMA_HELPER
drivers/gpu/drm/Kconfig:137: symbol DRM_KMS_CMA_HELPER is selected by DRM_PL111
drivers/gpu/drm/pl111/Kconfig:1: symbol DRM_PL111 depends on ARM_AMBA
drivers/amba/Kconfig:1: symbol ARM_AMBA is selected by S3C64XX_PL080
arch/arm/mach-s3c64xx/Kconfig:42: symbol S3C64XX_PL080 default value contains DMADEVICES
drivers/dma/Kconfig:5: symbol DMADEVICES is selected by SND_SOC_SH4_SIU
sound/soc/sh/Kconfig:29: symbol SND_SOC_SH4_SIU is selected by SND_SIU_MIGOR
sound/soc/sh/Kconfig:59: symbol SND_SIU_MIGOR depends on I2C

The I2C and FB dependencies are hard to untangle, but I notice that
S3C64XX_PL080 selecting ARM_AMBA is one piece of the puzzle that
can easily be avoided, as ARCH_S3C64XX already select ARM_AMBA.
Removing the redundant 'select' now can help us in the future if we
run into a variation of the same dependency.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
Please apply this to the samsung tree
---
 arch/arm/mach-s3c64xx/Kconfig | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig
index 459214fa20b4..5ee5ad74a3d6 100644
--- a/arch/arm/mach-s3c64xx/Kconfig
+++ b/arch/arm/mach-s3c64xx/Kconfig
@@ -40,7 +40,6 @@ config CPU_S3C6410
 
 config S3C64XX_PL080
 	def_bool DMADEVICES
-	select ARM_AMBA
 	select AMBA_PL08X
 
 config S3C64XX_SETUP_SDHCI
-- 
2.9.0

[toc] | [next] | [standalone]


#1654573

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2017-05-31 21:40 +0200
Message-ID<tNhDk-zb-17@gated-at.bofh.it>
In reply to#1649741
On Wed, May 24, 2017 at 05:58:34PM +0200, Arnd Bergmann wrote:
> While trying a fix a build warning unrelated to s3c64xx, I ran into
> a circular dependency:
> 
> drivers/i2c/Kconfig:7: symbol I2C is selected by FB_DDC
> drivers/video/fbdev/Kconfig:63: symbol FB_DDC is selected by FB_CYBER2000_DDC
> drivers/video/fbdev/Kconfig:381: symbol FB_CYBER2000_DDC depends on FB_CYBER2000
> drivers/video/fbdev/Kconfig:369: symbol FB_CYBER2000 depends on FB
> drivers/video/fbdev/Kconfig:5: symbol FB is selected by DRM_KMS_FB_HELPER
> drivers/gpu/drm/Kconfig:72: symbol DRM_KMS_FB_HELPER is selected by DRM_KMS_CMA_HELPER
> drivers/gpu/drm/Kconfig:137: symbol DRM_KMS_CMA_HELPER is selected by DRM_PL111
> drivers/gpu/drm/pl111/Kconfig:1: symbol DRM_PL111 depends on ARM_AMBA
> drivers/amba/Kconfig:1: symbol ARM_AMBA is selected by S3C64XX_PL080
> arch/arm/mach-s3c64xx/Kconfig:42: symbol S3C64XX_PL080 default value contains DMADEVICES
> drivers/dma/Kconfig:5: symbol DMADEVICES is selected by SND_SOC_SH4_SIU
> sound/soc/sh/Kconfig:29: symbol SND_SOC_SH4_SIU is selected by SND_SIU_MIGOR
> sound/soc/sh/Kconfig:59: symbol SND_SIU_MIGOR depends on I2C
> 
> The I2C and FB dependencies are hard to untangle, but I notice that
> S3C64XX_PL080 selecting ARM_AMBA is one piece of the puzzle that
> can easily be avoided, as ARCH_S3C64XX already select ARM_AMBA.
> Removing the redundant 'select' now can help us in the future if we
> run into a variation of the same dependency.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> Please apply this to the samsung tree
> ---
>  arch/arm/mach-s3c64xx/Kconfig | 1 -
>  1 file changed, 1 deletion(-)
> 

Thanks, applied.

Best regards,
Krzysztof

[toc] | [prev] | [next] | [standalone]


#1654592

FromRussell King - ARM Linux <linux@armlinux.org.uk>
Date2017-05-31 22:00 +0200
Message-ID<tNhWF-Ge-1@gated-at.bofh.it>
In reply to#1649741
On Wed, May 24, 2017 at 05:58:34PM +0200, Arnd Bergmann wrote:
> While trying a fix a build warning unrelated to s3c64xx, I ran into
> a circular dependency:
> 
> drivers/i2c/Kconfig:7: symbol I2C is selected by FB_DDC
> drivers/video/fbdev/Kconfig:63: symbol FB_DDC is selected by FB_CYBER2000_DDC
> drivers/video/fbdev/Kconfig:381: symbol FB_CYBER2000_DDC depends on FB_CYBER2000
> drivers/video/fbdev/Kconfig:369: symbol FB_CYBER2000 depends on FB
> drivers/video/fbdev/Kconfig:5: symbol FB is selected by DRM_KMS_FB_HELPER
> drivers/gpu/drm/Kconfig:72: symbol DRM_KMS_FB_HELPER is selected by DRM_KMS_CMA_HELPER
> drivers/gpu/drm/Kconfig:137: symbol DRM_KMS_CMA_HELPER is selected by DRM_PL111
> drivers/gpu/drm/pl111/Kconfig:1: symbol DRM_PL111 depends on ARM_AMBA
> drivers/amba/Kconfig:1: symbol ARM_AMBA is selected by S3C64XX_PL080
> arch/arm/mach-s3c64xx/Kconfig:42: symbol S3C64XX_PL080 default value contains DMADEVICES
> drivers/dma/Kconfig:5: symbol DMADEVICES is selected by SND_SOC_SH4_SIU
> sound/soc/sh/Kconfig:29: symbol SND_SOC_SH4_SIU is selected by SND_SIU_MIGOR
> sound/soc/sh/Kconfig:59: symbol SND_SIU_MIGOR depends on I2C
> 
> The I2C and FB dependencies are hard to untangle, but I notice that
> S3C64XX_PL080 selecting ARM_AMBA is one piece of the puzzle that
> can easily be avoided, as ARCH_S3C64XX already select ARM_AMBA.
> Removing the redundant 'select' now can help us in the future if we
> run into a variation of the same dependency.

Yes, selecting ARM_AMBA from drivers is definitely not right; this
symbol should be selected only by platforms that want AMBA primecell
bus support, not by drivers, precisely because of these dependency
issues.

There's another case where ARM_AMBA is selected that probably needs
fixing - the coresight hwtracing code.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

[toc] | [prev] | [next] | [standalone]


#1654609

FromArnd Bergmann <arnd@arndb.de>
Date2017-05-31 22:30 +0200
Message-ID<tNipI-16U-15@gated-at.bofh.it>
In reply to#1654592
On Wed, May 31, 2017 at 9:58 PM, Russell King - ARM Linux
<linux@armlinux.org.uk> wrote:
> On Wed, May 24, 2017 at 05:58:34PM +0200, Arnd Bergmann wrote:
> Yes, selecting ARM_AMBA from drivers is definitely not right; this
> symbol should be selected only by platforms that want AMBA primecell
> bus support, not by drivers, precisely because of these dependency
> issues.
>
> There's another case where ARM_AMBA is selected that probably needs
> fixing - the coresight hwtracing code.

[Adding Mathieu to cc]

Mathieu,

do you remember how we ended up with this?

menuconfig CORESIGHT
       bool "CoreSight Tracing Support"
       select ARM_AMBA

As Russell says, probably shouldn't select that symbol, most likely
we want either the individual drivers that register an amba_driver to have
a 'depends on ARM_AMBA' or alternatively replace the 'select' with 'depends
on' for the entire subsystem.

        Arnd

[toc] | [prev] | [next] | [standalone]


#1655203

FromMathieu Poirier <mathieu.poirier@linaro.org>
Date2017-06-01 16:50 +0200
Message-ID<tNzAd-3MT-5@gated-at.bofh.it>
In reply to#1654609
On 31 May 2017 at 14:25, Arnd Bergmann <arnd@arndb.de> wrote:
> On Wed, May 31, 2017 at 9:58 PM, Russell King - ARM Linux
> <linux@armlinux.org.uk> wrote:
>> On Wed, May 24, 2017 at 05:58:34PM +0200, Arnd Bergmann wrote:
>> Yes, selecting ARM_AMBA from drivers is definitely not right; this
>> symbol should be selected only by platforms that want AMBA primecell
>> bus support, not by drivers, precisely because of these dependency
>> issues.
>>
>> There's another case where ARM_AMBA is selected that probably needs
>> fixing - the coresight hwtracing code.
>
> [Adding Mathieu to cc]
>
> Mathieu,
>
> do you remember how we ended up with this?

That was part of the initial driver submission that happened a couple
of years ago.  The driver depended on AMBA and as such I added the
"select", not knowing it was preferable to have a "depends".

>
> menuconfig CORESIGHT
>        bool "CoreSight Tracing Support"
>        select ARM_AMBA
>
> As Russell says, probably shouldn't select that symbol, most likely
> we want either the individual drivers that register an amba_driver to have
> a 'depends on ARM_AMBA' or alternatively replace the 'select' with 'depends
> on' for the entire subsystem.

I'm good with that.

Mathieu

>
>         Arnd

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web