* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. @ 2008-03-09 13:51 Leonid 2008-03-09 14:05 ` Wolfgang Denk 2008-03-09 17:28 ` Marco Cavallini 0 siblings, 2 replies; 9+ messages in thread From: Leonid @ 2008-03-09 13:51 UTC (permalink / raw) To: u-boot Hi: BDI2000 doesn't support NAND flash programming. However it's possible using BDI2000 to load some code to RAM and then run it. This code can do practically anything including NAND programming. Does somebody have such code for ppc440epx CPU? To that end I could use u-boot itself if I could make it run directly from RAM... just to program NAND. However it's not simple thing to do for ppc440... but may be somebody has done it? Thanks, Leonid. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 13:51 [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx Leonid @ 2008-03-09 14:05 ` Wolfgang Denk 2008-03-09 14:12 ` w.wegner at astro-kom.de 2008-03-09 17:28 ` Marco Cavallini 1 sibling, 1 reply; 9+ messages in thread From: Wolfgang Denk @ 2008-03-09 14:05 UTC (permalink / raw) To: u-boot In message <406A31B117F2734987636D6CCC93EE3C0252928B@ehost011-3.exch011.intermedia.net> you wrote: > > BDI2000 doesn't support NAND flash programming. However it's possible > using BDI2000 to load some code to RAM and then run it. This code can do > practically anything including NAND programming. Does somebody have such > code for ppc440epx CPU? > > To that end I could use u-boot itself if I could make it run directly > from RAM... just to program NAND. However it's not simple thing to do > for ppc440... but may be somebody has done it? You can as well use the BDI2000 to program the standard U-Boot image to NOR flash, boot from NOR and then use U-Boot... Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de You said you didn't want to use CGI.pm, but methinks you are needlessly reinventing the wheel, one spoke at a time. Either you are masochistic, or you just haven't seen enough of what CGI.pm can do for you. -- Randal L. Schwartz in <8cyb81rg81.fsf@gadget.cscaper.com> ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 14:05 ` Wolfgang Denk @ 2008-03-09 14:12 ` w.wegner at astro-kom.de 2008-03-09 14:42 ` Wolfgang Denk 2008-03-09 18:15 ` Leonid 0 siblings, 2 replies; 9+ messages in thread From: w.wegner at astro-kom.de @ 2008-03-09 14:12 UTC (permalink / raw) To: u-boot Hi, On 9 Mar 2008 at 15:05, Wolfgang Denk wrote: > In message <406A31B117F2734987636D6CCC93EE3C0252928B@ehost011-3.exch011.intermedia.net> you wrote: > > > > BDI2000 doesn't support NAND flash programming. However it's possible > > using BDI2000 to load some code to RAM and then run it. This code can do > > practically anything including NAND programming. Does somebody have such > > code for ppc440epx CPU? > > > > To that end I could use u-boot itself if I could make it run directly > > from RAM... just to program NAND. However it's not simple thing to do > > for ppc440... but may be somebody has done it? > > You can as well use the BDI2000 to program the standard U-Boot image > to NOR flash, boot from NOR and then use U-Boot... the problem is that this is not suitable for production use. It would be a very elegant solution to have U-Boot run from RAM with an environment in RAM to tell it what and where to flash... You could set up the environment while loading the data and would have a flexible flashing tool. The only thing missing for this is a working CONFIG_MONITOR_IS_IN_RAM as far as I can see. Regards, Wolfgang Wegner ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 14:12 ` w.wegner at astro-kom.de @ 2008-03-09 14:42 ` Wolfgang Denk 2008-03-09 14:49 ` w.wegner at astro-kom.de 2008-03-10 3:19 ` Leonid 2008-03-09 18:15 ` Leonid 1 sibling, 2 replies; 9+ messages in thread From: Wolfgang Denk @ 2008-03-09 14:42 UTC (permalink / raw) To: u-boot In message <47D3FE4E.8174.1501DA7@w.wegner.astro-kom.de> you wrote: > > > You can as well use the BDI2000 to program the standard U-Boot image > > to NOR flash, boot from NOR and then use U-Boot... > > the problem is that this is not suitable for production use. OK. Then you gotta spend some effort... > It would be a very elegant solution to have U-Boot run from RAM with > an environment in RAM to tell it what and where to flash... You could > set up the environment while loading the data and would have a flexible > flashing tool. To set up the environment you normally just load and run a script. > The only thing missing for this is a working CONFIG_MONITOR_IS_IN_RAM > as far as I can see. Actually this is not missing. All you need to do is to create a configuration which (1) has a modfied TEXT_BASE and (2) skips the memory initialization. But see http://www.denx.de/wiki/view/DULG/CanUBootBeConfiguredSuchThatItCanBeStartedInRAM Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de "At least they're __________EXPERIENCED incompetents" ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 14:42 ` Wolfgang Denk @ 2008-03-09 14:49 ` w.wegner at astro-kom.de 2008-03-10 3:19 ` Leonid 1 sibling, 0 replies; 9+ messages in thread From: w.wegner at astro-kom.de @ 2008-03-09 14:49 UTC (permalink / raw) To: u-boot On 9 Mar 2008 at 15:42, Wolfgang Denk wrote: > In message <47D3FE4E.8174.1501DA7@w.wegner.astro-kom.de> you wrote: > > > The only thing missing for this is a working CONFIG_MONITOR_IS_IN_RAM > > as far as I can see. > > Actually this is not missing. All you need to do is to create a > configuration which (1) has a modfied TEXT_BASE and (2) skips the > memory initialization. But see > http://www.denx.de/wiki/view/DULG/CanUBootBeConfiguredSuchThatItCanBeStartedInRAM I know this is possible in theory. However, in my case (MCF5329/MCF537x) this stopped working with U-Boot 1.3.x, and I did not yet figure out what goes wrong. I just wanted to vote for not dropping this feature altogether, which I feared might happen as it is normally very much discouraged to use it. Regards, Wolfgang ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 14:42 ` Wolfgang Denk 2008-03-09 14:49 ` w.wegner at astro-kom.de @ 2008-03-10 3:19 ` Leonid 1 sibling, 0 replies; 9+ messages in thread From: Leonid @ 2008-03-10 3:19 UTC (permalink / raw) To: u-boot Hi, Wolfgang & Wolfgang: The question of running u-boot from RAM has been discussed several times in this forum and I agree with Wolfgang Denk that for "classical" ppc CPUs (like mine ppc440epx) there almost no need to resort to such tricks. However my case - initial programming of NAND flash using BDI2000 while NOR flash is not present - gives some justification to such configuration. Certainly u-boot is overkill for such a task, but if it can be used instead of creating special application - why not? BDI is widely accepted, rather chip tool and other tools either too expensive (Corellus) or don't support ppc4xx. I have succeed in creating such a configuration for AMCC ppc4440epx Sequoia board (Sequoia itself features NOR flash additionally to NAND, but my board, based on it, doesn't). I provide my method below - it may be useful for some members of this community as NAND flashes become more popular. It's certainly better to have such feature supported by standard u-boot if possible... 1. Set TEXT_BASE to some RAM address (I used 0x1000000) in board/amcc/sequoia/config.mk file. 2. Disable memory initialization. Practically, initdram() function mustn't be called OR it must do nothing, just return memory size (256MB for Sequoia). Wolfgang Denk suggested that much in his e-mail: > All you need to do is to create a configuration which > (1) has a modified TEXT_BASE and > (2) skips the memory initialization. Something more is required however: 3. After analyzing init.S file, I found it necessary to add two following TLB entries to BDI config file (sequoia.cfg): WTLB 0xD000000D 0x1D00003F ;NAND flash 1K WTLB 0xEEC00005 0x1EEC003F ;PCI Registers 1K The first one is essential; second can be avoided if you exclude PCI from u-boot configuration, but I didn't bother. 3. I have replaced board/amcc/sequoia/u-boot.lds by board/xilinx/ml403/u-boot.lds which doesn't set reset vector to 0xfffffffc. With these changes image is ready to go on Sequoia even if both NOR and NAND flashes are wiped clean. But since we considering to run it on the board where NOR flash is not present at all, we should exclude all accesses to NOR flash. 4. I have added CFG_NO_FLASH to sequoia.h and also disabled the following command flags: (CFG_CMD_FLASH | CFG_CMD_IMLS | CFG_CMD_FAT). 5. File board/amcc/sequoia.c had to be modified little bit since it tries to access NOR flash unconditionally. Now u-boot RAM image boots on Sequoia. First one must load it via BDI to the RAM of course: 440EPx>load 0x1000000 sequoia/uboot/u-boot-ram.bin Loading sequoia/uboot/u-boot-ram.bin , please wait .... Loading program file passed 440EPx>rm pc 0x1000100 440EPx>go CPU: AMCC PowerPC 440EPx Rev. A at 333.333 MHz (PLB=133, OPB=66, EBC=66 MHz) Security/Kasumi support I2C boot EEPROM disabled Bootstrap Option B - Boot ROM Location EBC (16 bits) Internal PCI arbiter disabled, PCI async ext clock used 32 kB I-Cache 32 kB D-Cache Board: Sequoia - AMCC PPC440EPx Evaluation Board I2C: ready DTT: 1 FAILED INIT DRAM: 256 MB Top of RAM usable for U-Boot at: 10000000 Reserving 392k for U-Boot at: 0ff9d000 Reserving 256k for malloc() at: 0ff5d000 Reserving 144 Bytes for Board Info at: 0ff5cf70 Reserving 48 Bytes for Global Data at: 0ff5cf40 Stack Pointer at: 0ff5cf28 New Stack Pointer is: 0ff5cf28 Now running in RAM - U-Boot at: 0ff9d000 NAND: 32 MiB *** Warning - bad CRC, using default environment PCI: Bus Dev VenId DevId Class Int In: serial Out: serial Err: serial USB: Host(int phy) Device(ext phy) U-Boot relocated to 0ff9d000 Net: No ethernet found. Type run flash_nfs to mount root filesystem over NFS U-Boot$ It's is not a problem it doesn't have Ethernet. It can be added easily, but probably this is not necessary - image for burning can be loaded to RAM via the very same BDI. Thanks, Leonid. -----Original Message----- From: u-boot-users-bounces@lists.sourceforge.net [mailto:u-boot-users-bounces at lists.sourceforge.net] On Behalf Of Wolfgang Denk Sent: Sunday, March 09, 2008 7:42 AM To: w.wegner at astro-kom.de Cc: u-boot-users at lists.sourceforge.net Subject: Re: [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. In message <47D3FE4E.8174.1501DA7@w.wegner.astro-kom.de> you wrote: > > > You can as well use the BDI2000 to program the standard U-Boot image > > to NOR flash, boot from NOR and then use U-Boot... > > the problem is that this is not suitable for production use. OK. Then you gotta spend some effort... > It would be a very elegant solution to have U-Boot run from RAM with > an environment in RAM to tell it what and where to flash... You could > set up the environment while loading the data and would have a flexible > flashing tool. To set up the environment you normally just load and run a script. > The only thing missing for this is a working CONFIG_MONITOR_IS_IN_RAM > as far as I can see. Actually this is not missing. All you need to do is to create a configuration which (1) has a modfied TEXT_BASE and (2) skips the memory initialization. But see http://www.denx.de/wiki/view/DULG/CanUBootBeConfiguredSuchThatItCanBeSta rtedInRAM Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de "At least they're __________EXPERIENCED incompetents" ------------------------------------------------------------------------ - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 14:12 ` w.wegner at astro-kom.de 2008-03-09 14:42 ` Wolfgang Denk @ 2008-03-09 18:15 ` Leonid 1 sibling, 0 replies; 9+ messages in thread From: Leonid @ 2008-03-09 18:15 UTC (permalink / raw) To: u-boot This option is not used by any ppc4xx cpu AFAIK. -----Original Message----- From: u-boot-users-bounces@lists.sourceforge.net [mailto:u-boot-users-bounces at lists.sourceforge.net] On Behalf Of w.wegner at astro-kom.de Sent: Sunday, March 09, 2008 7:12 AM To: Wolfgang Denk; u-boot-users at lists.sourceforge.net Subject: Re: [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. Hi, On 9 Mar 2008 at 15:05, Wolfgang Denk wrote: > In message <406A31B117F2734987636D6CCC93EE3C0252928B@ehost011-3.exch011.intermedia. net> you wrote: > > > > BDI2000 doesn't support NAND flash programming. However it's possible > > using BDI2000 to load some code to RAM and then run it. This code can do > > practically anything including NAND programming. Does somebody have such > > code for ppc440epx CPU? > > > > To that end I could use u-boot itself if I could make it run directly > > from RAM... just to program NAND. However it's not simple thing to do > > for ppc440... but may be somebody has done it? > > You can as well use the BDI2000 to program the standard U-Boot image > to NOR flash, boot from NOR and then use U-Boot... the problem is that this is not suitable for production use. It would be a very elegant solution to have U-Boot run from RAM with an environment in RAM to tell it what and where to flash... You could set up the environment while loading the data and would have a flexible flashing tool. The only thing missing for this is a working CONFIG_MONITOR_IS_IN_RAM as far as I can see. Regards, Wolfgang Wegner ------------------------------------------------------------------------ - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 13:51 [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx Leonid 2008-03-09 14:05 ` Wolfgang Denk @ 2008-03-09 17:28 ` Marco Cavallini 2008-03-09 18:03 ` Leonid 1 sibling, 1 reply; 9+ messages in thread From: Marco Cavallini @ 2008-03-09 17:28 UTC (permalink / raw) To: u-boot > BDI2000 doesn't support NAND flash programming. That's unfortunatley true. Just FYI there is another (cheaper) ICE debugger/programmer which supports NAND programming: Ronetix' PEEDI http://www.ronetix.at/peedi.html HTH /marco ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. 2008-03-09 17:28 ` Marco Cavallini @ 2008-03-09 18:03 ` Leonid 0 siblings, 0 replies; 9+ messages in thread From: Leonid @ 2008-03-09 18:03 UTC (permalink / raw) To: u-boot Doesn't look like this one supports ppc4xx - they have only Freescale in power PC list... -----Original Message----- From: Marco Cavallini [mailto:koansoftware at gmail.com] Sent: Sunday, March 09, 2008 10:28 AM To: Leonid Cc: u-boot-users at lists.sourceforge.net Subject: Re: [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx. > BDI2000 doesn't support NAND flash programming. That's unfortunatley true. Just FYI there is another (cheaper) ICE debugger/programmer which supports NAND programming: Ronetix' PEEDI http://www.ronetix.at/peedi.html HTH /marco ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2008-03-10 3:19 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-03-09 13:51 [U-Boot-Users] NAND flash programming via BDI2000 for ppc440epx Leonid 2008-03-09 14:05 ` Wolfgang Denk 2008-03-09 14:12 ` w.wegner at astro-kom.de 2008-03-09 14:42 ` Wolfgang Denk 2008-03-09 14:49 ` w.wegner at astro-kom.de 2008-03-10 3:19 ` Leonid 2008-03-09 18:15 ` Leonid 2008-03-09 17:28 ` Marco Cavallini 2008-03-09 18:03 ` Leonid
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.