I am using CCS3.3. In this version of CCS, Flash Burn Utility is not available.
In my my system I am having DM6467 and a nor flash.
I do not have OS running on this board so I guess I will not be able to burn the flash via UART.
What is the way to burn the flash in this case ?
Regards,
Onkar
Hi Juan,
I wanted to ask another question. The external switch that is being used to select the boot modes are connected via 4K7 resistors to 3.3V in our circuit. Does the value of this pullup/pull-down resistor affect the manner in which DSP processor recognize the boot mode?
If yes, what will be a more appropriate value? Something around 1K or 2.2K?
Hi Juan & Bernie,
Thanks for your help.
I have finally managed to get the BOOTME message from DM6467 in UART boot mode.
Now, I am planning to boot via a NOR flash on my board. Assuming that my NOR flash is compatible with the one on DVEVM6446, here are the steps which I am thinking to follow-
1. Grab a copy of u-boot for DM6467.
2. Replace the NAND flash file and its corresponding functions and accessories with NOR flash file and functions from the u-boot for DM6446.
3. Recompile the U-boot and use it for bootloading Linux kernel image.
I just wanted to confirm whether these steps would ensure successful bootloading or whether I shall have to undergo any more steps.
Secondly, is there a source code available directly for U-Boot with NOR flash for DM6467?
Thanks and Regards,
patki.onkar:I have finally managed to get the BOOTME message from DM6467 in UART boot mode.
I am glad to hear you got it working, but I am curious what you had to do to fix it?
patki.onkar:I just wanted to confirm whether these steps would ensure successful bootloading or whether I shall have to undergo any more steps.
This sounds about right, though it may be worth seeing if you can get the existing NAND based U-Boot to boot out of NOR for starters, I expect it will function up until the point you need to actually write something back to the NOR (i.e. saveenv and memory operations will fail if they try to write to a non existant NAND).
patki.onkar:Secondly, is there a source code available directly for U-Boot with NOR flash for DM6467?
I have not come across one, but I suspect the code from the DM644x will port fairly easily to the DM6467.
Hi..
Thanks for reply.
The NAND FLASH used on EVM6467 is 128MBytes while NOR FLASH we have used is 16MB- similar to EVM6446 board.
So will I require corresponding modifications is paging/memory block mapping etc?
patki.onkar: The NAND FLASH used on EVM6467 is 128MBytes while NOR FLASH we have used is 16MB- similar to EVM6446 board. So will I require corresponding modifications is paging/memory block mapping etc?
Certainly, the accesses to NOR flash are entirely different from the NAND flash, from a reading perspective the NOR just shows up as a flat memory space in your memory map so no block issues are present for reads, the blocks come into play when you write/erase the NOR, and that will certainly be different from the implementation used on the DM6467's NAND.
Hi Bernie,
I tried loading bootloader available for DM646X- which is for nand flash with command---
sfh_DM646x.exe -norflash -v ubl_dm646x_297.bin uboot.bin
With this command, it shows erasing of NOR is done, but this hangs at the time of writing into NOR flash.
So I think I have to modify DM646x uboot for NORFLASH using the procedure mentioned previously.
Onkar,
There should be only one line you need to change in u-boot and rebuild it for NOR flash. It has been a while since I have done this, but there should be a file under
.../uboot/include/configs/davinci.h (davinci.h is used for DM644x, make sure there is not a different file for DM6467)
edit the following line in this file (should be near the top of the file)
#define CFG_ENV_IS_IN_FLASH 1
When this variable is set to 1, u-boot will be built for NOR flash, when this line is commented out (or set to 0), it will build for NAND flash.
Thanks for reply. We are trying the same thing and trying to build the makefile in linux environment, but it is giving many errors such as "no such file or directory" for the header files included.
So we need make any changes in folder structure while building the make file ?
no changes in folder structure should be necessary. To build u-boot, you need to go to u-boot root directory and type
host % make mrproper
host % make davinci_config (should be different for DM6467)
host % make
You should be able to build u-boot without any source code modifications; then change that one line of code as suggested in my previous post (may not be necessary as u-boot default is NOR flash).
Hi,
We are working on same. Just wanted to confirm the version of u-boot.
We are working with u-boot-1.2.0. Will it do or we need to go for some another/latest version of u-boot?
I followed the steps suggested by you in the previous post, and was successful in generating u-boot.bin for the NOR flash with DM6467.
Then in command prompt, I typed the following commands using DM646X Boot Flash utility
sfh_dm646x.exe -norerase
The NOR Flash got erased successfully.
Then I typed
sfh_dm646x.exe -norflash -v ubl_dm646x_nor.bin u-boot.bin (where u-boot.bin) is the newly built file)
The operation proceeds successfully till the steps
########################################################################################
----------------------------------------------------- TI Serial Flasher Host Program for DM646x (C) 2009, Texas Instruments, Inc. Ver. 1.50-----------------------------------------------------Platform is Windows.Flashing NOR with ubl_dm646x_nor.bin and u-boot.bin.Attempting to connect to device COM1...Press any key to end this program at any time.Waiting for the DM646x... Target: BOOTMEBOOTME commmand received. Returning ACK and header...ACK command sent. Waiting for BEGIN command... Target: BEGINBEGIN commmand received. Sending CRC table... 100% [ ] CRC table sent....Waiting for DONE... Target: DONEDONE received. Sending the UBL... 100% [ ] UBL sent.... Target: DONEDONE received. UBL was accepted.UBL transmitted successfully.Waiting for SFT on the DM646x... Target: Starting UART Boot... Target: BOOTUBLBOOTUBL commmand received. Returning CMD and command...CMD value sent. Waiting for DONE... Target: DONEDONE received. Command was accepted.Sending the UBL imageWaiting for SENDIMG sequence... Target: CFI Query...passed. Target: NOR Initialization: Target: Command Set: AMD Target: Manufacturer: AMD Target: Size: 0x00000010 MB Target: SENDIMGSENDIMG received. Returning ACK and header for image data...ACK command sent. Waiting for BEGIN command... Target: BEGINBEGIN commmand received. 100% [ ] Image data sent...Waiting for DONE... Target: DONEDONE received. All bytes of image data received... Target: Erasing the NOR Flash Target: Erased through 0x42020000 Target: Erase Completed Target: Writing UBL to NOR flash Target: Writing the NOR Flash
And after this step, NOTHING
The program just hangs until I abort it.
Am I going wrong somewhere or whether I am missing any steps?
Thanks,
I solved the problem, seems my switch settings were incorrect.
I am facing another problem .
AFter burning the NOR flash with u-boot, I get the following series of messages
----------------------------------------------------- TI Serial Flasher Host Program for DM646x (C) 2009, Texas Instruments, Inc. Ver. 1.50-----------------------------------------------------Platform is Windows.Flashing NOR with ubl_DM646x_nor.bin and u-boot.bin.Attempting to connect to device COM1...Press any key to end this program at any time.Waiting for the DM646x... Target: BOOTMEBOOTME commmand received. Returning ACK and header...ACK command sent. Waiting for BEGIN command... Target: BEGINBEGIN commmand received. Sending CRC table... 100% [ ] CRC table sent....Waiting for DONE... Target: DONEDONE received. Sending the UBL... 100% [ ] UBL sent.... Target: DONEDONE received. UBL was accepted.UBL transmitted successfully.Waiting for SFT on the DM646x... Target: Starting UART Boot... Target: BOOTUBLBOOTUBL commmand received. Returning CMD and command...CMD value sent. Waiting for DONE... Target: DONEDONE received. Command was accepted.Sending the UBL imageWaiting for SENDIMG sequence... Target: CFI Query...passed. Target: NOR Initialization: Target: Command Set: AMD Target: Manufacturer: AMD Target: Size: 0x00000010 MB Target: SENDIMGSENDIMG received. Returning ACK and header for image data...ACK command sent. Waiting for BEGIN command... Target: BEGINBEGIN commmand received. 100% [ ] Image data sent...Waiting for DONE... Target: DONEDONE received. All bytes of image data received... Target: Erasing the NOR Flash Target: Erased through 0x42020000 Target: Erase Completed Target: Writing UBL to NOR flash Target: Writing the NOR Flash Target: NOR Write OK through 0x42002C08. Target: DONESending the Application imageWaiting for SENDIMG sequence... Target: SENDIMGSENDIMG received. Returning ACK and header for image data...ACK command sent. Waiting for BEGIN command... Target: BEGINBEGIN commmand received. 100% [ ] Image data sent...Waiting for DONE... Target: DONEDONE received. All bytes of image data received... Target: Erasing the NOR Flash Target: Erased through 0x42040000 Target: Erase Completed Target: Writing APP to NOR flash Target: Writing the NOR Flash Target: NOR Write OK through 0x42020010. Target: Writing the NOR Flash Target: NOR Write OK through 0x42028000. Target: NOR Write OK through 0x42030000. Target: NOR Write OK through 0x42038000. Target: NOR Write OK through 0x420383F0. Target: DONE Target: DONEOperation completed successfully.
I am however skeptical about the addresses in BOLD above.
AFter shifting to NOR Boot mode, I get BOOTME message continuously on Hyperterminal as if no u-boot has been loaded.
Can someone point out whether I am missing something?
One more thing, I am also trying to use serial boot loader utility and still not able to load kernel image in DDR. So I guess I am going somewhere wrong in using this utility.
Steps I am following are as follows
1.
slh_dm646x.exe -load2DDR UBL_DM646x_NOR.bin2.slh_dm646x.exe -load2DDR -startADDR 0x80200000 u-boot.bin3.slh_dm646x.exe -load2DDR -startADDR 0x81000000 uImage---------------- in this whole process my jumper settings are 1000- UART MODEAfter doing this I just get BOOTME on hyperterminal. Am I going wrong somewhere (may be in jumper setting/ sequence of instructions/ addr etc) ?Regards,Onkar
Adding to the previous post, after burning the NOR flash, I am getting the message as "Operation completed successfully". Then when I power-cycle the board, I get BOOTME message continuously on HyperTerminal. ( while still being in UART mode )
When I change to NOR boot mode, the BOOTME messages stop, but I dont get any additional data on hyperterminal indicating that U-Boot is getting loaded.
When I check Chip Select, R/W signal and data lines on NOR Flash, I get data signals on CRO, indicating that data is being read from NOR flash, (on RESET). But I dont get any data on hyperterminal.
Is this a problem related to UBL header or U-Boot address? Or is it something else?
I am using SPANSION S29GL128P90TFIR2 NOR FLash.
ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". TI AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY TI. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM TI.
Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.