[PATCH] ppchameleon_early_serial_map hidden under #ifdef CONFIG_SERIAL_8250

Grant Likely grant.likely at secretlab.ca
Tue Apr 3 16:05:01 EST 2007


On 4/2/07, Igor Marnat <marny at rambler.ru> wrote:
> Hello List!
>
> Having selected PPChameleonEVB as a platform and having turned off
> seral driver (CONFIG_SERIAL_8250 is not set) I got the following error
> message during kernel compilation:
>
> arch/ppc/platforms/4xx/built-in.o: In function `board_setup_arch':
> : undefined reference to `early_serial_setup'
>
>
> Perhaps the following patch will be ok?

In general looks okay, but one comment below.  This code is going to
need to be moved over to arch/powerpc fairly soon.

> diff --git a/arch/ppc/platforms/4xx/ppchameleon.c b/arch/ppc/platforms/4xx/ppchameleon.c
> index 6d8b7ad..159d4a6 100644
> --- a/arch/ppc/platforms/4xx/ppchameleon.c
> +++ b/arch/ppc/platforms/4xx/ppchameleon.c
> @@ -45,7 +45,9 @@
>  void *ppchameleon_rtc_base;
>
>  extern void gen550_init(int, struct uart_port *);
> +#ifdef CONFIG_SERIAL_8250
>  extern int early_serial_setup(struct uart_port *port);
> +#endif /* CONFIG_SERIAL_8250 */

This is just ugly, but not because of your patch.  External function
prototypes that aren't pulled from header files can lead to all kinds
of wierdness.  Since the code is already ugly and dangerous, I
wouldn't even bother with adding the #ifdef around it.

>
>  /* Some IRQs unique to the board
>   * Used by the generic 405 PCI setup functions in ppc4xx_pci.c
> @@ -75,6 +77,7 @@ ppc405_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin)
>   * Calculate the proper input baud rate and setup the serial driver.
>   */
>
> +#ifdef CONFIG_SERIAL_8250
>  static void __init
>  ppchameleon_early_serial_map (void)
>  {
> @@ -105,7 +108,9 @@ ppchameleon_early_serial_map (void)
>                 printk ("Early serial init of port 0 failed\n");
>         }
>  }
> -
> +#else /* CONFIG_SERIAL_8250 */
> +#define ppchameleon_early_serial_map()
> +#endif /* CONFIG_SERIAL_8250 */
>
>  void __init board_setup_arch (void)
>  {
> --

-- 
Grant Likely, B.Sc. P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195



More information about the Linuxppc-dev mailing list