修改Uboot 中arch/arm/lib/board.c 文件
1、添加函数LogintImage如下代码:
/****************************************************************************/
void LogintImage(void)
{
run_command("sf probe 0",1);
run_command("sf read 81000000 c0000 30000",1);
setenv("jpeg_addr","0x81000000");
setenv("jpeg_size","0x6384");
setenv("vobuf","0x84000000");
if(0 == load_jpeg())
{
jpeg_decode();
}
//set_vobg(1, 0x000000);
start_vo(1,1,0); // start_vo[dev, type, sync], -
start_gx(1,0x84000000,1440,0,0,720,576);
}
2、在start_armboot函数中加入 调用函数LogintImage语句
void start_armboot (void)
{
.......
LogintImage();
/* main_loop() can return to retry autoboot, if so just run it again. */
for (;;) {
main_loop ();
}
......
}
然后图片是放在flash的某个固定地址中的。
本人把图片放在flash的地址c0000 大小30000
具体地址要和run_command("sf read 81000000 c0000 30000",1);上的地址对应。
烧写图片到Flash的步骤如下
mw.b 82000000 ff 30000 按回车
tftp 0x82000000 hisi.jpg 按回车
sf probe 0 按回车
sf erase c0000 30000
sf write 82000000 c0000 30000 按回车