Hi Team,
I have a custom board based on T2081, with 128Mbytes IFC NOR FLASH address as boot media. We would like to configure the processor to fetch the RCW from 0xE8000000. But when we flash RCW at 0xE800_0000 we are not seeing any activities on the CS and HRESET is held LOW (Board is under reset) after power ON. So, we flashed the RCW at 0xE000_0000 and with this, we are seeing CS is toggling multiple times and HRESET is high after Power ON (Board is out of reset). Even though we flashed u-boot at 0xE7F4_0000 location, we are not seeing any boot prints on the console.
Following are my queries regarding IFC nor boot,
1. How Processor know the address to fetch RCW from IFC NOR flash? 0xE000_0000 or 0xE800_0000
2. In TRM it is mentioned that after reset, core will start execution at 0xFFFF_FFFFC and then jump to the NOR flash address. How is this configuration controlled?
3. In debug mode all the LAW registers and DDR configs are done by the TCL script (In my case, RAM TCL script). But in flash boot mode, how these configurations are taken care?
Thanks,
Noufal
Solved! Go to Solution.
Please refer to T2081QDS_init.c in source folder.
The default NOR memory map is
0xE8000000 0xEFFFFFFF
1. The system will fetch RCW at the beginning of NOR flash, and u-boot should be deployed at the end of NOR flash.
2. This is controlled by hardware, the processor will fetch the instruction from the end of NOR flash.
3. Please use NOR flash configuration 0xE8000000- 0xEFFFFFFF in the tcl CW initialization file.
The NOR flash memory map should be 0xE8000000 to 0xEFFFFFFF, 0xE000_0000 is not valid effective address at all.
If you have customized DDR controller initialization parameters, you could use T2081QDS_init_core.tcl.
We often suggest the customer use T2081QDS_init_sram.tcl to avoid DDR controller initialization during flash programming.
Got it.
Another thing which is confusing is,
Configuration we added in the `T2081QDS_init_sram.tcl ` file is only used during debug mode or configuration from the tcl file will be written into the memory(ROM or any) inside processor and used during NOR flash boot ?
Thanks,
Noufal
T2081QDS_init_sram.tcl is only used in debug mode or to do flash programming.
Please refer to T2081QDS_init.c in source folder.
The default NOR memory map is
0xE8000000 0xEFFFFFFF
Please refer to the section "Local Access Windows Setup" in T2081QDS_init.c.
Okay, If you select SRAM version of configuration, file 'T2081QDS_init.c' is in the disabled mode (refer attached image). So do we need to modify this file for custom changes?
Also by default this file has TLB configuration for NOR as follows. (refer attached image).
Yes, no need to modify T2081QDS_init.c, you could use the default TLB and LAW configurations.
Understood. In any case if we want to modify the default TLB and LAW configs for NOR flash boot, how can we do the same?
For e.g.
Instead of 128MB NOR flash with T2081, If I want to use 256MB NOR flash, I think TLB and LAW configs has to be modified. So How can I do that?
Thanks,
Noufal
If you are using 256M NOR flash, please modify the memory map
form 0xE0000000 to 0xEFFFFFFF.