Skip to contentSkip to conversation

mach-ks8695/Kconfig: Make MACH_KS8695 depends on PCI

PATCH New Manjunath Goudar 4 participants 5 messages Aug 5, 2013 – Aug 7, 2013 2 messages not in the archive

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mach-ks8695/Kconfig: Make MACH_KS8695 depends on PCI

From: root <[email protected]>

This patch adds a Kconfig dependency on MACH_KS8695,MACH_CM* or MACH_IM* being available before PCI can be enabled. Without this patch,build system can lead to issues. This was discovered during randconfig testing, without PCI if any one of MACH_KS8695,MACH_CM* or MACH_IM* being enabled, leading to the following error:

LD init/built-in.o
arch/arm/mach-ks8695/built-in.o: In function `og_register_pci':
arch/arm/mach-ks8695/board-og.c:47:undefined reference to `ks8695_init_pci'
make: *** [vmlinux] Error 1

Cc Arnd Bergmann <[email protected]>
Cc Deepak Saxena <[email protected]>
Cc Greg Ungerer <[email protected]>
Cc linux-arm-kernel at lists.infradead.org
---
 arch/arm/mach-ks8695/Kconfig | 5 +++++
 1 file changed, 5 insertions(+)
arch/arm/mach-ks8695/Kconfig +5 -0
index a545976..29d7d9f 100644
@@ -5,6 +5,7 @@ menu "Kendin/Micrel KS8695 Implementations"
 config MACH_KS8695
 	bool "KS8695 development board"
 	select MIGHT_HAVE_PCI
+	depends on PCI
 	help
 	  Say 'Y' here if you want your kernel to run on the original
 	  Kendin-Micrel KS8695 development board.
@@ -53,6 +54,7 @@ config MACH_CM4002
 config MACH_CM4008
 	bool "OpenGear CM4008"
 	select MIGHT_HAVE_PCI
+	depends on PCI
 	help
 	  Say 'Y' here if you want your kernel to support the OpenGear
 	  CM4008 Console Server. See http://www.opengear.com for more
@@ -61,6 +63,7 @@ config MACH_CM4008
 config MACH_CM41xx
 	bool "OpenGear CM41xx"
 	select MIGHT_HAVE_PCI
+	depends on PCI
 	help
 	  Say 'Y' here if you want your kernel to support the OpenGear
 	  CM4016 or CM4048 Console Servers. See http://www.opengear.com for
@@ -69,6 +72,7 @@ config MACH_CM41xx
 config MACH_IM4004
 	bool "OpenGear IM4004"
 	select MIGHT_HAVE_PCI
+	depends on PCI
 	help
 	  Say 'Y' here if you want your kernel to support the OpenGear
 	  IM4004 Secure Access Server. See http://www.opengear.com for
@@ -77,6 +81,7 @@ config MACH_IM4004
 config MACH_IM42xx
 	bool "OpenGear IM42xx"
 	select MIGHT_HAVE_PCI
+	depends on PCI
 	help
 	  Say 'Y' here if you want your kernel to support the OpenGear
 	  IM4216 or IM4248 Console Servers. See http://www.opengear.com for
Signature · 1 line
1.8.1.2
#1 lore raw

PATCH 1/1 mach-ks8695/Kconfig: Make MACH_KS8695 depends on PCI

Quoted 1 line · Manjunath Goudar

From: root <[email protected]>

:)

Quoted 2 lines

This patch adds a Kconfig dependency on MACH_KS8695,MACH_CM* or MACH_IM* being available before PCI can be enabled. Without this patch,build system

Add Space after ','

Quoted 2 lines

can lead to issues. This was discovered during randconfig testing, without PCI if any one of MACH_KS8695,MACH_CM* or MACH_IM* being enabled,

Same here.

Quoted 21 lines

leading to the following error:

LD init/built-in.o
arch/arm/mach-ks8695/built-in.o: In function `og_register_pci':
arch/arm/mach-ks8695/board-og.c:47:undefined reference to `ks8695_init_pci'
make: *** [vmlinux] Error 1

Cc Arnd Bergmann <[email protected]>
Cc Deepak Saxena <[email protected]>
Cc Greg Ungerer <[email protected]>
Cc linux-arm-kernel at lists.infradead.org
---
 arch/arm/mach-ks8695/Kconfig | 5 +++++
 1 file changed, 5 insertions(+)
arch/arm/mach-ks8695/Kconfig +0 -0
index a545976..29d7d9f 100644

arch/arm/mach-ks8695/Kconfig menu "Kendin/Micrel KS8695 Implementations" · line 8

Quoted 4 lines
arch/arm/mach-ks8695/Kconfig +1 -0
@@ -5,6 +5,7 @@ menu "Kendin/Micrel KS8695 Implementations"
 config MACH_KS8695
        bool "KS8695 development board"
        select MIGHT_HAVE_PCI
+       depends on PCI

You need both PCI and MIGHT_HAVE_PCI? Don't know but it looks like defconfig is missing PCI stuff.. and MIGHT_HAVE_PCI is enough here?

A message that is not in the archive (sent off-list or not yet received): CAJFYCKHVb7EXiYPDBACotSc8bwnBM4bTXvtV-Fr=F2MonV7rKg@mail.gmail.com

#3 lore raw

PATCH 1/1 mach-ks8695/Kconfig: Make MACH_KS8695 depends on PCI

Hi Manjunath,

Quoted 43 lines · Manjunath Goudar

On 5 August 2013 14:47, Viresh Kumar <viresh.kumar at linaro.org <mailto:[email protected]>> wrote:

On 5 August 2013 14:37, Manjunath Goudar <manjunath.goudar at linaro.org <mailto:[email protected]>> wrote:
> From: root <root at si-cspbld63.lge.net <mailto:[email protected]>>

:)

> This patch adds a Kconfig dependency on MACH_KS8695,MACH_CM* or MACH_IM* > being available before PCI can be enabled. Without this patch,build system

Add Space after ','

> can lead to issues. This was discovered during randconfig testing, > without PCI if any one of MACH_KS8695,MACH_CM* or MACH_IM* being enabled,

Same here.

> leading to the following error:
>
> LD init/built-in.o
> arch/arm/mach-ks8695/built-in.o: In function `og_register_pci':
> arch/arm/mach-ks8695/board-og.c:47:undefined reference to `ks8695_init_pci'
> make: *** [vmlinux] Error 1
>
> Signed-off-by: Manjunath Goudar <manjunath.goudar at linaro.org <mailto:[email protected]>> > Cc: Arnd Bergmann <arnd at arndb.de <mailto:[email protected]>>
> Cc: Deepak Saxena <dsaxena at linaro.org <mailto:[email protected]>>
> Cc: Greg Ungerer <gerg at uclinux.org <mailto:[email protected]>>
> Cc: linux-arm-kernel at lists.infradead.org <mailto:[email protected]> > ---
> arch/arm/mach-ks8695/Kconfig | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/arch/arm/mach-ks8695/Kconfig b/arch/arm/mach-ks8695/Kconfig
> index a545976..29d7d9f 100644
> --- a/arch/arm/mach-ks8695/Kconfig
> +++ b/arch/arm/mach-ks8695/Kconfig
> @@ -5,6 +5,7 @@ menu "Kendin/Micrel KS8695 Implementations"
> config MACH_KS8695
> bool "KS8695 development board"
> select MIGHT_HAVE_PCI
> + depends on PCI

Quoted 6 lines

You need both PCI and MIGHT_HAVE_PCI? Don't know but it looks like defconfig is missing PCI stuff.. and MIGHT_HAVE_PCI is enough here?

PCI is needed here because board-og.c file depends on pci.o.

It shouldn't though, thus the original use of MIGHT_HAVE_PCI. The board-og.c machine code supports a number of boards, some of which don't have a PCI bus (that is they use the KS8695 CPU that doesn't contain the PCI bus silicon).

I think you want a fix that makes the pci support code in this file conditional on CONFIG_PCI.

Regards
Greg

A message that is not in the archive (sent off-list or not yet received): CAJFYCKErP_epEY6EbcK3trBWOHGW_EU6usuAwwnaDXk_maHsCA@mail.gmail.com

#5 lore raw

PATCH 1/1 mach-ks8695/Kconfig: Make MACH_KS8695 depends on PCI

Hi Manjunath,

Quoted 57 lines · Manjunath Goudar

On 6 August 2013 07:37, Greg Ungerer <gerg at uclinux.org <mailto:[email protected]>> wrote:
On 05/08/13 20:31, Manjunath Goudar wrote:
> On 5 August 2013 14:47, Viresh Kumar <viresh.kumar at linaro.org <mailto:[email protected]> <mailto:viresh.kumar at linaro.org <mailto:[email protected]>>> wrote:
>
> On 5 August 2013 14:37, Manjunath Goudar <manjunath.goudar at linaro.org <mailto:[email protected]> <mailto:manjunath.goudar at linaro.org <mailto:[email protected]>>> wrote:
> > From: root <root at si-cspbld63.lge.net <mailto:[email protected]> <mailto:root at si-cspbld63.lge.net <mailto:[email protected]>>>
>
> :)
>
> > This patch adds a Kconfig dependency on MACH_KS8695,MACH_CM* or MACH_IM*
> > being available before PCI can be enabled. Without this patch,build system
>
> Add Space after ','
>
> > can lead to issues. This was discovered during randconfig testing,
> > without PCI if any one of MACH_KS8695,MACH_CM* or MACH_IM* being enabled,
>
> Same here.
>
> > leading to the following error:
> >
> > LD init/built-in.o
> > arch/arm/mach-ks8695/built-in.o: In function `og_register_pci':
> > arch/arm/mach-ks8695/board-og.c:47:undefined reference to `ks8695_init_pci'
> > make: *** [vmlinux] Error 1
> >
> > Signed-off-by: Manjunath Goudar <manjunath.goudar at linaro.org <mailto:[email protected]> <mailto:manjunath.goudar at linaro.org <mailto:[email protected]>>>
> > Cc: Arnd Bergmann <arnd at arndb.de <mailto:[email protected]> <mailto:arnd at arndb.de <mailto:[email protected]>>>
> > Cc: Deepak Saxena <dsaxena at linaro.org <mailto:[email protected]> <mailto:dsaxena at linaro.org <mailto:[email protected]>>>
> > Cc: Greg Ungerer <gerg at uclinux.org <mailto:[email protected]> <mailto:gerg at uclinux.org <mailto:[email protected]>>>
> > Cc: linux-arm-kernel at lists.infradead.org <mailto:[email protected]> <mailto:linux-arm-kernel at lists.infradead.org <mailto:[email protected]>>
> > ---
> > arch/arm/mach-ks8695/Kconfig | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/arch/arm/mach-ks8695/Kconfig b/arch/arm/mach-ks8695/Kconfig
> > index a545976..29d7d9f 100644
> > --- a/arch/arm/mach-ks8695/Kconfig
> > +++ b/arch/arm/mach-ks8695/Kconfig
> > @@ -5,6 +5,7 @@ menu "Kendin/Micrel KS8695 Implementations"
> > config MACH_KS8695
> > bool "KS8695 development board"
> > select MIGHT_HAVE_PCI
> > + depends on PCI
>
> You need both PCI and MIGHT_HAVE_PCI? Don't know but it looks
> like defconfig is missing PCI stuff.. and MIGHT_HAVE_PCI is enough
> here?
>
>
> PCI is needed here because board-og.c file depends on pci.o.

It shouldn't though, thus the original use of MIGHT_HAVE_PCI. The board-og.c machine code supports a number of boards, some of which don't have a PCI bus (that is they use the KS8695 CPU that doesn't contain the PCI bus silicon).

Quoted 8 lines

I think you want a fix that makes the pci support code in this file conditional on CONFIG_PCI.

You are suggesting me,as below

+#ifdef CONFIG_PCI

        ks8695_init_pci(&og_pci);

+#endif

Yes, in this case I think you will need something like this.

Regards
Greg

#6 lore raw

PATCH 1/1 mach-ks8695/Kconfig: Make MACH_KS8695 depends on PCI

In reply to Manjunath Goudar
Quoted 8 lines · Manjunath Goudar

From: root <[email protected]>

This patch adds a Kconfig dependency on MACH_KS8695,MACH_CM* or MACH_IM* being available before PCI can be enabled. Without this patch,build system can lead to issues. This was discovered during randconfig testing, without PCI if any one of MACH_KS8695,MACH_CM* or MACH_IM* being enabled, leading to the following error:

Quoted 4 lines

LD init/built-in.o
arch/arm/mach-ks8695/built-in.o: In function `og_register_pci':
arch/arm/mach-ks8695/board-og.c:47:undefined reference to `ks8695_init_pci'
make: *** [vmlinux] Error 1

This looks wrong.

arch/arm/mach-ks8695/Kconfig menu "Kendin/Micrel KS8695 Implementations" · line 8

Quoted 9 lines
arch/arm/mach-ks8695/Kconfig +1 -0
index a545976..29d7d9f 100644
@@ -5,6 +5,7 @@ menu "Kendin/Micrel KS8695 Implementations"
 config MACH_KS8695
 	bool "KS8695 development board"
 	select MIGHT_HAVE_PCI
+	depends on PCI

So, to be able to select PCI, MIGHT_HAVE_PCI needs to be enabled. That's selected by enabling MACH_KS8695, but now you make MACH_KS8695 depend on PCI. That sounds to me like a circular dependency.