DDR地址更改配置(把原來的20開頭的改到30開頭處)
在u-boot-samsung-dev\include\configs\smdkv210single.h 中改起始地址
256M就是0000 0000 ~ 0FFF FFFF ,所以 chip_mask 就是0FFF FFFF的取反,即(F000 0000),所以要改成 0x30F01323
繼續改虛擬對映
在 \u-boot-samsung-dev\board\samsung\smdkc110\smdkc110.c
再改一下記憶體對映表
在start.S(\u-boot-samsung-dev\cpu\s5pc11x\start.S)中找到 _mmu_table_base
在 \u-boot-samsung-dev\board\samsung\smdkc110\lowlevel_init.S中找到 mmu_table
make distclean → make smdkv210single_config → make 最後得到 u-boot.bin
燒錄: 在 /samsung_uboot/u-boot-samsung-dev/sd_fusing 目錄中
make clean → make → ./sd_fusing.sh /dev/sdb
在SI中搜索 "unrecognised EXT_CSD structure" 得到一個結果
因為列印顯示是 "version 7" 所以簡單地把資料改大點試下
在"\u-boot-samsung-dev\drivers\mmc\mmc.c" 中
可以修改 find_mmc_device 函式的引數來顯示SD卡的容量
如果使用SD卡(mmc = find_mmc_device(1)
SD/MMC:這個也會顯示正常, 這說明SD的 version 不大於 5 ,而上面顯示iNand 的 version 是 7
實測可行
小結:需要用到的檔案:
1 smdkv210single.h (需要修改)
2 start.S (需要檢視)
3 smdkc110.c (需要修改)
4 lowlevel_init.S (需要修改)
5 mmc.c (需要修改)
以上修改後再放到ubuntu中編譯生成u-boot.bin