[PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart - Kernel

This is a discussion on [PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart - Kernel ; fs_enet and cpm_uart need symbols from commproc.c (for CPM1) or cpm2_common.c. Add EXPORT_SYMBOL for cpmp, cpm_setbrg and cpm2_immr, so the drivers can be compiled as modules. Building modules, stage 2. MODPOST 5 modules ERROR: "cpm2_immr" [drivers/net/fs_enet/fs_enet.ko] undefined! ERROR: "cpmp" [drivers/net/fs_enet/fs_enet.ko] ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: [PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart

  1. [PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart

    fs_enet and cpm_uart need symbols from commproc.c (for CPM1) or
    cpm2_common.c. Add EXPORT_SYMBOL for cpmp, cpm_setbrg and cpm2_immr, so
    the drivers can be compiled as modules.

    Building modules, stage 2.
    MODPOST 5 modules
    ERROR: "cpm2_immr" [drivers/net/fs_enet/fs_enet.ko] undefined!
    ERROR: "cpmp" [drivers/net/fs_enet/fs_enet.ko] undefined!
    make[1]: *** [__modpost] Error 1
    make: *** [modules] Error 2

    Signed-off-by: Jochen Friedrich
    ---
    arch/powerpc/sysdev/commproc.c | 3 +++
    arch/powerpc/sysdev/cpm2_common.c | 3 +++
    2 files changed, 6 insertions(+), 0 deletions(-)

    diff --git a/arch/powerpc/sysdev/commproc.c b/arch/powerpc/sysdev/commproc.c
    index f6a6378..d5a0dcf 100644
    --- a/arch/powerpc/sysdev/commproc.c
    +++ b/arch/powerpc/sysdev/commproc.c
    @@ -51,6 +51,8 @@ static void m8xx_cpm_dpinit(void);
    static uint host_buffer; /* One page of host buffer */
    static uint host_end; /* end + 1 */
    cpm8xx_t __iomem *cpmp; /* Pointer to comm processor space */
    +EXPORT_SYMBOL(cpmp);
    +
    immap_t __iomem *mpc8xx_immr;
    static cpic8xx_t __iomem *cpic_reg;

    @@ -302,6 +304,7 @@ cpm_setbrg(uint brg, uint rate)
    out_be32(bp, (((BRG_UART_CLK_DIV16 / rate) - 1) << 1) |
    CPM_BRG_EN | CPM_BRG_DIV16);
    }
    +EXPORT_SYMBOL(cpm_setbrg);

    #ifndef CONFIG_PPC_CPM_NEW_BINDING
    /*
    diff --git a/arch/powerpc/sysdev/cpm2_common.c b/arch/powerpc/sysdev/cpm2_common.c
    index 859362f..4ed5df6 100644
    --- a/arch/powerpc/sysdev/cpm2_common.c
    +++ b/arch/powerpc/sysdev/cpm2_common.c
    @@ -51,11 +51,13 @@ static void cpm2_dpinit(void);
    #endif

    cpm_cpm2_t __iomem *cpmp; /* Pointer to comm processor space */
    +EXPORT_SYMBOL(cpmp);

    /* We allocate this here because it is used almost exclusively for
    * the communication processor devices.
    */
    cpm2_map_t __iomem *cpm2_immr;
    +EXPORT_SYMBOL(cpm2_immr);

    #define CPM_MAP_SIZE (0x40000) /* 256k - the PQ3 reserve this amount
    of space for CPM as it is larger
    @@ -117,6 +119,7 @@ cpm_setbrg(uint brg, uint rate)

    cpm2_unmap(bp);
    }
    +EXPORT_SYMBOL(cpm_setbrg);

    /* This function is used to set high speed synchronous baud rate
    * clocks.
    --
    1.5.3.5


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  2. Re: [PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart

    On Sun, Nov 11, 2007 at 06:01:37PM +0100, Jochen Friedrich wrote:
    > --- a/arch/powerpc/sysdev/commproc.c
    > +++ b/arch/powerpc/sysdev/commproc.c
    > @@ -51,6 +51,8 @@ static void m8xx_cpm_dpinit(void);
    > static uint host_buffer; /* One page of host buffer */
    > static uint host_end; /* end + 1 */
    > cpm8xx_t __iomem *cpmp; /* Pointer to comm processor space */
    > +EXPORT_SYMBOL(cpmp);


    Sorry, but this is a nightmare waiting to happen. Please define
    proper accessors instead. (And get rid of the typedef while you're
    at it)


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  3. Re: [PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart

    Christoph Hellwig wrote:
    > On Sun, Nov 11, 2007 at 06:01:37PM +0100, Jochen Friedrich wrote:
    >> --- a/arch/powerpc/sysdev/commproc.c
    >> +++ b/arch/powerpc/sysdev/commproc.c
    >> @@ -51,6 +51,8 @@ static void m8xx_cpm_dpinit(void);
    >> static uint host_buffer; /* One page of host buffer */
    >> static uint host_end; /* end + 1 */
    >> cpm8xx_t __iomem *cpmp; /* Pointer to comm processor space */
    >> +EXPORT_SYMBOL(cpmp);

    >
    > Sorry, but this is a nightmare waiting to happen. Please define
    > proper accessors instead.


    We have proper accessors: in_be32, out_be16, etc.

    Now, is the huge struct encompassing all of immr space a bad idea?
    Sure. Are we working towards getting rid of it? Yes. Is that a reason
    to keep modules from working in the meantime? No.

    > (And get rid of the typedef while you're at it)


    Again, changing all the users is a bit beyond the scope of this patch.

    -Scott
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  4. Re: [PATCH] powerpc: Add EXPORT_SYMBOL for symbols required by fs_enet and cpm_uart

    Jochen Friedrich wrote:
    > fs_enet and cpm_uart need symbols from commproc.c (for CPM1) or
    > cpm2_common.c. Add EXPORT_SYMBOL for cpmp, cpm_setbrg and cpm2_immr, so
    > the drivers can be compiled as modules.
    >
    > Building modules, stage 2.
    > MODPOST 5 modules
    > ERROR: "cpm2_immr" [drivers/net/fs_enet/fs_enet.ko] undefined!
    > ERROR: "cpmp" [drivers/net/fs_enet/fs_enet.ko] undefined!
    > make[1]: *** [__modpost] Error 1
    > make: *** [modules] Error 2
    >
    > Signed-off-by: Jochen Friedrich


    Acked-by: Scott Wood
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

+ Reply to Thread