发现一个问题,在imx51的板子有两个SD卡,在kernel里注册平台设备的时候,两个SD卡注册的顺序对ANDROID启动有影响
平台设备注册代码如下:
mxc_register_device(&mxcsdhc2_device, &mmc2_data); //SD2
mxc_register_device(&mxcsdhc1_device, &mmc1_data); //SD1
如果从从SD2启动,SD1也插入卡,但SD1里的没有烧录ANDROID系统,这时如果将上面的平台设备注册顺序调整一个,SD1注册在前,SD2在后,那就无法启动ANDROID了,
报错:init: cannot find 'system/bin/sh' 等
分析发现,平台设备的注册顺序会影响到相应的mmc块设备号,比如平台设备注册顺序是:SD2, SD1,且两个卡都有插入的话,
那共相应的块设备号分别为
SD 2 ===> mmcblk0 ,
SD1 ===> mmcblk 1
像上面说的:如果我还是从SD2启动,但平台注册顺序改成SD1 ,SD2,且两个卡都有插入的话,
那共相应的块设备号分别为
SD1 ===> mmcblk0 ,
SD2 ===> mmcblk 1
这里就会无法启动ANDROID,报上面错误?
请教在ANDROID里面什么地方设置?