您尚未登录。

楼主 #1 2018-12-25 19:22:41

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

U-Boot 2018.01-05679-g013ca45-dirty (Dec 25 2018 - 17:56:19 +0800) Allwinner Technology                     
                                                                                                            
CPU:   Allwinner F Series (SUNIV)                                                                           
Model: Lichee Pi Nano                                                                                       
DRAM:  32 MiB                                                                                               
MMC:   SUNXI SD/MMC: 0                                                                                      
SF: Detected w25q128bv with page size 256 Bytes, erase size 4 KiB, total 16 MiB                             
*** Warning - bad CRC, using default environment                                                            
                                                                                                            
Setting up a 480x272 lcd console (overscan 0x0)                                                             
In:    serial@1c25000                                                                                       
Out:   serial@1c25000                                                                                       
Err:   serial@1c25000                                                                                       
Net:   No ethernet found.                                                                                   
starting USB...                                                                                             
No controllers found                                                                                        
Hit any key to stop autoboot:  0                                                                            
SF: Detected w25q128bv with page size 256 Bytes, erase size 4 KiB, total 16 MiB                             
device 0 offset 0x100000, size 0x4000                                                                       
SF: 16384 bytes @ 0x100000 Read: OK                                                                         
device 0 offset 0x110000, size 0x400000                                                                     
SF: 4194304 bytes @ 0x110000 Read: OK  
(大概过了7-8分钟后,输出了如下信息)
                                                                     
## Flattened Device Tree blob at 80c00000                                                                   
   Booting using the fdt blob at 0x80c00000                                                                 
   Loading Device Tree to 80e5f000, end 80e63f26 ... OK                                                     
                                                                                                            
Starting kernel ...                                                                                         
                                                                                                            
[    0.000000] Booting Linux on physical CPU 0x0                                                            
[    0.000000] Linux version 4.19.0-rc3-licheepi-nano+ (ziotlab@ziotlab-VirtualBox) (gcc version 7.2.1 20178
[    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: get_random_bytes called from start_kernel+0x84/0x3f8 with crng_init=0                
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 8128                                  
[    0.000000] Kernel command line: console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype2
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)                                
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)                                  
[    0.000000] Memory: 24788K/32768K available (4096K kernel code, 202K rwdata, 1144K rodata, 1024K init, 2)
[    0.000000] Virtual kernel memory layout:                                                                
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)                                            
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)                                            
[    0.000000]     vmalloc : 0xc2800000 - 0xff800000   ( 976 MB)                                            
[    0.000000]     lowmem  : 0xc0000000 - 0xc2000000   (  32 MB)                                            
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)                                            
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)                                            
[    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (5088 kB)                                            
[    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)                                            
[    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 203 kB)                                            
[    0.000000]        .bss : 0x(ptrval) - 0x(ptrval)   ( 217 kB)                                            
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1                                   
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16                                              
[    0.000048] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns                    
[    0.000129] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns     
[    0.000669] Console: colour dummy device 80x30                                                           
[    0.000775] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)                                      
[    0.070260] pid_max: default: 32768 minimum: 301                                                         
[    0.070723] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)                                  
[    0.070764] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)                             
[    0.072295] CPU: Testing write buffer coherency: ok                                                      
[    0.074274] Setting up static identity map for 0x80100000 - 0x80100058                                   
[    0.079313] devtmpfs: initialized                                                                        
[    0.085313] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000s
[    0.085378] futex hash table entries: 256 (order: -1, 3072 bytes)                                        
[    0.085703] pinctrl core: initialized pinctrl subsystem                                                  
[    0.088303] DMA: preallocated 256 KiB pool for atomic coherent allocations                               
[    0.090466] cpuidle: using governor menu                                                                 
[    0.111533] SCSI subsystem initialized                                                                   
[    0.111922] usbcore: registered new interface driver usbfs                                               
[    0.112073] usbcore: registered new interface driver hub                                                 
[    0.112262] usbcore: registered new device driver usb                                                    
[    0.112694] pps_core: LinuxPPS API ver. 1 registered                                                     
[    0.112720] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>     
[    0.113398] clocksource: Switched to clocksource timer                                                   
[    0.144183] NetWinder Floating Point Emulator V0.97 (double precision)                                   
[    0.146163] Initialise system trusted keyrings                                                           
[    0.146751] workingset: timestamp_bits=30 max_order=13 bucket_order=0                                    
[    0.159908] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.                                         
[    0.176320] Key type asymmetric registered                                                               
[    0.176357] Asymmetric key parser 'x509' registered                                                      
[    0.176562] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)                         
[    0.176596] io scheduler noop registered                                                                 
[    0.176614] io scheduler deadline registered                                                             
[    0.177126] io scheduler cfq registered (default)                                                        
[    0.177156] io scheduler mq-deadline registered                                                          
[    0.177174] io scheduler kyber registered                                                                
[    0.179029] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO                                          
[    0.190318] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver                                  
[    0.377290] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled                                     
[    0.384424] console [ttyS0] disabled                                                                     
[    0.404674] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A          
[    0.794492] console [ttyS0] enabled                                                                      
[    0.820436] 1c25400.serial: ttyS1 at MMIO 0x1c25400 (irq = 24, base_baud = 6250000) is a 16550A          
[    0.837024] panel-simple panel: panel supply power not found, using dummy regulator                      
[    0.845037] panel-simple panel: Linked as a consumer to regulator.0                                      
[    0.852981] SCSI Media Changer driver v0.25                                                              
[    0.860967] m25p80 spi0.0: w25q128 (16384 Kbytes)                                                        
[    0.866888] 4 fixed-partitions partitions found on MTD device spi0.0                                     
[    0.873252] Creating 4 MTD partitions on "spi0.0":                                                       
[    0.878189] 0x000000000000-0x000000100000 : "u-boot"                                                     
[    0.886149] 0x000000100000-0x000000110000 : "dtb"                                                        
[    0.893664] 0x000000110000-0x000000510000 : "kernel"                                                     
[    0.901341] 0x000000510000-0x000001000000 : "rootfs"                                                     
[    0.910611] i2c /dev entries driver                                                                      
[    0.916427] sunxi-mmc 1c0f000.mmc: Linked as a consumer to regulator.1                                   
[    0.950000] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB                              
[    0.959279] usbcore: registered new interface driver usbhid                                              
[    0.964987] usbhid: USB HID core driver                                                                  
[    0.972456] Loading compiled-in X.509 certificates                                                       
[    0.989440] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dr
[    1.000462] usb_phy_generic usb_phy_generic.0.auto: Linked as a consumer to regulator.0                  
[    1.009519] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver                                            
[    1.015456] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1                    
[    1.026053] hub 1-0:1.0: USB hub found                                                                   
[    1.030112] hub 1-0:1.0: 1 port detected                                                                 
[    1.040733] random: fast init done                                                                       
[    1.192914] random: crng init done                                                                       
[    4.979599] jffs2: Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes             
[    4.988130] jffs2: empty_blocks 0, bad_blocks 0, c->nr_blocks 175                                        
[    4.994582] VFS: Cannot open root device "mtdblock3" or unknown-block(31,3): error -5                    
[    5.002397] Please append a correct "root=" boot option; here are the available partitions:              
[    5.010826] 1f00            1024 mtdblock0                                                               
[    5.010837]  (driver?)                                                                                   
[    5.017436] 1f01              64 mtdblock1                                                               
[    5.017445]  (driver?)                                                                                   
[    5.024027] 1f02            4096 mtdblock2                                                               
[    5.024035]  (driver?)                                                                                   
[    5.030575] 1f03           11200 mtdblock3                                                               
[    5.030581]  (driver?)                                                                                   
[    5.037160] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,3)              
[    5.045498] CPU: 0 PID: 1 Comm: swapper Not tainted 4.19.0-rc3-licheepi-nano+ #4                         
[    5.052870] Hardware name: Allwinner suniv Family                                                        
[    5.057655] [<c010e918>] (unwind_backtrace) from [<c010bb80>] (show_stack+0x10/0x14)                     
[    5.065410] [<c010bb80>] (show_stack) from [<c0117440>] (panic+0xc8/0x244)                               
[    5.072309] [<c0117440>] (panic) from [<c0701234>] (mount_block_root+0x1ec/0x2e4)                        
[    5.079799] [<c0701234>] (mount_block_root) from [<c07014d8>] (prepare_namespace+0x128/0x188)            
[    5.088323] [<c07014d8>] (prepare_namespace) from [<c0700e70>] (kernel_init_freeable+0x17c/0x1c4)        
[    5.097187] [<c0700e70>] (kernel_init_freeable) from [<c0484b0c>] (kernel_init+0x8/0x110)                
[    5.105359] [<c0484b0c>] (kernel_init) from [<c01010e0>] (ret_from_fork+0x14/0x34)                       
[    5.112907] Exception stack(0xc1831fb0 to 0xc1831ff8)                                                    
[    5.117957] 1fa0:                                     00000000 00000000 00000000 00000000                
[    5.126124] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000                
[    5.134287] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000                                  
[    5.140898] Rebooting in 5 seconds..                                                                     
[   11.120129] Reboot failed -- System halted

离线

#2 2018-12-25 19:26:02

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

大概过了7-8分钟后 这个有点不正常,

后面根文件系统出错,应该是 驱动一个选项没勾上,导致没有产生 /dev/mtdblock* 设备.





离线

楼主 #3 2018-12-25 19:43:38

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

我还没做镜像,就是想先第一步跑下kernel,看下是否真的支持w25q128

离线

#4 2018-12-25 19:44:57

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

科技植 说:

我还没做镜像,就是想先第一步跑下kernel,看下是否真的支持w25q128

w25q128 支持的。





离线

楼主 #5 2018-12-26 12:55:51

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

今天上午做了测试了,找到了为啥前面提到的会过个7-8分钟才加载内核。
过程是这样的,我按照官方的指导进行了如下操作
keng.png
错误的产生就是因为红框里的那个冒号是多余的,应该去掉。
在没去掉之前,uboot运行下来,就会有如下的log打印:
    spi_flash@0:50000000: failed to activate chip-select 50000000
    SF: error -2 reading JEDEC ID
    Failed to initialize SPI flash at 0:50000000 (error -2)
    No SPI flash selected. Please run `sf probe'
    No SPI flash selected. Please run `sf probe'
我第一次解决这个问题的时候,使用的咱们坑网里的这个人提供的参考信息,
https://whycan.cn/t_1014.html 55楼的做法(因为他跟我一样,遇到了相同的问题)
这种解决方式就导致了spi 的频率非常慢,估计默认值为1吧。所以导致了本文一楼里提到的等待7-8分钟才继续执行。
正确做法是去掉上图中的冒号,才是正确的命令格式。我也看了下sf的命令格式,确实是这样,荔枝好心写个文档都不忘坑我一波,心累。
正确做法是在http://bbs.lichee.pro/d/31-spi-flash/20这里看到的。

下面就是实现加载文件系统的事了。
跑过assert哥提供的镜像(基于w25q128的),打印看过uboot环境变量,里面的bootargs 的root=31:03。感觉和http://bbs.lichee.pro/d/31-spi-flash/26有点默契与相同,感觉荔枝又要坑我了,这回可以少踩一个坑

最近编辑记录 科技植 (2018-12-26 12:58:27)

离线

#6 2018-12-26 13:14:55

arphone
会员
注册时间: 2017-11-03
已发帖子: 92
积分: 83.5

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

确实, 0:50000000 应该语法有问题

离线

#7 2018-12-26 13:36:21

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

没想到是这个问题, 我也被坑过一次: https://whycan.cn/t_1623.html#p8850





离线

楼主 #8 2018-12-26 15:40:47

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

按照http://bbs.lichee.pro/d/31-spi-flash/23的提示,终于挂载了rootfs了。
不过挂载后报了kernel panic,log 如下(我是用的busybox做的文件系统,按以前的经验启动的时候,应该去启动/linuxrc,而logo最后两三行显示去启动了/sbin/init,我估计八成都是这里的问题了):

U-Boot SPL 2018.01-05679-g013ca45-dirty (Dec 26 2018 - 15:19:33)
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-05679-g013ca45-dirty (Dec 26 2018 - 15:19:33 +0800) Allwinner Technology

CPU:   Allwinner F Series (SUNIV)
Model: Lichee Pi Nano
DRAM:  32 MiB
MMC:   SUNXI SD/MMC: 0
SF: Detected w25q128bv with page size 256 Bytes, erase size 64 KiB, total 16 MiB
*** Warning - bad CRC, using default environment

Setting up a 480x272 lcd console (overscan 0x0)
In:    serial@1c25000
Out:   serial@1c25000
Err:   serial@1c25000
Net:   No ethernet found.                                                                                                                             
starting USB...                                                                                                                                       
No controllers found                                                                                                                                  
Hit any key to stop autoboot:  0                                                                                                                      
SF: Detected w25q128bv with page size 256 Bytes, erase size 64 KiB, total 16 MiB                                                                      
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 80e5f000, end 80e63f26 ... OK                                                                                               
                                                                                                                                                      
Starting kernel ...                                                                                                                                   
                                                                                                                                                      
[    0.000000] Booting Linux on physical CPU 0x0                                                                                                      
[    0.000000] Linux version 4.19.0-rc3-licheepi-nano+ (ziotlab@ziotlab-VirtualBox) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #5 Wed Dec 8
[    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: get_random_bytes called from start_kernel+0x84/0x398 with crng_init=0                                                          
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 8128                                                                            
[    0.000000] Kernel command line: console=ttyS0,115200 panic=5 rootwait root=31:03 rw rootfstype=jffs2                                              
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)                                                                          
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)                                                                            
[    0.000000] Memory: 24788K/32768K available (4096K kernel code, 202K rwdata, 1144K rodata, 1024K init, 216K bss, 7980K reserved, 0K cma-reserved, )
[    0.000000] Virtual kernel memory layout:                                                                                                          
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)                                                                                      
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)                                                                                      
[    0.000000]     vmalloc : 0xc2800000 - 0xff800000   ( 976 MB)                                                                                      
[    0.000000]     lowmem  : 0xc0000000 - 0xc2000000   (  32 MB)                                                                                      
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)                                                                                      
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)                                                                                      
[    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (5088 kB)                                                                                      
[    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)                                                                                      
[    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 203 kB)                                                                                      
[    0.000000]        .bss : 0x(ptrval) - 0x(ptrval)   ( 217 kB)                                                                                      
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1                                                                             
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16                                                                                        
[    0.000050] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns                                                              
[    0.000130] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns                                               
[    0.000672] Console: colour dummy device 80x30                                                                                                     
[    0.000772] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)                                                                                
[    0.070254] pid_max: default: 32768 minimum: 301                                                                                                   
[    0.070724] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)                                                                            
[    0.070768] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)                                                                       
[    0.072292] CPU: Testing write buffer coherency: ok                                                                                                
[    0.074237] Setting up static identity map for 0x80100000 - 0x80100058                                                                             
[    0.079278] devtmpfs: initialized                                                                                                                  
[    0.085277] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns                                       
[    0.085350] futex hash table entries: 256 (order: -1, 3072 bytes)                                                                                  
[    0.085667] pinctrl core: initialized pinctrl subsystem                                                                                            
[    0.088301] DMA: preallocated 256 KiB pool for atomic coherent allocations                                                                         
[    0.090516] cpuidle: using governor menu                                                                                                           
[    0.111856] SCSI subsystem initialized                                                                                                             
[    0.112242] usbcore: registered new interface driver usbfs                                                                                         
[    0.112391] usbcore: registered new interface driver hub                                                                                           
[    0.112590] usbcore: registered new device driver usb                                                                                              
[    0.113028] pps_core: LinuxPPS API ver. 1 registered                                                                                               
[    0.113055] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>                                               
[    0.113747] clocksource: Switched to clocksource timer                                                                                             
[    0.144356] NetWinder Floating Point Emulator V0.97 (double precision)                                                                             
[    0.146309] Initialise system trusted keyrings                                                                                                     
[    0.146868] workingset: timestamp_bits=30 max_order=13 bucket_order=0                                                                              
[    0.160197] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.                                                                                   
[    0.176767] Key type asymmetric registered                                                                                                         
[    0.176807] Asymmetric key parser 'x509' registered                                                                                                
[    0.177005] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)                                                                   
[    0.177038] io scheduler noop registered                                                                                                           
[    0.177056] io scheduler deadline registered                                                                                                       
[    0.177573] io scheduler cfq registered (default)                                                                                                  
[    0.177607] io scheduler mq-deadline registered                                                                                                    
[    0.177625] io scheduler kyber registered                                                                                                          
[    0.179493] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO                                                                                    
[    0.190905] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver                                                                            
[    0.380584] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled                                                                               
[    0.387842] console [ttyS0] disabled                                                                                                               
[    0.408105] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A                                                    
[    0.797092] console [ttyS0] enabled                                                                                                                
[    0.823028] 1c25400.serial: ttyS1 at MMIO 0x1c25400 (irq = 24, base_baud = 6250000) is a 16550A                                                    
[    0.839651] panel-simple panel: panel supply power not found, using dummy regulator                                                                
[    0.847666] panel-simple panel: Linked as a consumer to regulator.0                                                                                
[    0.855732] SCSI Media Changer driver v0.25                                                                                                        
[    0.863583] m25p80 spi0.0: w25q128 (16384 Kbytes)                                                                                                  
[    0.868501] 4 fixed-partitions partitions found on MTD device spi0.0                                                                               
[    0.874925] Creating 4 MTD partitions on "spi0.0":                                                                                                 
[    0.879736] 0x000000000000-0x000000100000 : "u-boot"                                                                                               
[    0.887535] 0x000000100000-0x000000110000 : "dtb"                                                                                                  
[    0.895050] 0x000000110000-0x000000510000 : "kernel"                                                                                               
[    0.902698] 0x000000510000-0x000001000000 : "rootfs"                                                                                               
[    0.911962] i2c /dev entries driver                                                                                                                
[    0.917809] sunxi-mmc 1c0f000.mmc: Linked as a consumer to regulator.1                                                                             
[    0.951378] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB                                                                        
[    0.960735] usbcore: registered new interface driver usbhid                                                                                        
[    0.966436] usbhid: USB HID core driver                                                                                                            
[    0.974080] Loading compiled-in X.509 certificates                                                                                                 
[    0.990916] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator                             
[    1.001937] usb_phy_generic usb_phy_generic.0.auto: Linked as a consumer to regulator.0                                                            
[    1.010964] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver                                                                                      
[    1.016891] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1                                                              
[    1.027516] hub 1-0:1.0: USB hub found                                                                                                             
[    1.031556] hub 1-0:1.0: 1 port detected                                                                                                           
[    1.041843] random: fast init done                                                                                                                 
[    1.149056] random: crng init done                                                                                                                 
[    1.506309] VFS: Mounted root (jffs2 filesystem) on device 31:3.                                                                                   
[    1.513285] devtmpfs: mounted                                                                                                                      
[    1.520861] Freeing unused kernel memory: 1024K                                                                                                    
[    1.525587] Run /sbin/init as init process                                                                                                         
[    5.390489] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b                                                                
[    5.390489]                                                                                                                                        
[    5.399636] CPU: 0 PID: 1 Comm: init Not tainted 4.19.0-rc3-licheepi-nano+ #5                                                                      
[    5.406750] Hardware name: Allwinner suniv Family   

离线

楼主 #9 2018-12-26 15:43:56

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

又看了下当初assert哥uboot的bootargs 里也又init=/linuxrc  ,在看了一眼荔枝教程中,使用的参数"console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2" 没有init=/linuxrc(注:root =/dev/mtdblock3还是错的,得改为root=31:03),立刻去把init=/linuxrc添上再试试

离线

楼主 #10 2018-12-26 15:57:31

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

改后,log也变成了如下,但还是panic了,看来又要研究一波了

[    1.525587] Run /linuxrc as init process                                                                                                         
[    5.390489] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b                                                                
[    5.390489]                                                                                                                                        
[    5.399636] CPU: 0 PID: 1 Comm: init Not tainted 4.19.0-rc3-licheepi-nano+ #5                                                                      
[    5.406750] Hardware name: Allwinner suniv Family   

离线

#11 2018-12-26 16:10:37

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

看起来根文件系统有问题





离线

楼主 #12 2018-12-26 16:22:33

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

是的,我也是这么认为的。把assert哥的固件下载进去看了下打印信息,后面把自己文件系统的rcS里第一行加了一个/bin/echo "start kernel end",看下效果。

离线

楼主 #13 2018-12-26 16:25:13

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

并卵,logo还是老样子,:(

离线

楼主 #14 2018-12-26 16:28:39

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

晕哥,你那里有能放入spi-nor的文件系统吗,我来试一波

离线

#15 2018-12-26 16:40:09

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

科技植 说:

晕哥,你那里有能放入spi-nor的文件系统吗,我来试一波

参考这个帖子: https://whycan.cn/t_1662.html




http://nano.lichee.pro/build_sys/onekey.html

镜像下载地址:
https://pan.baidu.com/s/1smzuGS9

本站下载(需要解压): Nano_flash_800480.7z


从荔枝派 16M flash 镜像 Nano_flash_800480.bin 抽出对应的文件:

dd if=Nano_flash_800480.bin of=/tmp/u-boot.bin bs=1 skip=$((0x0)) count=$((0x100000))
dd if=Nano_flash_800480.bin of=/tmp/dtb.bin bs=1 skip=$((0x100000)) count=$((0x4000))
dd if=Nano_flash_800480.bin of=/tmp/kernel.bin bs=1 skip=$((0x110000)) count=$((0x400000))
dd if=Nano_flash_800480.bin of=/tmp/jffs2.bin bs=1 skip=$((0x510000))





离线

楼主 #16 2018-12-26 17:09:02

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

换了文件系统后,直接起来了。
感谢坑网救我狗命,2333.

离线

楼主 #17 2018-12-26 17:21:07

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

@晕哥,你用的busybox还是buildroot生成的文件系统。感觉问了等于白问,你肯定两个都用过。我去查先前的报错信息,居然有说是gcc与busybox版本导致的

离线

楼主 #18 2018-12-26 17:29:22

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

我还是先试一波buildroot吧

离线

楼主 #19 2018-12-27 11:21:13

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

用官方的buildroot确实能跑起来,但启动文件系统的时候,遇到这个问题了,如图。
Q0Z4I1SEJR96L6QAE43ZY.jpg
纳闷怎么一上来就没权限,buildroot生成的rootfs我都没改过,etc目录里德东西,我也看过,感觉没啥问题呀,先在这里记录一波,后面有机会再来填坑

离线

#20 2018-12-27 11:44:31

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

用 mknod 把 /dev/console 设备文件, 和 /dev/pts/ /dev/shm 文件夹建立起来,然后再烧进去。





离线

#21 2018-12-27 13:17:09

msr06rr
会员
所在地: 苏州
注册时间: 2018-01-11
已发帖子: 180
积分: 170.5

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

等你文件系统起来后,我不禁要问,敲reboot命令能重启不?

离线

楼主 #22 2018-12-27 15:40:22

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

@msro6rr etc里环境配好了应该是可以的。我稍后测试了,把结果发上来。
@晕哥 创建 /dev/console 设备文件和 /dev/pts/ /dev/shm 文件夹关系不大。console这个设备文件是因为/etc/inittab里有一句"/dev/console ::respawn:/sbin/getty -L  /dev/console 115200 vt100"。因为我一开始对buildroot进行了make distclean,再make的(这样生成的文件系统只有1.6M),所以inittab出现了这句话,而我先前用默认的配置,通过buildroot生成的inittab,就是"/dev/ttyS0::respawn:/sbin/getty -L  /dev/ttyS0 115200 vt100".只是默认配置生成的文件系统有97M,无法搞进spi nor里。而那两个文件夹,本身生成的文件系统里就有。


现在,先把昨天+今天的测试结果总结一下,(在做了大量测试后),简单来说就是,当我使用http://nano.lichee.pro/get_started/first_eat.html#u-boot教程中的工具链来编译busybox,制作出的rootfs运行时就是10楼的运行结果,死活起不来。后面也查了些资料,看到过两篇有说是编译工具链与busybox版本的问题,其中一篇https://blog.csdn.net/chuanzhilong/article/details/52901973。一周前逛坑网时,也有看到说因为工具链导致的问题,不过不是导致的问下系统起不来,貌似是和uboot有关。
我把buildroot生成的busybox可执行程序,替换busybox生成的busybox可执行程序,运行的时候,也是死在10楼的地方,只是报错信息稍微有些不同。
俗话说,在排除了所有不可能,剩下的那个再不可能,也是真相了。
于是我想到用buildroot里的工具链来编译busybox,结果这次就成功跑起来了。

离线

楼主 #23 2018-12-27 16:12:01

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

如果文件系统起来后,有遇到这种的信息:cant run '/etc/init.d/rcS' : permission denied。如此链接来解决https://blog.csdn.net/pkuyjxu/article/details/5440296

离线

楼主 #24 2018-12-27 16:18:55

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

文件系统起来后,测试了下/dev/ttyS1,也就是荔枝派nano的uart1了。通过echo "1" > /dev/ttyS1可以通过PA3发送字符出来,PC也能收到(PC接收波特率要设置为9600),但cat /dev/ttyS1后,上位机发的字符,minicom上却一直不显示,用了assert哥的镜像,测试效果也根我的一样。不知道坑网里有调过uart1的没有

离线

#25 2018-12-27 16:23:14

lilo
会员
注册时间: 2017-10-15
已发帖子: 215
积分: 215

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

估计不能这么玩, buildroot 里面有测试程序,编译一个串口测试程序试一试。

离线

楼主 #26 2018-12-27 17:29:07

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

@lilo是的,我以前在972,210上是可以这么玩的。刚刚一直了一个串口接收程序(以前写的972串口接收例程),确实可以接收

离线

楼主 #27 2018-12-27 17:30:10

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

下一步就开始往f1c100s上移植xpt2046的触摸了

离线

楼主 #28 2018-12-31 16:19:42

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

触摸移植完了。琢磨了两天,没搞懂为啥没有/dev/fb0生成.
dts没修改过,相关地方为 compatible = “qiaodian,qd43003c0-40”, “simple-panel”,而且可以看到Linux源码里看到,panel-simple.c被编译为了panel-simple.o
同时panel-simple.c里我也在probe函数的开头加了打印信息,内核启动时也没看到我定义的打印信息,按理来说,就是设备和驱动没有匹配上。但不应该呀,panel-simple.c里的.of_match_table = platform_of_match里也有定义“qiaodian,qd43003c0-40”。
不知道有没有跟我类似经历的小伙伴

离线

楼主 #29 2018-12-31 17:08:43

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

无意中在log里发现了一段内容(以前也有,只是自己没注意到),如下:

panel-simple panel:panel supply power not found, using dummy regulator
panel-simple panel:Linked as a consumer to regulator.0

根据前两天我移植触摸驱动时,内核启动打印的log以及对比assert哥固件的启动log,几乎可以确认,没生成fb跟这里有非常大的关系

离线

楼主 #30 2018-12-31 17:11:24

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

这内核是通过咱们坑网的帖子https://whycan.cn/t_1672.html#p10579来的,因为帖子里有小伙伴们贴出的log信息,所以去查了下,发现他们的log信息里也有我这段。

离线

#31 2018-12-31 17:15:15

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

科技植 说:

这内核是通过咱们坑网的帖子https://whycan.cn/t_1672.html#p10579来的,因为帖子里有小伙伴们贴出的log信息,所以去查了下,发现他们的log信息里也有我这段。

有可能没有驱动 LCD 哦,因为前几天 @chong 问我f1c100s支持什么液晶屏





离线

楼主 #32 2018-12-31 17:19:32

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

而这段log本身是由:
drivers/regulator/core.c:1683:                 "%s supply %s not found, using dummy regulator\n"来打印的

离线

楼主 #33 2018-12-31 18:18:31

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

晕哥 说:
科技植 说:

这内核是通过咱们坑网的帖子https://whycan.cn/t_1672.html#p10579来的,因为帖子里有小伙伴们贴出的log信息,所以去查了下,发现他们的log信息里也有我这段。

有可能没有驱动 LCD 哦,因为前几天 @chong 问我f1c100s支持什么液晶屏

看到晕哥,如此回复,果断觉得回家吃饭先。2333

离线

楼主 #34 2019-01-01 20:28:21

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

在dts中,加入power-supply = <&reg_vcc3v3>;解决了

panel-simple panel:panel supply power not found, using dummy regulator
panel: panel {
		compatible = "qiaodian,qd43003c0-40", "simple-panel";
		#address-cells = <1>;
		#size-cells = <0>;
		enable-gpios = <&pio 4 6 GPIO_ACTIVE_HIGH>;
		power-supply = <&reg_vcc3v3>;

		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

			panel_input: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&tcon0_out_lcd>;
			};
		};
	};

离线

楼主 #35 2019-01-01 20:52:07

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

不过还是没有fb出现

离线

楼主 #36 2019-01-02 11:13:58

科技植
会员
注册时间: 2018-11-05
已发帖子: 35
积分: 35

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

今天换荔枝派的主线Linux内核来试了试,内核的配置是从http://nano.lichee.pro/build_sys/kernel.html里下的,启动后也确实看到了fb0.然后对比我4.19内核的log可以发现,我的log少了大概如下几句

[ 1.087039] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc0739bf8)
[ 1.095823] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc0738edc)
[ 1.103610] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.110268] [drm] No driver support for vblank timestamp query.
[ 1.164209] Console: switching to colour frame buffer device 60x34
[ 1.187599] sun4i-drm display-engine: fb0: frame buffer device
[ 1.194806] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0

这几条log就是生成fb的关键了。
主线的dtb与4.19的dtb我也做了对比,可以说几乎一模一样,特别是在和display相关的地方,一模一样。

离线

#37 2019-01-06 22:40:26

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,343
积分: 9202

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

@迪卡 迪卡解决了 4.19 没有 framebuffer 烫手的问题!

将4.19
drivers/gpu/drm/
sun4i文件夹换成4.15的sun4i
QQ20190106224104.png


还有
QQ20190106224137.png

这个不知道有啥用,应该没关系,,直接复制4.15的替换过来

之前的驱动可以,那么直接用之前的驱动喽.





离线

#38 2019-03-05 20:36:50

ermao
会员
注册时间: 2019-03-04
已发帖子: 10
积分: 5

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

科技植 说:

@msro6rr etc里环境配好了应该是可以的。我稍后测试了,把结果发上来。
@晕哥 创建 /dev/console 设备文件和 /dev/pts/ /dev/shm 文件夹关系不大。console这个设备文件是因为/etc/inittab里有一句"/dev/console ::respawn:/sbin/getty -L  /dev/console 115200 vt100"。因为我一开始对buildroot进行了make distclean,再make的(这样生成的文件系统只有1.6M),所以inittab出现了这句话,而我先前用默认的配置,通过buildroot生成的inittab,就是"/dev/ttyS0::respawn:/sbin/getty -L  /dev/ttyS0 115200 vt100".只是默认配置生成的文件系统有97M,无法搞进spi nor里。而那两个文件夹,本身生成的文件系统里就有。


现在,先把昨天+今天的测试结果总结一下,(在做了大量测试后),简单来说就是,当我使用http://nano.lichee.pro/get_started/first_eat.html#u-boot教程中的工具链来编译busybox,制作出的rootfs运行时就是10楼的运行结果,死活起不来。后面也查了些资料,看到过两篇有说是编译工具链与busybox版本的问题,其中一篇https://blog.csdn.net/chuanzhilong/article/details/52901973。一周前逛坑网时,也有看到说因为工具链导致的问题,不过不是导致的问下系统起不来,貌似是和uboot有关。
我把buildroot生成的busybox可执行程序,替换busybox生成的busybox可执行程序,运行的时候,也是死在10楼的地方,只是报错信息稍微有些不同。
俗话说,在排除了所有不可能,剩下的那个再不可能,也是真相了。
于是我想到用buildroot里的工具链来编译busybox,结果这次就成功跑起来了。


大佬 这里怎么整呀?可以指导下吗?谢谢了

离线

#39 2022-03-23 15:50:44

路人
会员
注册时间: 2020-12-30
已发帖子: 11
积分: 1

Re: 主线uboot + linux4.19 测试spi-flash w25q128是否能正常使用,记录

@科技植
“@msro6rr etc里环境配好了应该是可以的。我稍后测试了,把结果发上来。
@晕哥 创建 /dev/console 设备文件和 /dev/pts/ /dev/shm 文件夹关系不大。console这个设备文件是因为/etc/inittab里有一句"/dev/console ::respawn:/sbin/getty -L  /dev/console 115200 vt100"。因为我一开始对buildroot进行了make distclean,再make的(这样生成的文件系统只有1.6M),所以inittab出现了这句话,而我先前用默认的配置,通过buildroot生成的inittab,就是"/dev/ttyS0::respawn:/sbin/getty -L  /dev/ttyS0 115200 vt100".只是默认配置生成的文件系统有97M,无法搞进spi nor里。而那两个文件夹,本身生成的文件系统里就有。


现在,先把昨天+今天的测试结果总结一下,(在做了大量测试后),简单来说就是,当我使用http://nano.lichee.pro/get_started/first_eat.html#u-boot教程中的工具链来编译busybox,制作出的rootfs运行时就是10楼的运行结果,死活起不来。后面也查了些资料,看到过两篇有说是编译工具链与busybox版本的问题,其中一篇https://blog.csdn.net/chuanzhilong/article/details/52901973。一周前逛坑网时,也有看到说因为工具链导致的问题,不过不是导致的问下系统起不来,貌似是和uboot有关。
我把buildroot生成的busybox可执行程序,替换busybox生成的busybox可执行程序,运行的时候,也是死在10楼的地方,只是报错信息稍微有些不同。
俗话说,在排除了所有不可能,剩下的那个再不可能,也是真相了。
于是我想到用buildroot里的工具链来编译busybox,结果这次就成功跑起来了。”

有些不太明白,可以给指导一下? 谢谢

离线

页脚

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

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