Subject: Re: 2.6.34: arch/powerpc/sysdev/micropatch.c not compiling

From: Anton Vorontsov <[email-masked]>
Date: Thu, 8 Jul 2010 20:55:09 +0400

On Tue, Jul 06, 2010 at 10:03:43AM +1000, Tony Breeds wrote:
> On Mon, Jul 05, 2010 at 09:45:11AM +0200, LEROY Christophe wrote:
> > When activating micropatch option, the kernel does not compile.
> 
> powerpc problems should alos CC linuxppc-dev.
>  
> > It looks like a spi_t is not defined anywhere.
> > 
> > CC arch/powerpc/sysdev/micropatch.o
> > arch/powerpc/sysdev/micropatch.c: In function ‘cpm_load_patch’:
> > arch/powerpc/sysdev/micropatch.c:629: erreur: expected ‘=’, ‘,’,
> > ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
[...]
> -       spp = (spi_t *)&commproc->cp_dparam[PROFF_SPI];
> -       spp->spi_rpbase = i;
> +       smp = (smc_uart_t *)&commproc->cp_dparam[PROFF_SPI];
> +       smp->smc_rpbase = i;
>  
>  # if defined(CONFIG_I2C_SPI_UCODE_PATCH)
>         commproc->cp_cpmcr1 = 0x802a;
> 
> 
> Would help?

While this will fix the issue, I think this is not technically
correct (i.e. micropatching SPI controller via I2C pram struct,
even though the structs appear to be identical).

As the spi_param is needed outside of the SPI driver, we'd
better re-introduce the struct, I think.

I'll send some fixes for this and other issues in this file.

Thanks,

-- 
Anton Vorontsov
email: [email-masked]
irc://irc.freenode.net/bd2