[PATCH] spi_mpc8xxx: issue with using definition of pram in Device Tree
christophe.leroy at c-s.fr
Fri Sep 24 17:20:27 EST 2010
The issue is that cpm_muram_alloc_fixed() allocates memory from the
general purpose muram area (from 0x0 to 0x1bff).
Here we need to return a pointer to the parameter RAM, which is located
somewhere starting at 0x1c00. It is not a dynamic allocation that is
required here but only to point on the correct location in the parameter
For the CPM2, I don't know. I'm working with a MPC866.
Attached is a previous discussion on the subject where I explain a bit
more in details the issue.
Le 24/09/2010 09:10, Grant Likely a écrit :
> On Thu, Sep 16, 2010 at 09:05:03AM +0200, christophe leroy wrote:
>> This patch applies to 18.104.22.168 and 22.214.171.124
>> It fixes an issue during the probe for CPM1 with definition of parameter ram from DTS
>> Signed-off-by: christophe leroy<christophe.leroy at c-s.fr>
> I'm sorry, I don't understand the fix from the given description.
> What is the problem, and why is cpm_muram_alloc_fixed() the wrong
> thing to call on CPM1? Does CPM2 still need it?
>> diff -urN b/drivers/spi/spi_mpc8xxx.c c/drivers/spi/spi_mpc8xxx.c
>> --- b/drivers/spi/spi_mpc8xxx.c 2010-09-08 16:43:50.000000000 +0200
>> +++ c/drivers/spi/spi_mpc8xxx.c 2010-09-08 16:44:03.000000000 +0200
>> @@ -822,7 +822,7 @@
>> if (!iprop || size != sizeof(*iprop) * 4)
>> return -ENOMEM;
>> - spi_base_ofs = cpm_muram_alloc_fixed(iprop, 2);
>> + spi_base_ofs = iprop;
>> if (IS_ERR_VALUE(spi_base_ofs))
>> return -ENOMEM;
>> @@ -844,7 +844,6 @@
>> return spi_base_ofs;
>> - cpm_muram_free(spi_base_ofs);
>> return pram_ofs;
-------------- next part --------------
An embedded message was scrubbed...
From: Scott Wood <scottwood at freescale.com>
Subject: Re: Small issue at init with spi_mpc8xxx.c with CPM1
Date: Tue, 7 Sep 2010 15:00:38 -0500
More information about the Linuxppc-dev