CPU: Allwinner F Series (SUNIV)
Model: Lichee Pi Nano
DRAM: 32 MiB
MMC: SUNXI SD/MMC: 0
SF: Detected w25q64cv with page size 256 Bytes, erase size 4 KiB, total 8 MiB
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 0
SF: Detected w25q64cv with page size 256 Bytes, erase size 4 KiB, total 8 MiB
device 0 offset 0x60000, size 0x4000
SF: 16384 bytes @ 0x60000 Read: OK
device 0 offset 0x64000, size 0x400000
SF: 4194304 bytes @ 0x64000 Read: OK
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 816fb000, end 816fff26 ... OK
Starting kernel ...
U-Boot SPL 2018.01 (Oct 25 2019 - 19:18:22)
DRAM: 32 MiB
Trying to boot from MMC1
Card did not respond to voltage select!
mmc_init: -95, time 22
spl: mmc init failed with error: -95
Trying to boot from sunxi SPI
走到starting kernel一直不断重启,什么情况
离线
这种情况一般是 zImage 不全, 或者损坏。
离线
一般是zImage自解压出问题了, 我记得坛里面有一个关于 earlyprintk 的帖子, 可以打印出错误信息, 我找找 ...
离线
解决 V3s Linux 显示 starting kernel ... 就没有然后的问题 (earlyprintk): https://whycan.cn/t_2402.html
离线
1 Uboot配置 boot arguments中加入earlyprintk
console=ttyS0, console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2 earlyprintk
2 Kernel配置
[//*] Kernel debugging
[//*] Kernel low-level debugging functions (read help!)
Kernel low-level debugging port (Kernel low-level debugging via 8250 UART) --->
(0x01c28000) Physical base address of debug UART
(0xf1c28000) Virtual base address of debug UART
[//*] Early printk
重新编译uboot kenel烧写,开始在starting kernel,不自动重启了
U-Boot SPL 2018.01 (Oct 26 2019 - 10:51:41)
DRAM: 32 MiB
Trying to boot from MMC1
Card did not respond to voltage select!
mmc_init: -95, time 22
spl: mmc init failed with error: -95
Trying to boot from sunxi SPI
U-Boot 2018.01 (Oct 26 2019 - 10:51:41 +0800) Allwinner Technology
CPU: Allwinner F Series (SUNIV)
Model: Lichee Pi Nano
DRAM: 32 MiB
MMC: SUNXI SD/MMC: 0
SF: Detected w25q64cv with page size 256 Bytes, erase size 4 KiB, total 8 MiB
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 0
SF: Detected w25q64cv with page size 256 Bytes, erase size 4 KiB, total 8 MiB
device 0 offset 0x60000, size 0x4000
SF: 16384 bytes @ 0x60000 Read: OK
device 0 offset 0x64000, size 0x400000
SF: 4194304 bytes @ 0x64000 Read: OK
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 816fb000, end 816fff26 ... OK
Starting kernel ...
没有earlyprintk的log出来,是不是哪里要改代码
离线
烧录是按照设备树里分区来烧录的
sudo sunxi-fel -p spiflash-write 0x64000 arch/arm/boot/zImage
partitions
{
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0
{
label = "u-boot";
reg = <0x000000 0x58000>;
read-only;
};
partition@60000
{
label = "dtb";
reg = <0x60000 0x4000>;
read-only;
};
partition@64000
{
label = "kernel";
reg = <0x64000 0x400000>;
read-only;
};
partition@464000
{
label = "rootfs";
reg = <0x464000 0x390000>;
};
};
有成功进入过kernel,后来烧录几次不知道怎么就不行了。这个跟文件系统有没有关系
离线
没有超,3.8 MB (3,788,224 字节)
离线
写入ZImage大小 3.8 MB (3,788,224 字节),0x39CDBF
读取大小 4MB, 0x400000
通过比较 0 - 0x39CDBF 内容全部相同,读取后面的内容 0x39CDC0 - 0x3939CFFF 内容全部为 0XFF,0x39D000 - 0x3FFFFF有数据
离线
我的flash是8M的,不匹配
sunxi-fel 有没有擦除整片flash的指令
离线
烧 https://whycan.cn/t_2689.html 这个固件,可以成功启动
U-Boot SPL 2018.01-05684-gb7dcb96-dirty (Jul 21 2019 - 21:23:17)
DRAM: 32 MiB
SPL: Unsupported Boot Device!
Trying to boot from sunxi SPI
U-Boot 2018.01-05684-gb7dcb96-dirty (Jul 21 2019 - 21:23:17 -0400) Allwinner Technology
CPU: Allwinner F Series (SUNIV)
Model: Whycan Pi Nano
DRAM: 32 MiB
Using default environment
Setting up a 800x480 lcd console (overscan 0x0)
In: serial@1c25000
Out: serial@1c25000
Err: serial@1c25000
Hit any key to stop autoboot: 0
SF: Detected w25q64cv with page size 256 Bytes, erase size 4 KiB, total 8 MiB
device 0 offset 0x60000, size 0x10000
SF: 65536 bytes @ 0x60000 Read: OK
Error: Bad gzipped data
There is no valid bmp file at the given address
device 0 offset 0x100000, size 0x4000
SF: 16384 bytes @ 0x100000 Read: OK
device 0 offset 0x110000, size 0x400000
SF: 4194304 bytes @ 0x110000 Read: OK
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 80ea4000, end 80ea8f2a ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.15.0-licheepi-nano+ (root@ubuntu) (gcc version 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4] (Linaro GCC 7.4-2019.02)) #41 Sun Jul 21 21:25:38 EDT 2019
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] OF: fdt: Machine model: Lichee Pi Nano
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] random: fast init done
离线
烧 https://whycan.cn/t_2689.html 这个固件,可以成功启动,然后只替换我自己的kernel ,无法启动了
离线
替换dtb和kernel,正常启动。替换u-boot,无法启动。查找uboot的问题,后来发现boot arguments写成了
console=ttyS0 console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2 earlyprintk
多了一句console=ttyS0,去掉后成功启动。
不过earlyprintk 还是没有出来,不知道是哪里漏掉没有修改导致出不来
离线