高通8155 SD卡启动流程
时间: 2023-07-11 11:21:55 浏览: 331
高通8155芯片支持从SD卡启动。其启动流程如下:
1. 首先需要将SD卡插入设备中,并且确保SD卡已经被格式化为FAT32格式。
2. 然后,将设备连接到电源并打开电源。此时,芯片会自动检测SD卡是否插入,并检测SD卡中是否存在可用的启动映像。
3. 如果SD卡中存在可用的启动映像,则芯片会将该映像加载到内存中。此时,芯片会将CPU控制权转移到启动映像中的引导加载程序(Bootloader)。
4. 引导加载程序会执行一些初始化操作,然后加载操作系统内核。
5. 操作系统内核加载完成后,芯片会将CPU控制权转移到内核中,操作系统开始运行。
需要注意的是,SD卡启动流程需要确保SD卡中存在可用的启动映像,并且需要确保SD卡中的启动映像与设备的硬件兼容。如果SD卡中的启动映像无法与设备兼容,则设备可能无法正常启动。
相关问题
高通8155在启动过程中使/dev/block/bootdevice链接SD卡
高通8155系列芯片在启动过程中默认将`/dev/block/bootdevice`链接到`/dev/block/sda14`,这是因为这个芯片默认使用UFS存储设备,而不是SD卡。
如果需要将`/dev/block/bootdevice`链接到SD卡,需要进行以下操作:
1. 在设备树(device tree)中找到UFS设备节点,并注释掉或删除该节点。例如:
```
&ufs {
status = "disabled";
};
```
2. 在设备树中添加SD卡设备节点,例如:
```
&mmc {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&sdhc_pins>;
bus-width = <8>;
vmmc-supply = <&pm8998_l17>;
vqmmc-supply = <&pm8998_l16>;
max-frequency = <200000000>;
non-removable;
num-slots = <1>;
mmc-slot@0 {
reg = <0>;
bus-width = <8>;
cd-gpios = <&tlmm 3 0>;
disable-wp;
};
};
```
其中,`&mmc`是SD卡设备节点的名称,`mmc-slot@0`是SD卡的插槽号,`cd-gpios`是SD卡的CD引脚,`disable-wp`表示SD卡不支持写保护。
3. 找到`dts`文件中的`chosen`节点,并将其中的`bootargs`属性修改为:
```
bootargs = "console=ttyMSM0,115200n8 root=/dev/mmcblk0p1 rw rootwait";
```
其中,`console=ttyMSM0,115200n8`表示串口输出,`root=/dev/mmcblk0p1`表示将SD卡的第一个分区作为根文件系统挂载,`rw`表示挂载为可读写,`rootwait`表示等待根文件系统就绪。
4. 保存修改后的`dts`文件,并编译为`dtb`文件,将其放置在系统镜像中相应的位置。
5. 刷入修改后的系统镜像,重启设备即可。
注意:修改设备树需要具有一定的技术水平,不正确的修改可能会导致系统无法启动或出现其他问题。因此,在进行修改前请备份原文件,并确保修改的内容正确无误。
高通8155单安卓平台 SD卡启动过程中怎样让/dev/block/bootdevice/by-name下的内容链接到SD卡
对于高通8155单安卓平台,您可以使用以下步骤将 `/dev/block/bootdevice/by-name` 下的内容链接到 SD 卡:
1. 首先,您需要在设备上安装 BusyBox 工具。您可以通过在 Google Play 商店中搜索 "BusyBox" 并安装它来完成此操作。
2. 将 SD 卡插入设备中并启动设备。确保您的设备已经启动并且已正确识别 SD 卡。
3. 打开终端应用程序并输入以下命令,以获取设备上的 root 权限:
```
su
```
4. 然后,您可以使用以下命令将 `/dev/block/bootdevice/by-name` 下的内容链接到 SD 卡:
```
busybox ln -s /dev/block/bootdevice/by-name /mnt/media_rw/sdcard/by-name
```
这将在 SD 卡上创建一个名为 `by-name` 的符号链接,指向 `/dev/block/bootdevice/by-name` 目录下的内容。请注意,这里的 `/mnt/media_rw/sdcard` 是常见的 SD 卡挂载点,但您也可以使用其他挂载点。
5. 最后,您可以通过运行以下命令来测试符号链接是否正确工作:
```
ls -l /mnt/media_rw/sdcard/by-name
```
如果一切正常,您应该能够看到 `/mnt/media_rw/sdcard/by-name` 指向 `/dev/block/bootdevice/by-name` 目录下的内容。
请注意,这些步骤可能因设备型号和 Android 版本而异。如果您遇到任何问题,请谨慎操作,并在遇到困难时寻求专业帮助。
阅读全文