您尚未登录。

楼主 # 2022-12-04 15:39:34

hd_xyz
会员
注册时间: 2022-12-04
已发帖子: 25
积分: 21

全志v3s无法从SPI NAND FLASH启动

请教V3S如何从W25N01GVZEIG启动,网上例程较多为spi nor flash ,如果使用nand flash需要如何配置?目前烧录到nand flash启动无反应,上电依然进入fel模式  请各位大佬赐教

离线

楼主 #1 2022-12-04 15:41:09

hd_xyz
会员
注册时间: 2022-12-04
已发帖子: 25
积分: 21

Re: 全志v3s无法从SPI NAND FLASH启动

下方为配置的环境变量

vi include/configs/sun8i.h
#define CONFIG_BOOTCOMMAND   "sf probe 0; "                           \
                             "sf read 0x41800000 0x100000 0x10000; "  \
                             "sf read 0x41000000 0x110000 0x400000; " \
                             "bootz 0x41000000 - 0x41800000"

#define CONFIG_BOOTARGS      "console=ttyS0,115200 earlyprintk panic=5 rootwait " \
                             "mtdparts=spi32766.0:1M(uboot)ro,64k(dtb)ro,4M(kernel)ro,-(rootfs) root=31:03 rw rootfstype=jffs2"

离线

#2 2022-12-04 16:45:12

哇酷小二
wechat微信:whycan_cn
所在地: 你猜
注册时间: 2020-04-22
已发帖子: 3,378
积分: 1902
个人网站

Re: 全志v3s无法从SPI NAND FLASH启动

buildroot-tiny200 (F1C100/200s) 开发包近期更新内容 * 已支持DVP摄像头 *,支持SPI NAND
https://whycan.com/t_5221.html



uboot 需要处理一下, 参考这个帖子.





离线

楼主 #3 2022-12-05 10:26:19

hd_xyz
会员
注册时间: 2022-12-04
已发帖子: 25
积分: 21

Re: 全志v3s无法从SPI NAND FLASH启动

哇酷小二 说:

buildroot-tiny200 (F1C100/200s) 开发包近期更新内容 * 已支持DVP摄像头 *,支持SPI NAND
https://whycan.com/t_5221.html



uboot 需要处理一下, 参考这个帖子.

非常感谢指教,看了帖子配置dts如下方(dts配置过多个方案均无果),makemenuconfig配置如下方  编译完成,用xfel将u-boot-sunxi-with-spl.bin 烧录到spi nand flash  (W25N01GVZEIG),
主板上电依旧没有日志输出,直接进入fel模式,有更换过两个主板,基本排除硬件问题,而且用w25q128也能正常启动打印出日志

方案1 dts修改以下内容,测试结果上电无反应,进入fel模式

&spi0 {
	status = "okay";

	spi-nand@0 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "spi-nand";
		reg = <0>;
		spi-max-frequency = <50000000>;
		//status = "disabled";

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			partition@0 {
				label = "u-boot";
				reg = <0x000000 0x80000>;
				read-only;
			};

			partition@1 {
				label = "dtb";
				reg = <0x80000 0x20000>;
				read-only;
			};

			partition@2 {
				label = "kernel";
				reg = <0x100000 0x700000>;
				read-only;
			};

			partition@3 {
				label = "rom";
				reg = <0x800000 0x4000000>;
				read-only;
			};

			partition@4 {
				label = "overlay";
				reg = <0x4800000 0x3000000>;
			};
		};
	};
};

方案2 dts修改以下内容,测试结果上电无反应,进入fel模式

// &spi0 {
//     pinctrl-0 = <&spi0_pins>;
//     pinctrl-names = "default";
//     status = "okay";
//     flash@0 {
//         #address-cells = <1>;
//         #size-cells = <1>;
//         compatible = "spi-nand";
//         reg = <0>;
//         spi-max-frequency = <24000000>;
// 	};
// };


make menuconfig配置如下

 → Device Drivers → SPI Support ─
  │ │           -y- Enable Driver Model for SPI drivers                                               
  │ │             [ ]   Altera SPI driver (NEW)                                                         
  │ │             [ ]   Cadence QSPI driver (NEW)                                                       
  │ │             [ ]   Designware SPI driver (NEW)                                                    
  │ │             [ ]   Samsung Exynos SPI driver (NEW)                                                
  │ │             [ ]   Freescale DSPI driver (NEW)                                                    
  │ │             [ ]   Intel ICH SPI driver (NEW)                                                     
  │ │             [ ]   Marvell Armada 3700 SPI driver (NEW)                                          
  │ │             [ ]   Rockchip SPI driver (NEW)                                                      
  │ │             [ ]   Sandbox SPI driver (NEW)                                                      
  │ │             [y]   Allwinner SPI driver                                                          
  │ │             [ ]   nVidia Tegra114 SPI driver (NEW)                                               
  │ │             [ ]   nVidia Tegra20 Serial Flash controller driver (NEW)                        
  │ │             [ ]   nVidia Tegra20/Tegra30 SLINK driver (NEW)  



→ Device Drivers → SPI Flash Support ─
  │ │             -y- Enable Driver Model for SPI flash                                              
  │ │             [ ]   Support sandbox SPI flash device (NEW)       
  │ │             [y] Legacy SPI Flash Interface support                                         
  │ │             [ ]   SPI flash Bank/Extended address register support (NEW)                        
  │ │             [ ]   Atmel SPI flash support (NEW)                                                 
  │ │             [ ]   EON SPI flash support (NEW)                                                  
  │ │             [ ]   GigaDevice SPI flash support (NEW)                                           
  │ │             [ ]   Macronix SPI flash support (NEW)                                              
  │ │             [ ]   Spansion SPI flash support (NEW)                                             
  │ │             [ ]   STMicro SPI flash support (NEW)                                              
  │ │             [ ]   SST SPI flash support (NEW)                                                  
  │ │             [y]   Winbond SPI flash support                                                   
  │ │             [y]   Use small 4096 B erase sectors (NEW)                                          
  │ │             [ ]   AT45xxx DataFlash support (NEW)  
                    [y]   SPI Flash MTD support 



→ Device Drivers → MTD Support ──
  │ │             [y] Enable Driver Model for MTD drivers                                               
  │ │             [ ]   Enable Driver Model for CFI Flash driver                                        
  │ │             [ ]   Altera Generic Quad SPI Controller (NEW)   

执行编译指令:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LicheePi_Zero_800x480LCD_defconfig
time make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- 2>&1 | tee build.log
编译完成执行读取spi nand可以正常反馈信息
xfel spinand
Found spi nand flash 'W25N01GV' with 134217728 bytes
执行写入指令 xfel spinand write 0 u-boot-sunxi-with-spl.bin
主板断电后重新上电依然进入fel模式,并没有日志打印输出 也就是uboot启动失败?配置过程具体是哪一步有问题,烦请指教 感谢感谢

离线

楼主 #4 2022-12-06 09:24:03

hd_xyz
会员
注册时间: 2022-12-04
已发帖子: 25
积分: 21

Re: 全志v3s无法从SPI NAND FLASH启动

大佬们麻烦解答下纳  没招了:( sad

离线

#5 2022-12-06 09:42:58

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 367
积分: 316

Re: 全志v3s无法从SPI NAND FLASH启动

直接进入fel肯定是boot0的格式或者位置或者校验方法不对,上面配置都是uboot配置都没到那步

离线

#6 2022-12-06 10:07:26

哇酷小二
wechat微信:whycan_cn
所在地: 你猜
注册时间: 2020-04-22
已发帖子: 3,378
积分: 1902
个人网站

Re: 全志v3s无法从SPI NAND FLASH启动

@hd_xyz

boot0*.bin 需要用脚本处理一下。





离线

楼主 #7 2022-12-06 10:20:40

hd_xyz
会员
注册时间: 2022-12-04
已发帖子: 25
积分: 21

Re: 全志v3s无法从SPI NAND FLASH启动

非常感谢解答,大佬能否再详细一点点呢,确实新手不太懂哎(V3V+spi nand flash  W25N01GVZEIG)
刚刚看到一篇有大佬说
“spl 不能运行的问题是, 4k(或2k) page 当 1k 来读,所以你的 boot0无法启动,所以你写spi nand注意这个问题就可以了。”
我尝试以下方法把u-boot-sunxi-with-spl.bin用1k打包到flashimg.bin   下载进nand falsh上电依然进入fel
dd if=/dev/zero of=flashimg.bin bs=1M count=16
dd if=u-boot-sunxi-with-spl.bin of=flashimg.bin bs=1K conv=notrunc
xfel spinand erase 0 16777216
xfel spinand write 0 flashimg.bin


具体是哪一步还需要配置呢,大佬能否明示  感激不尽  抱拳!

离线

#8 2022-12-06 10:46:26

哇酷小二
wechat微信:whycan_cn
所在地: 你猜
注册时间: 2020-04-22
已发帖子: 3,378
积分: 1902
个人网站

Re: 全志v3s无法从SPI NAND FLASH启动

@hd_xyz

buildroot-tiny200 (F1C100/200s) 开发包近期更新内容 * 已支持DVP摄像头 *,支持SPI NAND
https://whycan.com/t_5221.html

这里面有处理 boot0 的脚本,你参考一下。





离线

楼主 #9 2022-12-06 10:57:58

hd_xyz
会员
注册时间: 2022-12-04
已发帖子: 25
积分: 21

Re: 全志v3s无法从SPI NAND FLASH启动

哇酷小二 说:

@hd_xyz

buildroot-tiny200 (F1C100/200s) 开发包近期更新内容 * 已支持DVP摄像头 *,支持SPI NAND
https://whycan.com/t_5221.html

这里面有处理 boot0 的脚本,你参考一下。

好的好的,非常感谢 我研究一下

离线

#10 2023-09-17 12:51:00

march1993
会员
注册时间: 2023-05-19
已发帖子: 6
积分: 11

Re: 全志v3s无法从SPI NAND FLASH启动

是不是要把 spl.bin 和 u-boot.img 分开刷到不同的位置?
刷整个 u-boot-sunxi-with-spl.bin 的话 sram 因为只有 32kb 放不下?

离线

#11 2023-09-17 18:39:27

liefyuan
会员
注册时间: 2021-05-30
已发帖子: 69
积分: 95

Re: 全志v3s无法从SPI NAND FLASH启动

编译成功后,需要修改uboot输出文件使其可以在spinandflash上运行,此时,u-boot-sunxi-with-spl.bin还不能被直接下载到nand flash。因为V3s默认从spi nand flash加载page内容,是1个page加载1KB。我使用的是winbond的W25N01GVZEIG,它的page是2KB。
使用的脚步gen_sunxi_spinand_onlyboot_img.sh
脚本地址:https://github.com/bamkrs/openwrt/blob/dolphinpi-spinand/target/linux/sunxi/image/gen_sunxi_spinand_onlyboot_img.sh

#!/usr/bin/env bash
#
# Copyright (C) 2019 Benedikt-Alexander Mokroß (iCOGNIZE GmbH)
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

set -ex
[ $# -eq 4 ] || [ $# -eq 6 ] || {
    echo "SYNTAX: $0 <outputfile> <u-boot image> <nand page size> <nand block size in KiB> [<spl copies> <u-boot copies>]"
    echo "Given: $@"
    exit 1
}

OUTPUT="$1"
UBOOT="$2"
PAGESIZE="$3"
BLOCKSIZE="$4"
SPLCOPIES="0"
UBOOTCOPIES="0"

[ $# -eq 6 ] && {
	SPLCOPIES=$(($5 - 1))
	UBOOTCOPIES=$(($6 - 1))
}

# SPL-Size is an uint32 at 16 bytes offset contained in the SPL header
SPLSIZE=$(od -An -t u4 -j16 -N4 "$UBOOT" | xargs)
# The u-boot size is at offset 12 (4. 32-bit int) from the start of u-boot, which is padded 0x2000 bytes (observed) after the SPL 
UBOOTSIZE=$(od --endian=big -An -t u4 -j $(($SPLSIZE + 8192 + 12)) -N4 "$UBOOT" | xargs)

ALIGNCHECK=$(($PAGESIZE%1024))
if [ "$ALIGNCHECK" -ne "0" ]; then
	echo "Page-size is not 1k alignable and thus not supported by EGON"
	exit -1
fi

KPAGESIZE=$(($PAGESIZE/1024))
SPLBLOCKS=$(($SPLSIZE/1024))
LOOPSPLBLOCKS=$(($SPLBLOCKS-1))
SPLENTRYSTEPS=$(($KPAGESIZE * 32))
TOTALSPLSIZE=$((($SPLENTRYSTEPS * $SPLCOPIES) + $SPLBLOCKS))
NEXTPEB=$(($TOTALSPLSIZE + $BLOCKSIZE - ($TOTALSPLSIZE % $BLOCKSIZE)))
UBOOTPEBS=$((($UBOOTSIZE/1024) + $BLOCKSIZE - ($UBOOTSIZE/1024) % $BLOCKSIZE))

echo "$@" > $OUTPUT.imgmeta
echo "SPL-size $SPLSIZE">> $OUTPUT.imgmeta
echo "u-boot-size $UBOOTSIZE">> $OUTPUT.imgmeta
echo "block-size 1 KiB" >> $OUTPUT.imgmeta
echo "Page-size $KPAGESIZE KiB">> $OUTPUT.imgmeta
echo "PEB-size $BLOCKSIZE KiB">> $OUTPUT.imgmeta
echo "SPL-count $(($SPLCOPIES + 1))">> $OUTPUT.imgmeta
echo "u-boot-count $(($UBOOTCOPIES + 1))">> $OUTPUT.imgmeta
printf "SPL-entry-steps 0x%x\n" $(($SPLENTRYSTEPS*1024))>> $OUTPUT.imgmeta
echo "SPL-blocks $TOTALSPLSIZE">> $OUTPUT.imgmeta
echo "u-boot-block $UBOOTPEBS">> $OUTPUT.imgmeta
echo "first-u-boot $NEXTPEB">> $OUTPUT.imgmeta
echo "## Layout ##">> $OUTPUT.imgmeta

# The BROM of the SUNXI is only able to load 1k per page from SPI-NAND
# Thus, even if we have an 2k or 4k page-size, we have to chunk the SPL in 1k pieces
#
# Entry-Pages:
#          32,      64,      96,      128,      160,      192,      224
# 1k:  0x8000, 0x10000, 0x18000   0x20000,  0x28000,  0x30000,  0x38000
# 2k: 0x10000, 0x20000, 0x30000,  0x40000,  0x50000,  0x60000,  0x70000
# 4K: 0x20000, 0x40000, 0x60000,  0x80000,  0xA0000,  0xC0000,  0xE0000
# 8K: 0x40000, 0x80000, 0xC0000, 0x100000, 0x140000, 0x180000, 0x1C0000

echo "Generating 0-image for boot part of size $SPLSIZE ($SPLBLOCKS blocks)"
dd if="/dev/zero" of="$OUTPUT" bs=1024 count=$(($SPLBLOCKS * ($SPLCOPIES + 1)))

for splcopy in `seq 0 $SPLCOPIES`;
do
	echo "SPL Copy $splcopy"
	printf "spl-%u 0x%x\n" $splcopy $(($SPLENTRYSTEPS * $splcopy * 1024)) >> $OUTPUT.imgmeta
	echo "Copying block 0 to $(($SPLENTRYSTEPS * $splcopy))"
	dd if="$UBOOT" of="$OUTPUT" bs=1024 count=2 seek=$(($SPLENTRYSTEPS * $splcopy)) skip=0 conv=notrunc

	for from in `seq 1 $LOOPSPLBLOCKS`;
	do
		to=$((($SPLENTRYSTEPS * $splcopy) + ($from*$KPAGESIZE)))
		echo "Copying block $from to $to" 
		dd if="$UBOOT" of="$OUTPUT" bs=1024 count=1 seek=$to skip=$from conv=notrunc
	done

done

# it was observed, that u-boot is padded 0x2000 behind the spl. so add 0x2000 (= 8192 -> 8x1024k blocks) to the splsize to get the uboot-entry
for ubootcopy in `seq 0 $UBOOTCOPIES`;
do
	echo "Appending u-boot to chunked SPL at block $(($NEXTPEB + ($UBOOTPEBS * $ubootcopy))) (origin: $SPLBLOCKS)"
	dd if="$UBOOT" of="$OUTPUT" bs=1024 seek=$(($NEXTPEB + ($UBOOTPEBS * $ubootcopy))) skip=$(($SPLBLOCKS + 8)) conv=notrunc

	printf "u-boot-%u 0x%x\n" $ubootcopy $((($NEXTPEB + ($UBOOTPEBS * $ubootcopy)) * 1024)) >> $OUTPUT.imgmeta
done

运行命令:

./gen_sunxi_spinand_onlyboot_img.sh split.bin u-boot-sunxi-with-spl.bin 2048 128

1.其中split.bin代表生成的目标文件,u-boot-sunxi-with-spl.bin表示刚刚编译好的uboot文件,2048代表page大小,单位是byte,而128则代表block大小,单位是k byte。

下载修改后的uboot文件到spinandflash文件

$ sudo xfel spinand erase 0x0 0x100000
[sudo] password for liefyuan: 
100% [================================================] 1024.000 KB, 4.381 MB/s        
$ sudo xfel spinand write 0x0 split.bin
100% [================================================] 505.250 KB, 91.550 KB/s        

写入文件是nandflash的由0开始的地址空间。
上电信息

U-Boot SPL 2017.01-rc2 (Sep 16 2023 - 23:29:35)
DRAM: 64 MiB
Trying to boot from sunxi SPI

上电失败。。。。
折腾一大圈,还是失败,卡在上面的那个位置。
1.尝试了一下,uboot烧录到开始位置偏移8KB的位置,连这点打印信息都没有了。而是直接进入USB升级模式了。说明spinandflash真的是从0地址开始读取固件的。

最近编辑记录 liefyuan (2023-09-17 18:43:54)

离线

#12 2023-09-18 01:13:41

liefyuan
会员
注册时间: 2021-05-30
已发帖子: 69
积分: 95

Re: 全志v3s无法从SPI NAND FLASH启动

刚刚v3s spinand flash w25n01gvzeig全部调通:

所有的流程和工程源码都在这里了

【全志V3s】SPI NAND Flash 驱动开发

2023年9月18日01:13:34

最近编辑记录 liefyuan (2023-09-18 01:14:07)

离线

#13 2023-09-18 01:17:02

liefyuan
会员
注册时间: 2021-05-30
已发帖子: 69
积分: 95

Re: 全志v3s无法从SPI NAND FLASH启动

上电信息:

U-Boot SPL 2022.04 (Sep 18 2023 - 00:29:22 +0800)
DRAM: 64 MiB
Trying to boot from sunxi SPI-NAND
sunxi SPI-NAND: Found Winbond W25N01GVxxIG (efaa21)
sunxi SPI-NAND: Loading u-boot from 0x20000
sunxi SPI-NAND: u-boot hcrc OK!


U-Boot 2022.04 (Sep 18 2023 - 00:29:22 +0800) Allwinner Technology

CPU:   Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM:  64 MiB
Core:  23 devices, 11 uclasses, devicetree: separate
WDT:   Not starting watchdog@1c20ca0
MMC:   mmc@1c0f000: 0
Loading Environment from FAT... Card did not respond to voltage select! : -110
In:    serial@1c28000
Out:   serial@1c28000
Err:   serial@1c28000
Net:   No ethernet found.
Hit any key to stop autoboot:  0
Reading 131072 byte(s) (64 page(s)) at offset 0x00100000
Reading 5242880 byte(s) (2560 page(s)) at offset 0x00120000
Kernel image @ 0x41000000 [ 0x000000 - 0x4462a0 ]
## Flattened Device Tree blob at 41800000
   Booting using the fdt blob at 0x41800000
   Loading Device Tree to 42df9000, end 42dff021 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.2.0-licheepi-zero (liefyuan@ubuntu) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05)) #1 SMP Mon Sep 18 00:44:44 HKT 2023
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Lichee Pi Zero
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: Using PSCI v0.1 Function IDs from DT
[    0.000000] percpu: Embedded 16 pages/cpu s34508 r8192 d22836 u65536
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: console=ttyS0,115200 earlyprintk panic=5 rootwait mtdparts=spi0.0:1M(uboot)ro,128k(dtb)ro,5M(kernel)ro,-(rootfs) ubi.mtd=3 root=ubi0:rootfs rw rootfstype=ubifs
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 54004K/65536K available (7168K kernel code, 309K rwdata, 1748K rodata, 1024K init, 257K bss, 11532K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] GIC: GICv2 detected, but range too small and irqchip.gicv2_force_probe not set
[    0.000000] random: get_random_bytes called from start_kernel+0x300/0x48c with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000008] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000021] Switching to timer-based delay loop, resolution 41ns
[    0.000206] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000454] Console: colour dummy device 80x30
[    0.000509] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.000526] pid_max: default: 32768 minimum: 301
[    0.000692] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.000709] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.001518] CPU: Testing write buffer coherency: ok
[    0.002030] /cpus/cpu@0 missing clock-frequency property
[    0.002055] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.002816] Setting up static identity map for 0x40100000 - 0x40100060
[    0.003016] rcu: Hierarchical SRCU implementation.
[    0.003559] smp: Bringing up secondary CPUs ...
[    0.003580] smp: Brought up 1 node, 1 CPU
[    0.003590] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[    0.003596] CPU: All CPU(s) started in HYP mode.
[    0.003601] CPU: Virtualization extensions available.
[    0.004671] devtmpfs: initialized
[    0.008303] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.008602] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.008634] futex hash table entries: 256 (order: 2, 16384 bytes, linear)
[    0.008877] pinctrl core: initialized pinctrl subsystem
[    0.010023] NET: Registered protocol family 16
[    0.010536] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.011803] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.011822] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.039661] SCSI subsystem initialized
[    0.039833] usbcore: registered new interface driver usbfs
[    0.039923] usbcore: registered new interface driver hub
[    0.040037] usbcore: registered new device driver usb
[    0.040445] mc: Linux media interface: v0.10
[    0.040503] videodev: Linux video capture interface: v2.00
[    0.040717] Advanced Linux Sound Architecture Driver Initialized.
[    0.042525] clocksource: Switched to clocksource arch_sys_counter
[    0.054786] NET: Registered protocol family 2
[    0.055586] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[    0.055626] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.055650] TCP bind hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.055675] TCP: Hash tables configured (established 1024 bind 1024)
[    0.055821] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.055872] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.056162] NET: Registered protocol family 1
[    0.058007] Initialise system trusted keyrings
[    0.058392] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.094888] Key type asymmetric registered
[    0.094912] Asymmetric key parser 'x509' registered
[    0.095008] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 250)
[    0.095021] io scheduler mq-deadline registered
[    0.095029] io scheduler kyber registered
[    0.096072] sun4i-usb-phy 1c19400.phy: Couldn't request ID GPIO
[    0.099827] sun8i-v3s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[    0.100244] sun8i-v3s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pb not found, using dummy regulator
[    0.100971] pwm-backlight backlight: backlight supply power not found, using dummy regulator
[    0.207369] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[    0.210787] printk: console [ttyS0] disabled
[    0.231090] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 34, base_baud = 1500000) is a U6_16550A
[    0.777121] printk: console [ttyS0] enabled
[    0.783118] sun8i-v3s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pe not found, using dummy regulator
[    0.816395] panel-simple panel: panel supply power not found, using dummy regulator
[    0.825713] sun8i-v3s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pc not found, using dummy regulator
[    0.837258] spi-nand spi0.0: Winbond SPI NAND was found.
[    0.842655] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 64
[    0.851489] 4 fixed-partitions partitions found on MTD device spi0.0
[    0.857938] Creating 4 MTD partitions on "spi0.0":
[    0.862771] 0x000000000000-0x000000100000 : "uboot"
[    0.870563] 0x000000100000-0x000000120000 : "dtb"
[    0.876422] 0x000000120000-0x000000620000 : "kernel"
[    0.882823] random: fast init done
[    0.896001] 0x000000620000-0x000008000000 : "rootfs"
[    1.066934] random: crng init done
[    1.152983] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.159517] ehci-platform: EHCI generic platform driver
[    1.165120] ehci-platform 1c1a000.usb: EHCI Host Controller
[    1.170729] ehci-platform 1c1a000.usb: new USB bus registered, assigned bus number 1
[    1.178727] ehci-platform 1c1a000.usb: irq 26, io mem 0x01c1a000
[    1.212529] ehci-platform 1c1a000.usb: USB 2.0 started, EHCI 1.00
[    1.219697] hub 1-0:1.0: USB hub found
[    1.223666] hub 1-0:1.0: 1 port detected
[    1.228284] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.234607] ohci-platform: OHCI generic platform driver
[    1.240150] ohci-platform 1c1a400.usb: Generic Platform OHCI controller
[    1.246866] ohci-platform 1c1a400.usb: new USB bus registered, assigned bus number 2
[    1.254824] ohci-platform 1c1a400.usb: irq 27, io mem 0x01c1a400
[    1.327566] hub 2-0:1.0: USB hub found
[    1.331403] hub 2-0:1.0: 1 port detected
[    1.338704] usbcore: registered new interface driver usb-storage
[    1.346320] sun6i-rtc 1c20400.rtc: registered as rtc0
[    1.351383] sun6i-rtc 1c20400.rtc: RTC enabled
[    1.356127] i2c /dev entries driver
[    1.360994] input: ns2009_ts as /devices/platform/soc/1c2ac00.i2c/i2c-0/0-0048/input/input0
[    1.370661] sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    1.379378] sun8i-v3s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pf not found, using dummy regulator
[    1.415156] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB
[    1.422708] sun8i-v3s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pg not found, using dummy regulator
[    1.434060] usbcore: registered new interface driver usbhid
[    1.439636] usbhid: USB HID core driver
[    1.446245] Initializing XFRM netlink socket
[    1.450555] NET: Registered protocol family 17
[    1.455681] Registering SWP/SWPB emulation handler
[    1.461591] Loading compiled-in X.509 certificates
[    1.475524] sun8i-v3s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pe not found, using dummy regulator
[    1.488068] sun4i-drm display-engine: bound 1100000.mixer (ops 0xc0848700)
[    1.495646] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc08459fc)
[    1.503384] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    1.509990] [drm] No driver support for vblank timestamp query.
[    1.516976] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[    1.577198] Console: switching to colour frame buffer device 100x30
[    1.605684] sun4i-drm display-engine: fb0: sun4i-drmdrmfb frame buffer device
[    1.613687] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[    1.625210] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[    1.630978] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 3
[    1.640100] hub 3-0:1.0: USB hub found
[    1.644059] hub 3-0:1.0: 1 port detected
[    1.649336] ubi0: attaching mtd3
[    2.783395] ubi0: scanning is finished
[    2.802438] ubi0: attached mtd3 (name "rootfs", size 121 MiB)
[    2.808283] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    2.815175] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    2.821990] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    2.828962] ubi0: good PEBs: 975, bad PEBs: 0, corrupted PEBs: 0
[    2.834975] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
[    2.842198] ubi0: max/mean erase counter: 2/0, WL threshold: 4096, image sequence number: 2044279944
[    2.851331] ubi0: available PEBs: 0, total reserved PEBs: 975, PEBs reserved for bad PEB handling: 20
[    2.860632] sun6i-rtc 1c20400.rtc: setting system clock to 1970-01-01T02:04:24 UTC (7464)
[    2.869105] vcc3v0: disabling
[    2.872080] vcc3v3: disabling
[    2.875100] vcc5v0: disabling
[    2.878066] ALSA device list:
[    2.881030]   No soundcards found.
[    2.885035] ubi0: background thread "ubi_bgt0d" started, PID 93
[    2.893346] UBIFS (ubi0:0): Mounting in unauthenticated mode
[    2.901567] UBIFS (ubi0:0): background thread "ubifs_bgt0_0" started, PID 94
[    2.979892] UBIFS (ubi0:0): recovery needed
[    3.169975] UBIFS (ubi0:0): recovery completed
[    3.174670] UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "rootfs"
[    3.182063] UBIFS (ubi0:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[    3.192011] UBIFS (ubi0:0): FS size: 91549696 bytes (87 MiB, 721 LEBs), journal size 9023488 bytes (8 MiB, 72 LEBs)
[    3.202502] UBIFS (ubi0:0): reserved for root: 0 bytes (0 KiB)
[    3.208334] UBIFS (ubi0:0): media format: w4/r0 (latest is w5/r0), UUID 7831B145-D97D-464D-B67B-5D6C3C51E18C, small LPT model
[    3.221318] VFS: Mounted root (ubifs filesystem) on device 0:13.
[    3.231470] devtmpfs: mounted
[    3.235800] Freeing unused kernel memory: 1024K
[    3.240545] Run /sbin/init as init process
Starting logging: OK
Starting mdev...
/etc/init.d/S10mdev: line 21: can't create /proc/sys/kernel/hotplug: nonexistent directory
modprobe: can't change directory to '/lib/modules': No such file or directory
Initializing random number generator... done.
Starting network: OK

Welcome to Lichee Pi
Lichee login: root
# cd /
# cat /proc/mtd*
dev:    size   erasesize  name
mtd0: 00100000 00020000 "uboot"
mtd1: 00020000 00020000 "dtb"
mtd2: 00500000 00020000 "kernel"
mtd3: 079e0000 00020000 "rootfs"
#

离线

#14 2024-01-09 17:25:04

a32425262
会员
注册时间: 2018-05-06
已发帖子: 101
积分: 403

Re: 全志v3s无法从SPI NAND FLASH启动

@liefyuan
按照这个方法,液晶屏和背光都不行了

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn