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

omapl138在用ubl从spiflash 搬运 uboot到内存mddr中时,会漏掉开头的一些信息,

请问,刚接触omapL138几个月,对底层不是很熟,一块是开发板,一块时自己做的板子;

对比,自己做的板子ubl从spiflash   搬运 uboot到内存mddr中时,会漏掉开头的一些uboot的相关信息,如uboot的起始地址等,但rbl是能从flash搬运ubl的,这时怎回事啊,有没有可能在烧写时的握手出了问题?

对spiwriter.out有些疑问,这个烧写程序是怎样实现和spiflash握手烧写的?

Gary Wu:

对于spi writer,可参考其源代码,其中有针对spi flash的读写函数,在load spiwrite.out之后,会提示输入要少些的类型,是armubl还是u-boot,选择之后,再输入文件所在的路径,之后就可以烧写了

Tony Tang:

RBL(ROM bootloader)搬AIS格式UBL(User Bootloader)格式,跳转到UBL运行,此时芯片的启动过程完成。

UBL运行,从约定好的位置按照约定好的格式搬过UBOOT,跳转到UBOOT运行。

用SPIwriter要选烧UBL,还烧UBOOT。

其实UBL可以不用,将编译好的uboot(不是uboot.bin),通AISgen.exe工具转换成AIS格式文件,直接烧转换后的AIS格式的uboot即可直接启动。

注:要在AISgen里将PLL,DDR,PINMUX, PSC等配置上。

zhihua xie zhihua xie:

请问bootloader搞好了没,我也正要做OMAP-L138 的bootloader.

RBL–>bootloader–>RTOS/DSPBIOS.

是这的,我们要做一个BOOTLOADER,支持从串口下载更新ARM 端的RTOS,或DSPBIOS。有自启动模式也有更新模式等功能。

1. RBL从NOR FLASH读取BOOTLOADER加载到相应的内存里去。因为是AIS格式,所以RBL会把代BOOTLOADER的代码由加载域COPY去运行域。但是,BOOTLOADER加载RTOS的时候,怎么样把RTOS加载到DDR的相应的位置?

 RTOS的代码,有部分是放在RAM,有部分是放在DDR里。烧写进FLASH的是BIN文件。如何实现分散式加域?

( a section –>shareram1, b setction –>shareram2, c section –> DDR1…..)?

Tony Tang:

回复 zhihua xie zhihua xie:

你可以SDK里PSP目录下提供的UBL源码,流程序是RBL->UBL,UBL加载Uboot。当然UBL的功能简单,用户可以丰富其功能。

Gary Wu:

王工,你好!

uboot的起始地址等开头信息在flash-writer代码的main.c里面,请查看详细代码

yucui wang:

回复 Gary Wu:

问题已经解决,谢谢各位的帮助,只是一直忙,没来的及查看。

其实在ubl中,对spiflash的读取时,会判断其回复的是否为高电平0xff,ti的开发板默认是带上拉电阻,即高阻状态,ubl通过这个判断会确定对spiflash按照16地址读取;一旦少了这个上拉电阻,就变成8位进行读取了,搬运uboot自然会出问题的,所以是自己做的板子出了点问题而已。

Jockey:

回复 yucui wang:

各位大虾,我最近在弄AM1808 , 是从 SPI_flash 启动 Uboot 的,当时 我的内核文件和文件系统文件 怎么烧进 SPI_flash 呢? 在是网上查的资料都是 烧进 NAND Flash的

Tony Tang:

回复 Jockey:

参考:

processors.wiki.ti.com/…/GSG:_OMAP-L138_DVEVM_Additional_Procedures

Jockey:

回复 Tony Tang:

看了下 感觉还是不怎么全

可以 给推荐些 从 Uboot 到 烧写 内核 文件系统 比较全的资料吗?

谢了

我是个初学者…

赞(0)
未经允许不得转载:TI中文支持网 » omapl138在用ubl从spiflash 搬运 uboot到内存mddr中时,会漏掉开头的一些信息,
分享到: 更多 (0)