All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] nand_scan() in ARM9 S3C2410
@ 2009-09-19 22:08 J.Hwan.Kim
  2009-09-21  7:24 ` Minkyu Kang
  0 siblings, 1 reply; 4+ messages in thread
From: J.Hwan.Kim @ 2009-09-19 22:08 UTC (permalink / raw)
  To: u-boot

Hi, everyone

I'm using u-boot for ARM9 S3C2410.
My tool chain is ELDK4.2.

I defined configuration "CONFIG_NAND_CMD, 
CONFIG_SYS_MAX_NAND_DEVICE    1,
and CONFIG_SYS_NAND_BASE 0x4E00000C" for nand_init().

It works well until the routine reaches nand_scan() which is in nand_base.c
When nand_scan() is called, the system hangs.

For test, When I written dummy function is nand_base.c and
called the dummy function from nand.c, the system is down.

My u-boot is using relocation to SDRAM from NAND.
The address of nand_scan() is 0x31F85894.
(TEXT_BASE is 0x31F80000  and SDRAM start from 0x30000000)
I'm sured that the binary data of u-boot.bin (address 0x5894) is same
with SDRAM data in 0x31F85894.
I think the relocation is  OK.

When I attached the routines of nand_base.c to nand.c,
the nand_scan() function passed.

Is there any hint for this problem?

Thanks in advnace.

Regards,
J.Hwan Kim

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

* [U-Boot] nand_scan() in ARM9 S3C2410
  2009-09-19 22:08 [U-Boot] nand_scan() in ARM9 S3C2410 J.Hwan.Kim
@ 2009-09-21  7:24 ` Minkyu Kang
  2009-09-21  8:04   ` kevin.morfitt at fearnside-systems.co.uk
  0 siblings, 1 reply; 4+ messages in thread
From: Minkyu Kang @ 2009-09-21  7:24 UTC (permalink / raw)
  To: u-boot

Dear J.Hwan.Kim

2009/9/20 J.Hwan.Kim <frog1120@gmail.com>:
> Hi, everyone
>
> I'm using u-boot for ARM9 S3C2410.
> My tool chain is ELDK4.2.
>
> I defined configuration "CONFIG_NAND_CMD,
> CONFIG_SYS_MAX_NAND_DEVICE ? ?1,
> and CONFIG_SYS_NAND_BASE 0x4E00000C" for nand_init().
>
> It works well until the routine reaches nand_scan() which is in nand_base.c
> When nand_scan() is called, the system hangs.
>
> For test, When I written dummy function is nand_base.c and
> called the dummy function from nand.c, the system is down.
>
> My u-boot is using relocation to SDRAM from NAND.
> The address of nand_scan() is 0x31F85894.
> (TEXT_BASE is 0x31F80000 ?and SDRAM start from 0x30000000)
> I'm sured that the binary data of u-boot.bin (address 0x5894) is same
> with SDRAM data in 0x31F85894.
> I think the relocation is ?OK.
>
> When I attached the routines of nand_base.c to nand.c,
> the nand_scan() function passed.
>
> Is there any hint for this problem?
>
> Thanks in advnace.
>
> Regards,
> J.Hwan Kim
>
>
>
>
>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>

Did you check the kevin's mail?
He said "u-boot for s3c2410 doesn't support".
http://lists.denx.de/pipermail/u-boot/2009-September/060855.html

And I think.. you can trace nand_scan() step by step.
please try it and do more detailed question.

Thanks
Minkyu Kang
-- 
from. prom.
www.promsoft.net

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

* [U-Boot] nand_scan() in ARM9 S3C2410
  2009-09-21  7:24 ` Minkyu Kang
@ 2009-09-21  8:04   ` kevin.morfitt at fearnside-systems.co.uk
  2009-09-21 13:10     ` J.Hwan.Kim
  0 siblings, 1 reply; 4+ messages in thread
From: kevin.morfitt at fearnside-systems.co.uk @ 2009-09-21  8:04 UTC (permalink / raw)
  To: u-boot



Minkyu Kang wrote:
> Dear J.Hwan.Kim
> 
> 2009/9/20 J.Hwan.Kim <frog1120@gmail.com>:
>> Hi, everyone
>>
>> I'm using u-boot for ARM9 S3C2410.
>> My tool chain is ELDK4.2.
>>
>> I defined configuration "CONFIG_NAND_CMD,
>> CONFIG_SYS_MAX_NAND_DEVICE    1,
>> and CONFIG_SYS_NAND_BASE 0x4E00000C" for nand_init().
>>
>> It works well until the routine reaches nand_scan() which is in nand_base.c
>> When nand_scan() is called, the system hangs.
>>
>> For test, When I written dummy function is nand_base.c and
>> called the dummy function from nand.c, the system is down.
>>
>> My u-boot is using relocation to SDRAM from NAND.
>> The address of nand_scan() is 0x31F85894.
>> (TEXT_BASE is 0x31F80000  and SDRAM start from 0x30000000)
>> I'm sured that the binary data of u-boot.bin (address 0x5894) is same
>> with SDRAM data in 0x31F85894.
>> I think the relocation is  OK.
>>
>> When I attached the routines of nand_base.c to nand.c,
>> the nand_scan() function passed.
>>
>> Is there any hint for this problem?
>>
>> Thanks in advnace.
>>
>> Regards,
>> J.Hwan Kim
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> http://lists.denx.de/mailman/listinfo/u-boot
>>
> 
> Did you check the kevin's mail?
> He said "u-boot for s3c2410 doesn't support".
> http://lists.denx.de/pipermail/u-boot/2009-September/060855.html
> 
u-boot for s3c2410 doesn't support booting from NAND flash, but assuming you
boot from NOR flash and have NAND enabled properly in the board config file it
does support the use of NAND flash.

In the NAND config you show in your email, it's probably a typo but it should be
CONFIG_CMD_NAND not CONFIG_NAND_CMD.

If that's not the problem - I'm not sure what board you're using. If you're
using an existing config file post the name of it, or if you're using one you've
created post the board config file itself.

Regards
Kevin Morfitt

> And I think.. you can trace nand_scan() step by step.
> please try it and do more detailed question.
> 
> Thanks
> Minkyu Kang

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

* [U-Boot] nand_scan() in ARM9 S3C2410
  2009-09-21  8:04   ` kevin.morfitt at fearnside-systems.co.uk
@ 2009-09-21 13:10     ` J.Hwan.Kim
  0 siblings, 0 replies; 4+ messages in thread
From: J.Hwan.Kim @ 2009-09-21 13:10 UTC (permalink / raw)
  To: u-boot

kevin.morfitt at fearnside-systems.co.uk wrote:
> Minkyu Kang wrote:
>   
>> Dear J.Hwan.Kim
>>
>> 2009/9/20 J.Hwan.Kim <frog1120@gmail.com>:
>>     
>>> Hi, everyone
>>>
>>> I'm using u-boot for ARM9 S3C2410.
>>> My tool chain is ELDK4.2.
>>>
>>> I defined configuration "CONFIG_NAND_CMD,
>>> CONFIG_SYS_MAX_NAND_DEVICE    1,
>>> and CONFIG_SYS_NAND_BASE 0x4E00000C" for nand_init().
>>>
>>> It works well until the routine reaches nand_scan() which is in nand_base.c
>>> When nand_scan() is called, the system hangs.
>>>
>>> For test, When I written dummy function is nand_base.c and
>>> called the dummy function from nand.c, the system is down.
>>>
>>> My u-boot is using relocation to SDRAM from NAND.
>>> The address of nand_scan() is 0x31F85894.
>>> (TEXT_BASE is 0x31F80000  and SDRAM start from 0x30000000)
>>> I'm sured that the binary data of u-boot.bin (address 0x5894) is same
>>> with SDRAM data in 0x31F85894.
>>> I think the relocation is  OK.
>>>
>>> When I attached the routines of nand_base.c to nand.c,
>>> the nand_scan() function passed.
>>>
>>> Is there any hint for this problem?
>>>
>>> Thanks in advnace.
>>>
>>> Regards,
>>> J.Hwan Kim
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> U-Boot mailing list
>>> U-Boot at lists.denx.de
>>> http://lists.denx.de/mailman/listinfo/u-boot
>>>
>>>       
>> Did you check the kevin's mail?
>> He said "u-boot for s3c2410 doesn't support".
>> http://lists.denx.de/pipermail/u-boot/2009-September/060855.html
>>
>>     
> u-boot for s3c2410 doesn't support booting from NAND flash, but assuming you
> boot from NOR flash and have NAND enabled properly in the board config file it
> does support the use of NAND flash.
> In the NAND config you show in your email, it's probably a typo but it should be
> CONFIG_CMD_NAND not CONFIG_NAND_CMD.
>
>   

First of all, thank you for replies.

I solved the problem, which was not nand_scan routine() problem.
My board is DEP-2410 which is not included in an official U-boot.
I modifies smdk2410_config for my board.
However, I received an unofficial code from the company making DEP-2410 
board,
which enables NAND booting.
The code includes routines for nand initialization before relocation to 
SDRAM
and the routines copying pages from NAND to SDRAM.

My mistake was that I did not increased the relocation size after 
including nand related code
by defining CONFIG_CMD_NAND and others.
The relocation size was defined in the code received from the DEP-2410 
board company.
By defining CONFIG_CMD_NAND, the code size increased over 128Kbytes.
The size of original code ,which did not include NAND related code, was 
about 93Kbytes
and my relocation code size was defined as 128KBytes.
So, when code branches to over 128Kbytes, strange code is executed and 
system hangs.
It was my mistake.

Regards,
J.Hwan Kim


> If that's not the problem - I'm not sure what board you're using. If you're
> using an existing config file post the name of it, or if you're using one you've
> created post the board config file itself.
>
> Regards
> Kevin Morfitt
>
>   
>> And I think.. you can trace nand_scan() step by step.
>> please try it and do more detailed question.
>>
>> Thanks
>> Minkyu Kang
>>     

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

end of thread, other threads:[~2009-09-21 13:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-19 22:08 [U-Boot] nand_scan() in ARM9 S3C2410 J.Hwan.Kim
2009-09-21  7:24 ` Minkyu Kang
2009-09-21  8:04   ` kevin.morfitt at fearnside-systems.co.uk
2009-09-21 13:10     ` J.Hwan.Kim

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.