TI中文支持网
TI专业的中文技术问题搜集分享网站

C6748 如何确定应用程序在FLASH中的位置

硬件: C6748 +NOR FLASH

我将应用程序+UBL 用AISgen软件生成AIS文件,然后用仿真器烧写入NOR FLASH。

我想设置或者确定,应用程序烧写到NOR FLASH的位置,UBL在NOR FLASH的位置,有什么方法吗?

Tony Tang:

user6310626我将应用程序+UBL 用AISgen软件生成AIS文件,

合成一个AIS文件?

user6310626我想设置或者确定,应用程序烧写到NOR FLASH的位置,UBL在NOR FLASH的位置,有什么方法吗?

UBL是在flash的开始的。

应用程序是你的UBL去搬的。自己在UBL与flash writer里约定好一样就行了。

user6310626:

回复 Tony Tang:

嗯,是的,如果应用程序+UBL 用AISgen软件生成AIS文件,合成一个文件。

应用程序在FLASH中的位置还有办法确认吗?

user6310626:

回复 Tony Tang:

懂了,那最好的方法就是:UBL生成AIS文件,应用程序不生成AIS文件。
然后将这两个文件通过NORWrite工程烧到FLASH相应位置。

这样就确定了位置,以后只更新应用程序,就不会有任何问题。

Tony Tang:

回复 user6310626:

是的., 应用程序用boot table格式就可以了. 这个贴子里关于boot的附件里的说明第五,六,七页, 关于如何生成boot table.

user6310626:

回复 Tony Tang:

好的,感谢回答。

user6310626:

回复 Tony Tang:

在UBL_NOR工程中,norboot.h定义了

typedef struct _NORBOOT_HEADER_{ Uint32  magicNum; Uint32  entryPoint;  Uint32  appSize; Uint32  ldAddress; /* Starting RAM address where image is to copied – XIP Mode */}NORBOOT_HeaderObj,*NORBOOT_HeaderHandle;

ubl.h中定义了

#define UBL_MAGIC_BINARY_BOOT       (0x55424CBBu)

在norboot.c 中,hNorHeader将BLOCK1中信息赋值给hNorHeader。

  // Assume header is at start of Block 1 of NOR device (Block 0 has   // this UBL)  hNorHeader = (NORBOOT_HeaderHandle) (blkAddress + blkSize);

我的问题是,根据BOOT TABLE格式:

ENTRY POINT

SECTION 1 SIZE

SECTION1 DEST

那么hNorHeader得不到UBL_MAGIC_BINARY_BOOT 这个信息,而且SIZE也只是SECTION1的SIZE,不是整个APPSIZE.

可以帮忙看看吗

user6310626:

回复 Tony Tang:

在UBL_NOR工程中,norboot.h定义了
typedef struct _NORBOOT_HEADER_
{Uint32magicNum;Uint32entryPoint; Uint32appSize;Uint32ldAddress; /* Starting RAM address where image is to copied – XIP Mode */
}
NORBOOT_HeaderObj,*NORBOOT_HeaderHandle;
ubl.h中定义了
#define UBL_MAGIC_BINARY_BOOT(0x55424CBBu)

在norboot.c 中,hNorHeader将BLOCK1中信息赋值给hNorHeader。// Assume header is at start of Block 1 of NOR device (Block 0 has // this UBL)hNorHeader = (NORBOOT_HeaderHandle) (blkAddress + blkSize);

我的问题是,根据BOOT TABLE格式:
ENTRY POINT
SECTION 1 SIZE
SECTION1 DEST
那么hNorHeader得不到UBL_MAGIC_BINARY_BOOT 这个信息,而且SIZE也只是SECTION1的SIZE,不是整个APPSIZE.

可以帮忙看看吗

Tony Tang:

回复 user6310626:

自己改一下不就行了。

user6310626:

回复 Tony Tang:

我不是这个意思。

这个是OMAP-L138_FLASHAndBootUtils_2_40里面提供的UBL中的NOR_WRITE工程,

按道理应该是正确的,他这种格式的写法是依据哪种格式写的?

赞(0)
未经允许不得转载:TI中文支持网 » C6748 如何确定应用程序在FLASH中的位置
分享到: 更多 (0)