
Wolfgang Denk wrote:
In message 006d01c63871$b26c26d0$9e01120a@bilisim.local you wrote:
if CFG_NO_FLASH is defined, as you said, means there are no flash memories, where do initial boot instructions located?
For example in RAM. Think of a PCI card which is plugged in a host system, where the host runs some software to upload some code into the PCI card's memory which then gets executed. See the PN62 board for such a configuration.
There are several other methods to load U-Boot into RAM - for example by using an initial bootstrap loader as used on some system to boot from NAND flash or dataflash.
Best regards,
Wolfgang Denk
...and that RAM has to be connected to CS0 (typ) if it is truly "no ROM" (no flash).
* If it is SDRAM, someone other than u-boot must initialize it so that it is functional when reset is released.
* Someone other than u-boot must load u-boot (or other program) into the RAM while the processor is held in reset, and then release reset.
* The processor doesn't care if it is booting out of RAM or ROM or core memory. It fetches instructions and executes them. It always does the same thing on release of reset - you cannot change it other than what the chip manufacturer provided for. It is your responsibility to have instructions in the right place and available when you release reset (e.g. for the 603e core lowboot: 0x00000100, highboot: 0xFFFFF100).
Disclaimer: I believe there are systems out there that use CFG_NO_FLASH but actually have a minimal boot memory (ROM/flash/eeprom) that initialize SDRAM and then spin until the host downloads the program (e.g. u-boot) and says "go". The above discussion doesn't apply to them.
gvb