linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Re: 2.6.34: arch/powerpc/sysdev/micropatch.c not compiling
       [not found] <4C318D87.1010306@c-s.fr>
@ 2010-07-06  0:03 ` Tony Breeds
  2010-07-08 16:55   ` Anton Vorontsov
  0 siblings, 1 reply; 2+ messages in thread
From: Tony Breeds @ 2010-07-06  0:03 UTC (permalink / raw)
  To: LEROY Christophe; +Cc: Anton Vorontsov, LinuxPPC-dev, linux-kernel

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
> arch/powerpc/sysdev/micropatch.c:629: erreur: ‘spp’ undeclared
> (first use in this function)
> arch/powerpc/sysdev/micropatch.c:629: erreur: (Each undeclared
> identifier is reported only once
> arch/powerpc/sysdev/micropatch.c:629: erreur: for each function it
> appears in.)
> cc1: warnings being treated as errors
> arch/powerpc/sysdev/micropatch.c:630: erreur: ISO C89 interdit les
> mélanges de déclarations et de code
> arch/powerpc/sysdev/micropatch.c:671: erreur: ‘spi_t’ undeclared
> (first use in this function)
> arch/powerpc/sysdev/micropatch.c:671: erreur: expected expression
> before ‘)’ token
> make[1]: *** [arch/powerpc/sysdev/micropatch.o] Erreur 1
> make: *** [arch/powerpc/sysdev] Erreur 2

spi_t was removed in commit 644b2a680ccc51a9ec4d6beb12e9d47d2dee98e2
(powerpc/cpm: Remove SPI defines and spi structs).  Anton, Kumar it looks like
something along the lines of:

diff --git a/arch/powerpc/sysdev/micropatch.c b/arch/powerpc/sysdev/micropatch.c
index d8d6028..aa1785e 100644
--- a/arch/powerpc/sysdev/micropatch.c
+++ b/arch/powerpc/sysdev/micropatch.c
@@ -626,7 +626,6 @@ cpm_load_patch(cpm8xx_t     *cp)
        volatile uint           *dp;            /* Dual-ported RAM. */
        volatile cpm8xx_t       *commproc;
        volatile iic_t          *iip;
-       volatile spi_t          *spp;
        volatile smc_uart_t     *smp;
        int     i;
 
@@ -668,8 +667,8 @@ cpm_load_patch(cpm8xx_t     *cp)
        /* Put SPI above the IIC, also 32-byte aligned.
        */
        i = (RPBASE + sizeof(iic_t) + 31) & ~31;
-       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?

Yours Tony

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: 2.6.34: arch/powerpc/sysdev/micropatch.c not compiling
  2010-07-06  0:03 ` 2.6.34: arch/powerpc/sysdev/micropatch.c not compiling Tony Breeds
@ 2010-07-08 16:55   ` Anton Vorontsov
  0 siblings, 0 replies; 2+ messages in thread
From: Anton Vorontsov @ 2010-07-08 16:55 UTC (permalink / raw)
  To: LEROY Christophe, linux-kernel, LinuxPPC-dev, Kumar Gala

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: cbouatmailru@gmail.com
irc://irc.freenode.net/bd2

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-07-08 16:55 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <4C318D87.1010306@c-s.fr>
2010-07-06  0:03 ` 2.6.34: arch/powerpc/sysdev/micropatch.c not compiling Tony Breeds
2010-07-08 16:55   ` Anton Vorontsov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).