lkml.org 
[lkml]   [2009]   [Nov]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] powerpc: Add Kconfig dependency on PCI_MSI for XICS and select for PSERIES
    On Fri, Nov 27, 2009 at 01:40:26PM +1100, Benjamin Herrenschmidt wrote:
    > On Wed, 2009-11-18 at 17:05 +0000, Mel Gorman wrote:
    >
    > >
    > > diff --git a/arch/powerpc/platforms/Kconfig b/arch/powerpc/platforms/Kconfig
    > > index 04a8061..a82c470 100644
    > > --- a/arch/powerpc/platforms/Kconfig
    > > +++ b/arch/powerpc/platforms/Kconfig
    > > @@ -52,9 +52,9 @@ config PPC_UDBG_BEAT
    > > default n
    > >
    > > config XICS
    > > - depends on PPC_PSERIES
    > > + depends on PCI_MSI
    > > bool
    > > - default y
    > > + default n
    >
    > Why the above ? XICS only exist on PSERIES and select bypass depends in
    > nasty ways anyways.
    >

    You're right. When I made that change, I assumed that a "select foo"
    would also resolve the dependencies. It doesn't but I failed to back
    this out as being unnecessary.

    > > config IPIC
    > > bool
    > > diff --git a/arch/powerpc/platforms/pseries/Kconfig b/arch/powerpc/platforms/pseries/Kconfig
    > > index f0e6f28..81c2289 100644
    > > --- a/arch/powerpc/platforms/pseries/Kconfig
    > > +++ b/arch/powerpc/platforms/pseries/Kconfig
    > > @@ -5,6 +5,8 @@ config PPC_PSERIES
    > > select PPC_I8259
    > > select PPC_RTAS
    > > select RTAS_ERROR_LOGGING
    > > + select PCI_MSI
    > > + select XICS
    > > select PPC_UDBG_16550
    > > select PPC_NATIVE
    > > select PPC_PCI_CHOICE if EMBEDDED
    >
    > The above bits look plenty enough. Can you also stick it next to the
    > MPIC one ?
    >

    They are. I can.

    ==== CUT HERE ====
    powerpc: Add Kconfig dependency on PCI_MSI for XICS and select for PSERIES

    It's possible to set CONFIG_XICS without CONFIG_PCI_MSI. When that happens,
    the kernel fails to build with

    arch/powerpc/platforms/built-in.o: In function `.xics_startup':
    xics.c:(.text+0x12f60): undefined reference to `.unmask_msi_irq' make: ***
    [.tmp_vmlinux1] Error 1

    Furthermore, as noted by Benjamin Herrenschmidt, "CONFIG_XICS should be
    made invisible and selected by PSERIES."

    This patch adds the dependency in KConfig for XICS on PCI_MSI. When PSERIES
    support is being configured, both options are silently selected.

    Signed-off-by: Mel Gorman <mel[at]csn.ul.ie>
    ---
    arch/powerpc/platforms/pseries/Kconfig | 2 ++
    1 files changed, 2 insertions(+), 0 deletions(-)

    diff --git a/arch/powerpc/platforms/pseries/Kconfig b/arch/powerpc/platforms/pseries/Kconfig
    index f0e6f28..60d53ed 100644
    --- a/arch/powerpc/platforms/pseries/Kconfig
    +++ b/arch/powerpc/platforms/pseries/Kconfig
    @@ -2,6 +2,8 @@ config PPC_PSERIES
    depends on PPC64 && PPC_BOOK3S
    bool "IBM pSeries & new (POWER5-based) iSeries"
    select MPIC
    + select PCI_MSI
    + select XICS
    select PPC_I8259
    select PPC_RTAS
    select RTAS_ERROR_LOGGING

    \
     
     \ /
      Last update: 2009-11-27 17:37    [W:0.025 / U:77.888 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site