1\在調試ok6410 nandflash啟動uboot時,需要添加調試信息,導致uboot大于256k
2需要修改下面幾個地方
參考資料
在uboot中可以添加文字菜單,但是不夠美觀。
利用photoshop制作一張jpg菜單圖片,在ubuntu中使用jpeg2bmp.sh將jpg圖片轉換成bmp格式
uboot/tools/bmp_logo.c編譯生成的工具bmp_logo可以根據bmp格式圖片生成bmp_logo.h,圖片的信息存儲在數組當中。當圖片的分配率越大,轉換成的數組越大,導致最后編譯的uboot.bin越大。當uboot.bin超過242K時,下載uboot到flash后不可啟動。
解決辦法:
在uboot/cpu/s3c64xx/start.S中,有這樣一段話,可以知道以下代碼是將uboot拷貝到ram中執行,并且只拷貝了2個block
copy_from_nand:
mov r10, lr
mov r9, r0
ldr sp, _TEXT_PHY_BASE
sub sp, sp, #12
mov fp, #0
mov r9, #0x1000
bl copy_uboot_to_ram //開始調用C函數
1、copy_uboot_to_ram函數在uboot/cpu/s3c64xx/Nand_cp.c中,定義如下
int copy_uboot_to_ram (void)
{
..............
..............
..............
return nandll_read_blocks(CFG_PHY_UBOOT_BASE, 0x3c000, large_block);
}
注意0x3c000(240K)就是實際拷貝的大小,修改此數值即可。
2、修改uboot/cpu/s3c64xx/Nand_cp.c中nandll_read_blocks()函數與0x3c000有關的所有數值,并改成相應大小。
上一篇:記錄tiny6410 使用linux-2.6.28.6內核遇到starting kernel...的問題
下一篇:記錄Ok6410 sd 啟動uboot
推薦閱讀最新更新時間:2025-03-27 00:08


設計資源 培訓 開發板 精華推薦
- STM32一文通(6) 外部中斷
- ESP32玩轉MicroPython(一) 燒入固件, 初識
- ESP32玩轉MicroPython(二) 連接WIFI網絡 webperl文件傳輸
- ESP32玩轉MicroPython(三) 延時、計時 和GPIO操作
- 玩轉 ESP32 + Arduino (一) 開發環境搭建
- 玩轉 ESP32 + Arduino (四) 電容按鍵 霍爾傳感器 外部中斷 延時 脈沖檢測
- 玩轉 ESP32 + Arduino (五) platformIO引入類庫 自開發庫 串口打印字符串
- 玩轉 ESP32 + Arduino (六) 硬件定時器, IIC, SPI
- 玩轉 ESP32 + Arduino (八) U8G2驅動OLED
- 使用 Analog Devices 的 LTC1553CG 的參考設計
- 矩陣按鍵、獨立按鍵模塊
- 使用 LTC4162IUFD-LAD 1-8 節、3.2A 降壓型開關電池充電器和 PowerPath 的典型應用
- REF198 低壓差開爾文連接電壓基準的典型應用電路
- 650 V 400 A 六單元 汽車合格 IGBT模塊
- AM30EW-2415SZ 15V單路輸出DC/DC轉換器的典型應用
- MIC2076A-2YM雙通道熱插拔配電開關典型應用
- EVAL-AD5750EBZ,評估 AD5750 工業電流/電壓輸出驅動器的評估板
- TCR5SB45U、200mA、4.5V 輸出電壓 CMOS 低壓降穩壓器的典型應用
- 【訓練營】調光氛圍晚安燈