
Hi Christian,
On Mon, Jun 6, 2011 at 10:52 AM, Christian Riesch christian.riesch@omicron.at wrote:
Hi Ben, Thanks again for your help!
My pleasure, sorry I can't help more : I think It's the case that we have incompatible HW.
On Mon, Jun 6, 2011 at 3:11 PM, Ben Gardiner bengardiner@nanometrics.ca wrote:
I am using flash and boot utils 2.31 as well. Mono version is 2.4, I had to rebuild the utilities to make them run with mono on my machine. I modified the flash and boot utils' makefiles to build for the AM1808 target only (otherwise I would have to install the DSP compiler).
There's another difference -- I have tried rebuilding also but I always gave up when 'timake' was not available. How are you working around this? You are perhaps rebuilding in windows with CCSv3?
No, I build in Linux:
- Download OMAP-L138_FlashAndBootUtils_2_31.tar.gz from
https://sourceforge.net/projects/dvflashutils/files
tar xvfz OMAP-L138_FlashAndBootUtils_2_31.tar.gz cd OMAP-L138_FlashAndBootUtils_2_31
- Apply the attached patch
patch -p1 <flasham1808.patch
- Build
cd OMAP-L138/GNU/ make clean make
Thanks for the patch. I applied and built as you suggested to use mono 2.4; now the only difference between our setups is the SOM (which has a difference SoC on it -- yours is AM1808 mine is OMAPL138) and baseboard.
Following the steps, I get no serial activity when u-boot is built from "4fff329 nand_boot_fsl_nfc.c: make "nfc" a "static const" pointer."
I did notice that I can erase/flash using either -targetType AM1808 or OMAPL138 and get serial console output by using either the OMAPL138 or AM1808 UBL's; all of the following commands result in serial output from the board.
mono /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/sfh_OMAP-L138.exe -targetType AM1808 -p /dev/ttyS0 -flash_noubl /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/ubl/ubl_AM1808_SPI_MEM.bin
mono /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/sfh_OMAP-L138.exe -targetType OMAPL138 -p /dev/ttyS0 -flash_noubl /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/ubl/ubl_AM1808_SPI_MEM.bin
mono /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/sfh_OMAP-L138.exe -targetType AM1808 -p /dev/ttyS0 -flash_noubl /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/ubl/ubl_OMAPL138_SPI_MEM.bin
mono /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/sfh_OMAP-L138.exe -targetType OMAPL138 -p /dev/ttyS0 -flash_noubl /media/unixdata/src/OMAP-L138_FlashAndBootUtils_2_31/OMAP-L138/GNU/ubl/ubl_OMAPL138_SPI_MEM.bin
So it appears there is no incompatibility introduced by the AM1808 / OMAPL138 variant in flashing.
It seems that there is something that your AM1808 RBL is performing which is not being performed by my OMAPL138 here. This could be due to a misinterpreted AIS command maybe. Whatever the case, the UBL that is prebuilt with the flash and boot utilities seems to be doing the right setup.
I think that the AIS script header is not critical; I noticed that the arm ubl's are all being built with the simple -uart.ini :
$grep -r " -ini " CCS/UBL_ARM/ CCS/UBL_ARM/UBL_NAND.pjt:FinalBuildCmd=....\GNU\AISUtils\HexAIS_OMAP-L138.exe -ini ....\GNU\AISUtils\OMAP-L138-uart.ini -o $(Proj_dir)\UBL_NAND.ais $(Proj_dir)\NAND\UBL_NAND.out;Run=Always Binary file CCS/UBL_ARM/UBL_SPI_MEM.paf2 matches CCS/UBL_ARM/UBL_SPI_MEM.pjt:FinalBuildCmd=....\GNU\AISUtils\HexAIS_OMAP-L138.exe -ini ....\GNU\AISUtils\OMAP-L138-uart.ini -o $(Proj_dir)\UBL_SPI_MEM.ais $(Proj_dir)\SPI_MEM\UBL_SPI_MEM.out;Run=Always Binary file CCS/UBL_ARM/UBL_NAND.paf2 matches CCS/UBL_ARM/UBL_NOR.pjt:FinalBuildCmd=....\GNU\AISUtils\HexAIS_OMAP-L138.exe -ini ....\GNU\AISUtils\OMAP-L138-uart.ini -o $(Proj_dir)\UBL_NOR.ais $(Proj_dir)\NOR\UBL_NOR.out;Run=Always Binary file CCS/UBL_ARM/UBL_NOR.paf2 matches CCS/UBL_ARM/cc_build_Debug.log:....\GNU\AISUtils\HexAIS_OMAP-L138.exe -ini ....\GNU\AISUtils\OMAP-L138-uart.ini -o C:\cat_flashutils\scripts\OMAP-L138_FlashAndBootUtils_2_31\OMAP-L138\CCS\UBL_ARM\UBL_NOR.ais C:\cat_flashutils\scripts\OMAP-L138_FlashAndBootUtils_2_31\OMAP-L138\CCS\UBL_ARM\NOR\UBL_NOR.out
for reference the contents of OMAP-L138-uart.ini: --- ; General settings that can be overwritten in the host code ; that calls the AISGen library. [General]
; Can be 8 or 16 - used in emifa busWidth=8
; SPIMASTER,I2CMASTER,EMIFA,NAND,EMAC,UART,PCI,HPI,USB,MMC_SD,VLYNQ,RAW BootMode=UART
; 8,16,24 - used for SPI,I2C ;AddrWidth=8
; NO_CRC,SECTION_CRC,SINGLE_CRC crcCheckType=NO_CRC ---
Since the AIS generated does no setup relevant to the platform it seems that it should be possible to stick all the UBL setup into u-boot and sign it with simple AIS using the above ini.
Best Regards, Ben Gardiner
--- Nanometrics Inc. http://www.nanometrics.ca