一、
rom:初始化cpu,把uboot放到内存运行
uboot:初始化一部分硬件,把内核放到内存中运行
二、
1,矿机的uboot是放到flash里面,sd卡插进去,只是检测sd卡里面的有没有内核和操作系统然后把内核和iso
加载到内存里面去。若遇见官方的uboot话,应该会自动加载进去吧。
所以自己编译uboot并不会在bbb板子上运行,也不起作用。因为蚂蚁矿机的uboot已经运行到内存上了,uboot工作也完成了。
2,要想使用自己得uboot话,第一:更改启动顺序。第二,把蚂蚁矿机得flash给干掉。
三、自问自答
*为什么先启动矿机flash里面东西呢?
因为已经把启动顺序设置好了,矿机的uboot会先检测sd卡插上了么,若插上了话就查找sd卡上面的内核并且放到内存里。
*我们的目的是什么?
让矿机板子使用我们编译好的内核和uboot。
*为什么我们要编译uboot和内核?
因为板子eeprom被阉割掉了,我们要绕过eeprom。
*但是和eeprom有什么关系呢?
eeprom的地址必须在0x54到0x57之间,否则系统不会加载。科普一下:不管什么牌子的eeprom芯片,它们的地址都是一样的,高4位是1010,低3位对应着芯片的A2,A1,A0这3个引脚的电平(有的芯片只有A1和A0),所以通过外接电路就能改变eeprom的地址。也就是说eeprom的地址只可能是0x50到0x57这8种,如果A2保持高电平,那么就只有0x54到0x57这4个地址可用了(这就是SRM(BBB官方参考手册)里eeprom电路中把A2接高电平的原