Skip to content

启动失败的请进来!(Boot failure? Get help here!) #166

Description

@laipeng668

如果自己编译的固件启动失败,请先使用下面四个云编译项目的固件进行测试!
⚠️包含WiFi必须至少预留54MB的q6_region内存区域,所以256MB的机器启动不了是正常的!)
如果不需要WIFI,是可以正常使用带满血NSS驱动的无WIFI固件的!

If a self-compiled firmware fails to boot, first test with firmware from the following four ​​cloud build projects​​!
(⚠️Devices equipped with WiFi must reserve at least 54MB of the q6_region memory area, so it's normal for 256MB machines to fail to boot!)
If WiFi is unnecessary, ​​full-featured NSS drivers​​ in ​​WiFi-disabled firmware​​ will work normally.

https://github.com/breeze303/openwrt-ci/releases
https://github.com/ZqinKing/wrt_release/releases
https://github.com/laipeng668/openwrt-ci-roc/releases
https://github.com/VIKINGYFY/OpenWRT-CI/releases

对于喜欢折腾的朋友,真要玩256MB内存的机器,还可以调整NSS驱动q6_region内存区域预留大小。
在源码中查询自己机器的DTS,ipq6018.dtsi默认预留85MB,ipq6018-512m.dtsi默认预留55MB,我已经把大部分机器设置成ipq6018-512m.dtsi了(找不到ipq6018.dtsi怎么办?请手动把自己机器DTS里面的ipq6018.dtsi改成ipq6018-512m.dtsi即可,例如京东云太乙ipq6010-re-cs-07)。

For enthusiasts who enjoy tinkering with 256MB RAM devices, you can adjust the reserved memory size of the NSS driver's q6_region area.
​​Locate your device's DTS file​​:
The default ipq6018.dtsi reserves ​​85MB​​.
The ipq6018-512m.dtsi reserves ​​55MB​​ (already applied to most devices).
​​If ipq6018.dtsi is missing​​: Manually replace references to ipq6018.dtsi with ipq6018-512m.dtsi in your device's DTS.
Example: For the ​​JD Cloud Taiyiipq6010-re-cs-07, modify its DTS accordingly.

预留16MB(Reserve 16MB):

sed -i 's/reg = <0x0 0x4ab00000 0x0 0x[0-9a-f]\+>/reg = <0x0 0x4ab00000 0x0 0x01000000>/' target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-512m.dtsi

预留32MB(Reserve 32MB):

sed -i 's/reg = <0x0 0x4ab00000 0x0 0x[0-9a-f]\+>/reg = <0x0 0x4ab00000 0x0 0x02000000>/' target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-512m.dtsi

预留64MB(Reserve 64MB):

sed -i 's/reg = <0x0 0x4ab00000 0x0 0x[0-9a-f]\+>/reg = <0x0 0x4ab00000 0x0 0x04000000>/' target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-512m.dtsi

预留96MB(Reserve 96MB):

sed -i 's/reg = <0x0 0x4ab00000 0x0 0x[0-9a-f]\+>/reg = <0x0 0x4ab00000 0x0 0x06000000>/' target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-512m.dtsi

标准启动日志的格式示例如下(ipq6018.dtsi预留 85MB):
A typical startup log looks like this(ipq6018.dtsiReserve 85MB):

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x51af8014]
[    0.000000] Linux version 6.12.39 (runner@pkrvm4h0tjkhlvh) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 14.3.0 r0-815367b) 14.3.0, GNU ld (GNU Binutils) 2.42) #0 SMP PREEMPT Mon Jul 21 12:23:10 2025
[    0.000000] Machine model: JDCloud RE-CS-02
[    0.000000] OF: reserved mem: 0x0000000000060000..0x0000000000065fff (24 KiB) nomap non-reusable memory@60000
[    0.000000] OF: reserved mem: 0x0000000040000000..0x0000000040ffffff (16384 KiB) nomap non-reusable memory@40000000
[    0.000000] OF: reserved mem: 0x000000004a100000..0x000000004a4fffff (4096 KiB) nomap non-reusable bootloader@4a100000
[    0.000000] OF: reserved mem: 0x000000004a600000..0x000000004a9fffff (4096 KiB) nomap non-reusable memory@4a600000
[    0.000000] OF: reserved mem: 0x000000004aa00000..0x000000004aafffff (1024 KiB) nomap non-reusable memory@4aa00000
[    0.000000] OF: reserved mem: 0x000000004ab00000..0x000000004fffffff (87040 KiB) nomap non-reusable memory@4ab00000
[    0.000000] OF: reserved mem: 0x0000000050b00000..0x0000000050bfffff (1024 KiB) nomap non-reusable q6_etr_dump@50b00000
[    0.000000] OF: reserved mem: 0x0000000050c00000..0x0000000050cfffff (1024 KiB) nomap non-reusable m3_dump@50c00000
[    0.000000] OF: reserved mem: 0x0000000050d00000..0x0000000050dfffff (1024 KiB) nomap non-reusable ramoops@50d00000
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x000000007fffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x0000000040ffffff]
[    0.000000]   node   0: [mem 0x0000000041000000-0x000000004a0fffff]
[    0.000000]   node   0: [mem 0x000000004a100000-0x000000004a4fffff]
[    0.000000]   node   0: [mem 0x000000004a500000-0x000000004a5fffff]
[    0.000000]   node   0: [mem 0x000000004a600000-0x000000004fffffff]
[    0.000000]   node   0: [mem 0x0000000050000000-0x0000000050afffff]
[    0.000000]   node   0: [mem 0x0000000050b00000-0x0000000050dfffff]
[    0.000000]   node   0: [mem 0x0000000050e00000-0x000000007fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000007fffffff]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions