Problem of PowerPc 82xx when using smc

hellohello hellohello008 at 163.com
Sat May 22 16:23:59 EST 2010


>> Newer kernels support dynamically allocating this parameter RAM.  Older 
>> kernels use whatever u-boot chose.

I see.    Thanks .
U-boot initialize SMC1 for the first time, and has set SMC1_BASE to the 0x87FC offset of the DPRAM.
kernel  2.6.25 initialize SMC1 for the second time as well as  which are done in u-boot,  except to  set SMC1_BASE again.
So if SMC1_BASE is transferred to kernel by dts correctly, SMC1 should work well.
The problem must be my dts file ,not the code.




----- Original Message ----- 
From: "hellohello" <hellohello008 at 163.com>
To: "Scott Wood" <scottwood at freescale.com>
Cc: <linuxppc-dev at lists.ozlabs.org>
Sent: Saturday, May 22, 2010 10:51 AM
Subject: Re: Problem of PowerPc 82xx when using smc


> 
>> Newer kernels support dynamically allocating this parameter RAM.  Older 
>> kernels use whatever u-boot chose.
>> 
>> Why do you want to set it to a particular address?
> 
> There should be some code to set SMC1_BASE to the 0x87FC offset of the DPRAM, whatever SMC1_BASE is fixed or dynamically allocated .
> 
> My kernel is 2.6.25, this SMC1_BASE value can be transferred to  kernel by dts tree, but I have not find the code to set it to  0x87FC offset of the DPRAM. Or there is another way to solve it ?
> 
> 
> 
> ----- Original Message ----- 
> From: "Scott Wood" <scottwood at freescale.com>
> To: "hellohello" <hellohello008 at 163.com>
> Cc: <linuxppc-dev at lists.ozlabs.org>
> Sent: Saturday, May 22, 2010 1:28 AM
> Subject: Re: Problem of PowerPc 82xx when using smc
> 
> 
>> On 05/20/2010 10:33 PM, hellohello wrote:
>>>> No, it shouldn't -- rx_bd_base is of type "cbd_t *", so the multiplication
>>>> already happens as part of pointer arithmetic.
>>> ---Yes, you are right. I made a basic mistake.
>>>
>>> But now I have another question.
>>> The SMC1 params can be relocated to any offset of the DPRAM on a 64 byte boundary, not as the SCC1, which must be  at 0x8000 offset of the DPRAM.
>>> The SMC1 params base is set at 0x87FC offset of the DPRAM.
>>>
>>> So if  I want SMC1 params start at  0x200 in DPRAM  , I should set 0x200 to the 0x87FC offset of the DPRAM.
>>> I have see this code in u-boot, but I can not find this code in neither cpm_uart_cpm2.c nor cpm_uart_core.c.
>>>
>>> Should I add these code to  cpm_uart_core.c?
>> 
>> Newer kernels support dynamically allocating this parameter RAM.  Older 
>> kernels use whatever u-boot chose.
>> 
>> Why do you want to set it to a particular address?
>> 
>> -Scott
>>


More information about the Linuxppc-dev mailing list