页次: 1
你们看看这个帖子 https://whycan.cn/t_1252.html
当中提到CPU电压1.2v的时候,不工作,我看一楼的原理图,CPU供电就是用两个150k电阻分压,和上面的帖子一样的。
我自己做的板子,是用130k和150K两个不同电阻,工作正常,你们试着替换一下
刚刚试了一下 ubuntu, 如果网卡没启动就没有 dhclient 这个进程, 启用才会有。
#ps -Af |grep dhclient root 70853 1126 0 14:08 ? 00:00:00 /sbin/dhclient -d -sf /usr/lib/NetworkManager/nm-dhcp-client.action -pf /run/sendsigs.omit.d/network-manager.dhclient-eth0.pid -lf /var/lib/NetworkManager/dhclient-d0fa151c-0270-4421-b061-1822d19954fa-eth0.lease -cf /var/lib/NetworkManager/dhclient-eth0.conf eth0
然后我找了一下1126的父进程是NetworkManager:
#ps -Af |grep 1126 root 1126 1 0 May02 ? 00:00:24 NetworkManager
网卡没启用,插了网线也没用的
要用网络,网卡肯定要启用才行
fatfs 精简版 http://elm-chan.org/fsw/ff/00index_p.html
Features
Very small RAM consumption (44 bytes work area + certain stack).
Very small code size (2K-4K bytes).
FAT12, FAT16 and FAT32.
Single volume and Single file.
Streaming file read.
File write function with some restrictions.
虽然不知道具体是什么事情,但关于安全,提几个小建议
1. 注册2个邮箱,一个是普通用途,专门注册各大论坛用的,不关联任何东西,这样即使泄露了,也无关紧要。一个是专门接受关键信息的,比如银行卡账单,关键认证信息等,这个尽量不对外,禁止用来注册论坛
2. 登录论坛、社区、微博等,宁愿麻烦一点,单独注册账号,不要用QQ或微信登录,这样最容易被关联起来
3. 注册论坛原则上不用QQ邮箱,也是因为怕被关联,或者专门有个QQ用来做这件事情。
4. QQ尽量不绑定手机号码(现在好像不绑定不能注册了,我的QQ是十多年前注册的,没绑手机,QQ总是引诱我绑定,一直拒绝绑定)
5. 网上注册账号信息,尽量不留手机号码
6. QQ或者微博之类的地方,不填写与个人有关的信息,比如姓名、毕业学校、年龄等
晕哥 代码改了 能编译通过了 但是遇到奇怪的问题了 这是撒呢
LD spl/lib/built-in.o
LD spl/u-boot-spl
OBJCOPY spl/u-boot-spl-nodtb.bin
COPY spl/u-boot-spl.bin
MKSUNXI spl/sunxi-spl.bin
BINMAN u-boot-sunxi-with-spl.bin
binman: Node '/binman/u-boot-img': Entry contents size is 0x335a5 (210341) but entry size is 0x1f000 (126976)
Makefile:1148: recipe for target 'u-boot-sunxi-with-spl.bin' failed
make: *** [u-boot-sunxi-with-spl.bin] Error 1
编译出来的uboot体积太大了,使用空间和env环境的地址冲突了,将env环境的地址调大一点
升压芯片激光刻字b6289y, 我查了手册, shutdown current < 1uA, 这样是不是说 待机电流<1uA呢?
应该是 MT3608 系列的, 手册上面这个型号的丝印是: b628dc
https://prom-electric.ru/media/MT3608.pdf后记:
------------------------------------------------
应该是这家西安航天民芯的MT36xx: https://item.szlcsc.com/85988.html
但不一定是这个芯片, 因为后缀还是对不上.
shutdown current表示没有升压工作状态下的耗电电流,但明显这个模块是一直在工作的。除非你改动万用表的开关电路,控制en引脚,万用表工作的时候才启动升压,这样才能达到减少耗电的目的
这个A33板子看起来不错
https://linux-sunxi.org/Sinlinx_SinA33
价格看起来也不贵
https://item.taobao.com/item.htm?id=41648393969
号称提供全部源代码
主线内核5.4也支持,有对应的设备树
sun8i-a33-sinlinx-sina33.dts
https://whycan.cn/files/members/1228/agrgdd.png
还有1个SOC的输出,可不可以即接到耳机孔,也接到功放呢?
这样做不行,插耳机进去时,会影响功放
所以耳机和功放的输出要隔离
是不是你的板子有些问题,我用华嵌的S3板子,速度还可以
# iperf3 -c 100.100.100.10
Connecting to host 100.100.100.10, port 5201
[ 5] local 100.100.100.40 port 33334 connected to 100.100.100.10 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 2.52 MBytes 21.2 Mbits/sec 0 129 KBytes
[ 5] 1.00-2.00 sec 2.30 MBytes 19.3 Mbits/sec 3 116 KBytes
[ 5] 2.00-3.00 sec 3.17 MBytes 26.6 Mbits/sec 0 139 KBytes
[ 5] 3.00-4.00 sec 2.80 MBytes 23.5 Mbits/sec 0 146 KBytes
[ 5] 4.00-5.00 sec 2.80 MBytes 23.5 Mbits/sec 0 151 KBytes
[ 5] 5.00-6.00 sec 2.42 MBytes 20.3 Mbits/sec 0 153 KBytes
[ 5] 6.00-7.00 sec 954 KBytes 7.82 Mbits/sec 0 153 KBytes
[ 5] 7.00-8.00 sec 2.61 MBytes 21.9 Mbits/sec 0 156 KBytes
[ 5] 8.00-9.00 sec 2.05 MBytes 17.2 Mbits/sec 0 157 KBytes
[ 5] 9.00-10.00 sec 1.68 MBytes 14.1 Mbits/sec 0 157 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 23.3 MBytes 19.5 Mbits/sec 3 sender
[ 5] 0.00-10.00 sec 22.8 MBytes 19.2 Mbits/sec receiver
iperf Done.
# iperf3 -c 100.100.100.10 -R
Connecting to host 100.100.100.10, port 5201
Reverse mode, remote host 100.100.100.10 is sending
[ 5] local 100.100.100.40 port 33338 connected to 100.100.100.10 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 3.97 MBytes 33.3 Mbits/sec
[ 5] 1.00-2.00 sec 4.35 MBytes 36.5 Mbits/sec
[ 5] 2.00-3.00 sec 4.44 MBytes 37.2 Mbits/sec
[ 5] 3.00-4.00 sec 4.44 MBytes 37.3 Mbits/sec
[ 5] 4.00-5.00 sec 4.02 MBytes 33.7 Mbits/sec
[ 5] 5.00-6.00 sec 4.60 MBytes 38.6 Mbits/sec
[ 5] 6.00-7.00 sec 4.20 MBytes 35.3 Mbits/sec
[ 5] 7.00-8.00 sec 4.28 MBytes 35.9 Mbits/sec
[ 5] 8.00-9.00 sec 3.78 MBytes 31.7 Mbits/sec
[ 5] 9.00-10.00 sec 3.90 MBytes 32.7 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 43.0 MBytes 36.1 Mbits/sec 4 sender
[ 5] 0.00-10.00 sec 42.0 MBytes 35.2 Mbits/sec receiver
iperf Done.
#
贴一个S3加载brcmfmac的日志
[ 1.395485] mmc1: new high speed SDIO card at address 0001
[ 91.850630] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 91.859734] usbcore: registered new interface driver brcmfmac
[ 91.919111] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.hqmebed,s3-050ips.txt failed with error -2
[ 92.014173] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 92.023091] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[ 92.036796] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Mar 30 2016 11:30:56 version 7.45.77.h8.4 FWID 01-ee8a6268
可以把信号强度打印出来,会不会发热导致信号强度衰减
不像是发热引起的
我详细说说
zero和nano我都有,因为要用音频,所以用的是bsp的内核
zero上测试了8723bs,rt5370,rt5572,bcm43236,ar9271几种网卡,tcp传输文件很正常,但是我的程序是用udp传输一个数据流,流量是恒定的,大约150kbps,2.4G频段丢包严重,怀疑是zero对2.4G频段有些干扰,用了延长线,让usb WiFi远离zero也不行。同样的程序,用5G频段就完全正常(rt5572和bcm43236是双频网卡)8723bs没有导致崩溃
在nano上8723bs会引起系统崩溃,rt5370,rt5572会使用中会断网,重新加载模块会正常,ar9271和bcm43236完全正常
这个屏是无锡威峰科技有限公司生产的,具体资料没找到
http://shop2290319764.panelook.cn/
这个可以看到芯片的外设支持情况 https://linux-sunxi.org/Linux_mainlining_effort
全志系列的标签,是否马甲一可以查 https://linux-sunxi.org/Allwinner_SoC_Family
在 arch/arm/mach-sunxi/board.c
void board_boot_order(u32 *spl_boot_list)
{
/*
* See the comments above in sunxi_get_boot_device() for infomation
* about FEL boot.
*/
if (!is_boot0_magic(SPL_ADDR + 4)) {
spl_boot_list[0] = BOOT_DEVICE_BOARD;
return;
}
spl_boot_list[0] = BOOT_DEVICE_MMC1;
spl_boot_list[1] = BOOT_DEVICE_SPI;
}
@zhenfanhei
这个S3板子,音频支持会不会像V3s那样,播放音乐前面有一段噪音?
原来这个帖子里面有提及 https://whycan.cn/t_1791.html
续前贴: BITC200(F1c200s/100s)手工焊接简直焊瞎了眼 (https://whycan.cn/t_2195.html)
默认支持40P RGB电阻触摸屏通用FPC口,和6P通用电容触摸屏FPC。其余资源全部引出到2.54间距双排针。
板子大小:2000X900mil(50.8*22.86mm) ,两排针间隔:20.32mm(800mil)
资源:
1、USB-TTL CP2104串口控制台
2、microUSB OTG口
3、16M nor FLASH
4、TF卡槽,可接TF卡或TF-WiFi
5、40P通用RGB FPC排座(含电容触摸屏)
6、6P通用电容触摸FPC排座
7、MIC一个
8、BOOT按键、复位按键
9、50.8*22.86mm纤瘦尺寸,2.54排针引出所有资源,排针间隔20.32mm适合面包板https://whycan.cn/files/members/383/IMG_1617_20190803-2039.jpg
看样子像双层板
有没可能是ep数量限制或者中断的问题,之前帖子说过这个问题
https://whycan.cn/t_1626.html
.config 配置文件 https://whycan.cn/files/members/1028/f1c100s.rar
我用的是licheepi nano,被无线部分折腾的要崩溃,因为要用声卡,只能用bsp,结果 8723bs加载出错,雷凌的3070无线网卡,加载和联网正常,但持续传输数据流,数据量不大,就128Kbps,但是到最后必然出现内存满 out of memory,然后系统崩溃。
用有线网卡就正常
真是头大
呵呵,我来说一下吧,V3s用无线有坑,折磨了我两天,暂时没有完全解决
驱动无线网卡,要要将rf switch选项打开,不打开用不了,主线内核的网络选项里面
无线的坑是什么呢?
V3s使用2.4G网络,估计有干扰,不传输数据,用着还行,我有个传输mp3数据流的程序,持续传输128kbps的mp3流,用V3s无线接收,几秒中 后就中断,播放的音乐流断了
试了8723bs,ralink3070,ralink5572,2.4都有问题,用ralink5572的5G频段,就完全正常,无线路由器距离接收器才2~3米,即使有干扰也不应该这样的,而且5572的2.4G有问题,5G就正常,明显是V3s自身的干扰。
迪卡 说:我觉得还是BSP核比较重要,毕竟支持硬解,还有AV输出。
这样的应用用途比较广泛。
欢迎大家在坑网交流BSP。
毕竟BSP编译出来的固件,使用这一个固件,可以通过USB直接烧录到spi nor flash 、 spi nand flash 、 板载sd nand 、插在板子上的TF卡 、 作为TF卡使用的EMMC.并且可以使用卡烧写工具制作TF启动卡。。
这样的话,使用SD NAND 作为大容量存储的话,烧录问题就可以解决了。BSP那种 img 文件可以直接烧录到这么多种存储器?
不需要做任何改动?
请问是什么原理?
bsp那个大镜像文件,包括了spi,nand的两个子镜像在里面,我记得有个文件名字fullimg.fex,这个就是spi的镜像,一起打包到全志的大镜像里面,全志的工具刷固件的时候,会判断你的是tf卡,还是spi,然后选择性的刷对应的镜像,如果有spi和tf,优先刷tf
F1c100s 使用厂家的bsp linux, linux 版本是3。10。65,8723bs编译成模块,用modprobe 8723bs加载出错,日志如下
/ # modprobe 8723bs
[ 17.434083] RTL871X: module init start
[ 17.438275] RTL871X: rtl8723bs v4.3.9.6_13612.20150311_BTCOEX20140929-5443_beta
[ 17.446467] RTL871X: build time: Jul 9 2019 12:57:58
[ 17.452066] RTL871X: rtl8723bs BT-Coex version = BTCOEX20140929-5443
[ 17.459163] ------------[ cut here ]------------
[ 17.464287] Kernel BUG at c0183548 [verbose debug info unavailable]
[ 17.471227] Internal error: Oops - BUG: 0 [#1] ARM
[ 17.476529] Modules linked in: 8723bs(+)
[ 17.480897] CPU: 0 PID: 59 Comm: modprobe Not tainted 3.10.65 #23
[ 17.487649] task: c16097a0 ti: c16c8000 task.ti: c16c8000
[ 17.493659] PC is at sunxi_wlan_get_bus_index+0x1c/0x48
[ 17.501205] LR is at platform_wifi_power_on+0x10/0x64 [8723bs]
[ 17.507683] pc : [<c0183548>] lr : [<bf0d08f8>] psr: 60000013
[ 17.507683] sp : c16c9e10 ip : c16c9e28 fp : c16c9e24
[ 17.520396] r10: c0a525e4 r9 : 00000001 r8 : c0a525c0
[ 17.526185] r7 : 00000000 r6 : bf14b000 r5 : c16c8000 r4 : c0477828
[ 17.533412] r3 : 00000000 r2 : c044549c r1 : 00000000 r0 : 00000038
[ 17.540642] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 17.548542] Control: 0005317f Table: 816d4000 DAC: 00000015
[ 17.554902]
[ 17.554902] PC: 0xc01834c8:
[ 17.559630] 34c8 e1a04000 e5953000 e3530000 1a000000 e7f001f2 e59f0040 e5936024 eb05cbbd
[ 17.568731] 34e8 e5950000 e5903020 e1540003 0a000006 e1a01004 ebfffe8c e3500000 0a000002
[ 17.577824] 3508 e59f1018 e2860010 ebffafc9 e59f0008 eb05cb78 e89da8f0 c0477828 c0458640
[ 17.586915] 3528 c03da45e e1a0c00d e92dd830 e24cb004 e59f402c e5943000 e3530000 1a000000
[ 17.596007] 3548 e7f001f2 e5930024 e5932000 e59f1014 e2800010 ebffb003 e5943000 e5930000
[ 17.605101] 3568 e89da830 c0477828 c03da64f e1a0c00d e92dd8f0 e24cb004 e59f5044 e5953000
[ 17.614194] 3588 e3530000 1a000000 e7f001f2 e5930014 e5936024 ebff1183 e3700a01 e1a04000
[ 17.623286] 35a8 9a000005 e5952000 e1a03000 e5922014 e59f1010 e2860010 ebffaf9d e1a00004
[ 17.632380]
[ 17.632380] SP: 0xc16c9d90:
[ 17.637105] 9d90 00000002 c0445498 00000004 c04690f8 00000000 c16c9e14 c018354c 60000013
[ 17.646194] 9db0 ffffffff c16c9dfc c16c9e24 c16c9dc8 c000f48c c000a024 00000038 00000000
[ 17.655287] 9dd0 c044549c 00000000 c0477828 c16c8000 bf14b000 00000000 c0a525c0 00000001
[ 17.664380] 9df0 c0a525e4 c16c9e24 c16c9e28 c16c9e10 bf0d08f8 c0183548 60000013 ffffffff
[ 17.673473] 9e10 c16c8010 c16c8000 c16c9e44 c16c9e28 bf0d08f8 c018353c c16c8010 c16c8000
[ 17.682567] 9e30 bf14b000 00000000 c16c9e5c c16c9e48 bf14b04c bf0d08f8 c16c8010 c16c8000
[ 17.691659] 9e50 c16c9e8c c16c9e60 c000a3d8 bf14b010 bf10bdcc c0a525c0 c16c9e8c c16c8010
[ 17.700757] 9e70 00000001 bf10bd84 bf10bdcc c0a525c0 c16c9f44 c16c9e90 c0055780 c000a3c0
[ 17.709854]
[ 17.709854] IP: 0xc16c9da8:
[ 17.714581] 9da8 c018354c 60000013 ffffffff c16c9dfc c16c9e24 c16c9dc8 c000f48c c000a024
[ 17.723674] 9dc8 00000038 00000000 c044549c 00000000 c0477828 c16c8000 bf14b000 00000000
[ 17.732766] 9de8 c0a525c0 00000001 c0a525e4 c16c9e24 c16c9e28 c16c9e10 bf0d08f8 c0183548
[ 17.741861] 9e08 60000013 ffffffff c16c8010 c16c8000 c16c9e44 c16c9e28 bf0d08f8 c018353c
[ 17.750953] 9e28 c16c8010 c16c8000 bf14b000 00000000 c16c9e5c c16c9e48 bf14b04c bf0d08f8
[ 17.760046] 9e48 c16c8010 c16c8000 c16c9e8c c16c9e60 c000a3d8 bf14b010 bf10bdcc c0a525c0
[ 17.769142] 9e68 c16c9e8c c16c8010 00000001 bf10bd84 bf10bdcc c0a525c0 c16c9f44 c16c9e90
[ 17.778233] 9e88 c0055780 c000a3c0 bf10bd90 00007fff c005278c c0022c38 c0475020 00ff1048
[ 17.787326]
[ 17.787326] FP: 0xc16c9da4:
[ 17.792052] 9da4 c16c9e14 c018354c 60000013 ffffffff c16c9dfc c16c9e24 c16c9dc8 c000f48c
[ 17.801147] 9dc4 c000a024 00000038 00000000 c044549c 00000000 c0477828 c16c8000 bf14b000
[ 17.810238] 9de4 00000000 c0a525c0 00000001 c0a525e4 c16c9e24 c16c9e28 c16c9e10 bf0d08f8
[ 17.819327] 9e04 c0183548 60000013 ffffffff c16c8010 c16c8000 c16c9e44 c16c9e28 bf0d08f8
[ 17.828420] 9e24 c018353c c16c8010 c16c8000 bf14b000 00000000 c16c9e5c c16c9e48 bf14b04c
[ 17.837514] 9e44 bf0d08f8 c16c8010 c16c8000 c16c9e8c c16c9e60 c000a3d8 bf14b010 bf10bdcc
[ 17.846607] 9e64 c0a525c0 c16c9e8c c16c8010 00000001 bf10bd84 bf10bdcc c0a525c0 c16c9f44
[ 17.855704] 9e84 c16c9e90 c0055780 c000a3c0 bf10bd90 00007fff c005278c c0022c38 c0475020
[ 17.864801]
[ 17.864801] R2: 0xc044541c:
[ 17.869528] 541c 00000001 00000002 00000003 00000004 00000005 00000006 00000007 00000008
[ 17.878617] 543c 00000009 0000000a 0000000b 0000000c 0000000d 0000000e 0000000f 00000010
[ 17.887704] 545c 00000011 00000012 00000013 00000014 00000015 00000016 00000017 00000018
[ 17.896791] 547c 00000019 0000001a 0000001b 0000001c 0000001d 0000001e 0000001f c0469df8
[ 17.905884] 549c c044549c c044549c 00000001 c04454a8 c04454a8 00004000 00000001 c04454b8
[ 17.914974] 54bc c04454b8 000001f4 0000000a 00000000 00000000 00000000 00000000 0000000f
[ 17.924059] 54dc 00000004 00000001 00000007 00000001 ffffffff ffffffff 00000000 00000000
[ 17.933149] 54fc 00000004 00000000 c001e820 00000000 00000000 00000000 00000000 00000000
[ 17.942240]
[ 17.942240] R4: 0xc04777a8:
[ 17.946966] 77a8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 17.956057] 77c8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 17.965145] 77e8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 17.974233] 7808 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 17.983319] 7828 00000000 00000000 00000000 00000000 00000000 c1801580 00000000 00000000
[ 17.992412] 7848 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.001499] 7868 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.010588] 7888 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.019677]
[ 18.019677] R5: 0xc16c7f80:
[ 18.024403] 7f80 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.033493] 7fa0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.042583] 7fc0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.051675] 7fe0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.060766] 8000 00000002 00000001 00000000 c16097a0 c04453ec 00000000 00000017 c16097a0
[ 18.069859] 8020 c1609500 00000000 c0447268 c16c8030 c16c8000 c140c600 c16c9d1c c16c9cf0
[ 18.078951] 8040 c02f6e00 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.088040] 8060 b6f124c0 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.097134]
[ 18.097134] R8: 0xc0a52540:
[ 18.101861] 2540 00000001 00000000 c0a52280 c147be80 c0a523d1 c0a52490 c0a52590 00000000
[ 18.110954] 2560 00000000 30936305 c16c4178 00000000 00000000 81240002 000019bb 00000000
[ 18.120042] 2580 00000001 00000000 c0a52280 c147bdc0 c0a52550 00000000 00000000 00000000
[ 18.129135] 25a0 00000000 2fe0e316 c16c419c 00000000 00000000 81240002 000019bc 00000000
[ 18.138225] 25c0 c0a52600 00000001 c147bc20 00000124 00000024 bf0ea1dc c005306c 00000000
[ 18.147320] 25e0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.156411] 2600 c147be40 c0a52604 c0a52604 bf10bdcc 00000000 c0452e74 c0a52640 00000001
[ 18.165504] 2620 00000003 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.174595]
[ 18.174595] R10: 0xc0a52564:
[ 18.179416] 2564 30936305 c16c4178 00000000 00000000 81240002 000019bb 00000000 00000001
[ 18.188508] 2584 00000000 c0a52280 c147bdc0 c0a52550 00000000 00000000 00000000 00000000
[ 18.197599] 25a4 2fe0e316 c16c419c 00000000 00000000 81240002 000019bc 00000000 c0a52600
[ 18.206694] 25c4 00000001 c147bc20 00000124 00000024 bf0ea1dc c005306c 00000000 00000000
[ 18.215785] 25e4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 c147be40
[ 18.224873] 2604 c0a52604 c0a52604 bf10bdcc 00000000 c0452e74 c0a52640 00000001 00000003
[ 18.233962] 2624 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000002
[ 18.243052] 2644 00000000 c16be280 c147bde0 c0a52151 c0a52210 c0a52110 00000000 00000000
[ 18.252152] Process modprobe (pid: 59, stack limit = 0xc16c81b8)
[ 18.258804] Stack: (0xc16c9e10 to 0xc16ca000)
[ 18.272205] 9e00: c16c8010 c16c8000 c16c9e44 c16c9e28
[ 18.281453] 9e20: bf0d08f8 c018353c c16c8010 c16c8000 bf14b000 00000000 c16c9e5c c16c9e48
[ 18.290602] 9e40: bf14b04c bf0d08f8 c16c8010 c16c8000 c16c9e8c c16c9e60 c000a3d8 bf14b010
[ 18.299739] 9e60: bf10bdcc c0a525c0 c16c9e8c c16c8010 00000001 bf10bd84 bf10bdcc c0a525c0
[ 18.308871] 9e80: c16c9f44 c16c9e90 c0055780 c000a3c0 bf10bd90 00007fff c005278c c0022c38
[ 18.317996] 9ea0: c0475020 00ff1048 c16c9ed4 c2bccbe4 00001e54 bf10beac c0053168 00000028
[ 18.327117] 9ec0: 00000000 bf10bd90 c16c9fa4 c16c9ed8 c000f420 c000a2e0 c2c02ce0 00000000
[ 18.336233] 9ee0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 18.345348] 9f00: 00000000 00000000 00000000 00000000 00000000 00000000 20000013 b6c2c008
[ 18.354467] 9f20: 00ff1048 0017cbb8 00000080 c000f928 c16c8000 00000000 c16c9fa4 c16c9f48
[ 18.363545] 9f40: c0055dcc c0054220 c2abc000 0017cbb8 c2bcc824 c2bcc73a c2c20d64 0011447c
[ 18.372656] 9f60: 0013113c 00000000 00000000 00000000 00000018 00000019 00000010 0000000d
[ 18.381773] 9f80: 0000000a 00000000 c0012dd8 0017cbb8 00000006 00ff1008 00000000 c16c9fa8
[ 18.390898] 9fa0: c000f7a0 c0055d10 0017cbb8 00000006 b6c2c008 0017cbb8 00ff1048 00ff1300
[ 18.400017] 9fc0: 0017cbb8 00000006 00ff1008 00000080 00000001 00ff1028 00000000 00ff1338
[ 18.409136] 9fe0: be86ca20 be86ca10 00019b8c b6e7cad0 60000010 b6c2c008 00000000 00000000
[ 18.418222] Backtrace:
[ 18.422754] [<c018352c>] (sunxi_wlan_get_bus_index+0x0/0x48) from [<bf0d08f8>] (platform_wifi_power_on+0x10/0x64 [8723bs])
[ 18.435062] r5:c16c8000 r4:c16c8010
[ 18.442101] [<bf0d08e8>] (platform_wifi_power_on+0x0/0x64 [8723bs]) from [<bf14b04c>] (rtw_drv_entry+0x4c/0xdc [8723bs])
[ 18.454218] r7:00000000 r6:bf14b000 r5:c16c8000 r4:c16c8010
[ 18.461860] [<bf14b000>] (rtw_drv_entry+0x0/0xdc [8723bs]) from [<c000a3d8>] (do_one_initcall+0x28/0xcc)
[ 18.472436] r5:c16c8000 r4:c16c8010
[ 18.476510] [<c000a3b0>] (do_one_initcall+0x0/0xcc) from [<c0055780>] (load_module+0x1570/0x1af0)
[ 18.486378] r8:c0a525c0 r7:bf10bdcc r6:bf10bd84 r5:00000001 r4:c16c8010
[ 18.493912] [<c0054210>] (load_module+0x0/0x1af0) from [<c0055dcc>] (SyS_init_module+0xcc/0xd4)
[ 18.503583] [<c0055d00>] (SyS_init_module+0x0/0xd4) from [<c000f7a0>] (ret_fast_syscall+0x0/0x2c)
[ 18.513449] r6:00ff1008 r5:00000006 r4:0017cbb8
[ 18.518659] Code: e59f402c e5943000 e3530000 1a000000 (e7f001f2)
[ 18.525464] ---[ end trace ab3285227f5e12e5 ]---
Segmentation fault
/ #
有哪位成功加载过8723bs模块的?
长期支持版本 https://www.kernel.org/category/releases.html
4.9支持到2023年1月
https://www.cnblogs.com/rysinal/p/6214484.html
参考这个试一下
如果不行,就要找数据恢复公司
要恢复的话,最好马上关机,万一写文件覆盖了,就没戏了
ippen 说:slangel 说:这个不是改UBOOT,是要改一整套烧录方式
也就是改sunxi-fel
因为。量产的话。NAND一定是焊在PCB上的,然而UBOOT如果要从SD NAND启动的话就需要在8K位置写入UBOOT
那么问题来了。。。怎么写?
如果用sunxi-fel写到RAM里跑UBOOT,那么就需要UBOOT可以直接操作SD NAND,目前还不知道如何 sunxi-fel -> UBOOT -> SD NAND其实可以这样操作
准备一个可以spi flash启动的linux img,写好芯片,这个片子上的linux启动后,自动启用f1c100s的usb device模式,将sd nand 作为usb storage 映射给电脑,电脑上就可以直接写sd nand了,不需要来回切换开关,只要板子上预留一个spi flash的插口就可以了,刷好了sd nand,拔掉spi flash就可以了嗯这是一个办法,可是客户怎么升级固件呢?
还有个办法,按上面的方法引导recover分区,进入系统后设置usb口为host模式,挂在U盘刷sd nand的数据,这样要注意,不能将uboot和recover分区刷了,否则要按初始模式用spi flash重刷
ippen 说:slangel 说:这个不是改UBOOT,是要改一整套烧录方式
也就是改sunxi-fel
因为。量产的话。NAND一定是焊在PCB上的,然而UBOOT如果要从SD NAND启动的话就需要在8K位置写入UBOOT
那么问题来了。。。怎么写?
如果用sunxi-fel写到RAM里跑UBOOT,那么就需要UBOOT可以直接操作SD NAND,目前还不知道如何 sunxi-fel -> UBOOT -> SD NAND其实可以这样操作
准备一个可以spi flash启动的linux img,写好芯片,这个片子上的linux启动后,自动启用f1c100s的usb device模式,将sd nand 作为usb storage 映射给电脑,电脑上就可以直接写sd nand了,不需要来回切换开关,只要板子上预留一个spi flash的插口就可以了,刷好了sd nand,拔掉spi flash就可以了嗯这是一个办法,可是客户怎么升级固件呢?
升级固件确实有点麻烦,多数做法就是用uboot,引导一个recover分区,recover分区引导进入linux,设置usb口为device 模式,usb网卡模式,然后从pc里面上传升级固件,或者仍然用usb storage 模式,将正式工作分区映射给电脑,刷sd nand 分区
达克罗德 说:F1C100S在BootLoader模式下直接实现U盘不行吗?微微凉大侠都打通了裸机USB了
这个不是改UBOOT,是要改一整套烧录方式
也就是改sunxi-fel
因为。量产的话。NAND一定是焊在PCB上的,然而UBOOT如果要从SD NAND启动的话就需要在8K位置写入UBOOT
那么问题来了。。。怎么写?
如果用sunxi-fel写到RAM里跑UBOOT,那么就需要UBOOT可以直接操作SD NAND,目前还不知道如何 sunxi-fel -> UBOOT -> SD NAND
其实可以这样操作
准备一个可以spi flash启动的linux img,写好芯片,这个片子上的linux启动后,自动启用f1c100s的usb device模式,将sd nand 作为usb storage 映射给电脑,电脑上就可以直接写sd nand了,不需要来回切换开关,只要板子上预留一个spi flash的插口就可以了,刷好了sd nand,拔掉spi flash就可以了
slangel 说:达克罗德 说:F1C100S在BootLoader模式下直接实现U盘不行吗?微微凉大侠都打通了裸机USB了
这个不是改UBOOT,是要改一整套烧录方式
也就是改sunxi-fel
因为。量产的话。NAND一定是焊在PCB上的,然而UBOOT如果要从SD NAND启动的话就需要在8K位置写入UBOOT
那么问题来了。。。怎么写?
如果用sunxi-fel写到RAM里跑UBOOT,那么就需要UBOOT可以直接操作SD NAND,目前还不知道如何 sunxi-fel -> UBOOT -> SD NANDsunxifel下载个几十k的小Bootloader到ram实现USB和sd读写就可以。当然软件上复杂点
全志原厂的刷机工具是可以刷tf卡的
4.19确实是主线内核,但我们下载的不过是4.19打上f1c100s相关的patch,列表里那个,说明f1c100会正式进入linux内核,不用打补丁,直接下载正式内核5.0,就有表格里面的驱动,随着时间推进,驱动会和A10那样,逐渐完善
这个挺好理解的
按晕哥的图
假设两个电机转速一样
当右侧电机顺时针转动,左侧电机逆时针转动,笔头就向下走;反方向转,就是向上走,实现Y轴的移动,
当右侧电机顺时针转动,左侧电机也是顺时针针转动,笔头就向左移动;反之,就是向右移动,实现X轴的移动
将着两者结合就可以实现XY坐标的移动
也就是说,左右电机转速不同,还有旋转方向不同,就可以控制XY轴不同位置的定位和移动
这位兄弟,能否给个大概思路。刚接触这玩意,不太熟。通过配置A64的ALSA 和 sys_config.fex可以实现吗?
ippen 说:输入信号是i2s啊,等于是原始的raw音频流,要经过DAC解码才行
我没有用过A64
大致的方法,应该是配置sys_config.fex,启用i2s的引脚
然后写程序,接收i2s的引脚数据,调整为符合alsa格式的pcm数据,丢给alsa去播放
你需要了解i2s的数据结构,也要了解alsa的播放声音的方法
播放声音的,可以google linux wav声音播放,网上很多播放的程序范例
i2s的接收方法你要找一下,我没仔细研究过
是,挖坑官方sdk的确配的是528
/* register allwinner,sunxi-pll-clock */
clk_pll_cpu: pll_cpu {
#clock-cells = <0>;
compatible = "allwinner,sunxi-pll-clock";
lock-mode = "none";
assigned-clock-rates = <528000000>;
clock-output-names = "pll_cpu";
};
可能我记混了,刚又从新跑了下,528频率也是匹配性能的,但是主线内核原始版本基本能肯定是超到816的了,整形性能比528高30%多,但是我没去读过寄存器ippen 说:asdf 说:对比过几个sdk,挖坑社区官方sdk在sun3iwip1-clk.dtsi配置的的确是528,我没有改过,然后sysconfig配的408不确定是否生效,但实际性能我对比nano荔枝派基本是一致的,nano都说的是408,没看到何处去设置的只看到有个ccu相关的宏是11;然后我有个较新的官方sdk,配置到816才能持平nano和老官方sdk的性能,我总感觉nano和挖坑官方sdk实际主频应该都是816的,不知大家有何见解
可以肯定不是816,我是用直接读寄存器的方式获取数据,然后根据手册推算出来的,官方的sdk是528,4.19主线内核是408
我估计你是将性能和cpu工作频率划等线关系了
现在的主线4.x的内核,工作效率比3.x要高,全志的A10,用原生内核3.4.y和主线内核4.4(Debian9),两者的效率不一样,至少网络的效率高很多
我认为是主线内核效率高,不是频率提高,是内核效率提高,因为主线内核我确实读过频率寄存器,频率是408M
https://whycan.cn/files/members/1028/suniv-f1c100s-licheepi-nano.rar
压缩包里面有dtb,zImage,config三个文件,能识别u盘,插入电脑,会识别为网卡
drivers/usb/gadget
但是我把v3s板子和笔记本连在一起还是平不同、
ping 169.254.63.187 PING 169.254.63.187 (169.254.63.187): 56 data bytes ping: sendto: Network is unreachable # [ 607.606202] dwmac-sun8i 1c30000.ethernet eth0: Link is Down
169.254.63.187是我将v3s和笔记本连在一起时候,笔记本的IP地址,..是驱动没设置好?
169.254.x.x 是无dhcp环境自动分配的IP
windows 有可能 禁止ping,所以从v3s ping windows 可能不通,可以试一下从windows ping v3s,如果通,就说明网络没问题
如果不通,就检查两边的ip地址设置,可以手动设置两边的IP,然后用ping测试
大部分发行版都能查到和设置
在/sys/devices/system/cpu/cpu0/cpufreq 这个路径下
nano 4.19的内核这个路径不存在,可能是我编译内核参数没选对,或者4.19对应的数据没有匹配
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# ls -l
total 0
-r--r--r-- 1 root root 4096 May 28 23:09 affected_cpus
-r-------- 1 root root 4096 May 28 23:02 cpuinfo_cur_freq
-r--r--r-- 1 root root 4096 May 28 23:02 cpuinfo_max_freq
-r--r--r-- 1 root root 4096 May 28 23:02 cpuinfo_min_freq
-r--r--r-- 1 root root 4096 May 28 23:02 cpuinfo_transition_latency
-r--r--r-- 1 root root 4096 May 28 23:09 related_cpus
-r--r--r-- 1 root root 4096 May 28 23:04 scaling_available_frequencies
-r--r--r-- 1 root root 4096 May 28 23:02 scaling_available_governors
-r--r--r-- 1 root root 4096 May 28 23:04 scaling_cur_freq
-r--r--r-- 1 root root 4096 May 28 23:04 scaling_driver
-rw-r--r-- 1 root root 4096 May 28 23:02 scaling_governor
-rw-r--r-- 1 root root 4096 May 28 23:04 scaling_max_freq
-rw-r--r-- 1 root root 4096 May 28 23:04 scaling_min_freq
-rw-r--r-- 1 root root 4096 May 28 23:04 scaling_setspeed
drwxr-xr-x 2 root root 0 May 28 23:09 stats
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat cpuinfo_cur_freq
624000
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat cpuinfo_min_freq
624000
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat cpuinfo_max_freq
1008000
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat scaling_available_frequencies
624000 864000 912000 1008000
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat scaling_available_governors
userspace conservative ondemand powersave performance schedutil
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat scaling_max_freq
1008000
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat scaling_governor
ondemand
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# echo performance >scaling_governor
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat scaling_governor
performance
root@CubieBox:/sys/devices/system/cpu/cpu0/cpufreq# cat cpuinfo_cur_freq
1008000
git clone https://github.com/torvalds/linux.git
cd linux
git reset --hard 5e335542de83558e46d28de1008a1c37d5d6679a ###恢复到指定版本
patch -p1 < lichee_pi_nano_usbok_patch_5e335542de83558e46d.patch ###打补丁ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make sunxi_defconfig ###使用默认配置
ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make -j4 ###四进程编译
默认配置编译出来不是f系列cpu的内核
https://whycan.cn/files/members/3/QQ20181021221115.png
一个重磅好消息砸来了。
如果 linux 4.19 在 f1c100s 搞定了, 那么 spi nand 也不是问题了,因为已经4.19集成了。
重大利好啊
沉鱼 说:lilo 说:3万人民币我都要考虑好几年了,
30万美金还是盗版算了,
一被子都赚不了30万美金。为什么 FAT16/FAT32/NTFS 不要授权费,难道专利过期了?
我记得FAT32长文件名专利每年都要收不少钱的http://elm-chan.org/fsw/ff/00index_e.html
fatfs 默认就支持了 exFAT, 那岂不是用了 fatfs 就要收钱?
你到网页上仔细搜索,有声明,如果用于商业产品,要向微软购买授权,就是说fatfs只是提供代码,授权问题自己找微软
晕哥 说:ruixiang 说:看了下SDK和文档,貌似GM8136只能从spi flash启动,不能从tf/emmc启动,而且好像spi就一路。。我还要用spi接fpga呢,这可咋办呢?
这就有点坑了, 打开ds看了一下, 只支持 SPI NOR/NAND Boot, 而且只有一组SPI.
哭晕在厕所啊。目前基本只能用V3S了,我再研究一下HI3516E。唉。。。
找一下海思 3518ev200看看,这个芯片和f1c100s比较接近,网上有sdk,资料也挺全的,开发板淘宝上有,但挺贵的,要700大洋,网卡,mmc,spi都有,bga封装
我本来计划用这个芯片的,后来看到有v3s和f1c100s,觉得qfn焊接容易,所以用v3s和f1c100s测试
网上的价格,v3s>3518>f1c100s
谢谢晕哥,我找时间试一下
搞得我也想买一台来玩玩了....不知淘宝上还有没有?
cubieboard2吗?
建议你去找debian的系统,debian能直接支持cubieboard的板子,内核设备驱动俱佳
http://mirrors.ustc.edu.cn/debian/dists/stable/main/installer-armhf/current/images/hd-media/SD-card-images/
apollo800 说:我早就因为这个原因放弃了F1C100s,USB驱动没有,有点说不过去呀,我当初还傻傻地等那个群主说下周就发,等了。。。。,果断放弃了
主线Linux下USB驱动确实有点问题,
但是bsp linux USB驱动基本正常了:
https://whycan.cn/t_1626.htmlf1c100s 性价比很好,还是有可圈可点之处的。
rndis 驱动正常,但mass_storage驱动不行
现在还不确定,他这几天回家。
应该基本上都在一楼了,如果有修改也会很小。这是他前几天发给我的tf卡zImage和dtb, 你加个u-boot和ext4 根文件系统试一试.
晕哥,问一下@chong大神,帮忙看看C100s usb驱动的问题。
再次用@chong提供的内核编译一次
启动日志
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 80e61000, end 80e65d8e ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.19.0-rc3-licheepi-nano (root@LicheepiNano) (gcc version 6.4.1 20180425 [linaro-6.4-2018.05 revision 7b15d0869c096fe39603ad63dc19ab7cf035eb70] (Linaro GCC 6.4-2018.05)) #1 Thu Sep 27 22:10:44 CST 2018
[ 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/0x400 with crng_init=0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: console=tty0 console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw
[ 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: 22676K/32768K available (6144K kernel code, 248K rwdata, 1516K rodata, 1024K init, 239K bss, 10092K reserved, 0K cma-reserved, 0K highmem)
[ 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) (7136 kB)
[ 0.000000] .init : 0x(ptrval) - 0x(ptrval) (1024 kB)
[ 0.000000] .data : 0x(ptrval) - 0x(ptrval) ( 249 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 240 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.000045] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000111] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000545] Console: colour dummy device 80x30
[ 0.001125] console [tty0] enabled
[ 0.001226] Calibrating delay loop... 358.80 BogoMIPS (lpj=1794048)
[ 0.050293] pid_max: default: 32768 minimum: 301
[ 0.050665] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.050746] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.052063] CPU: Testing write buffer coherency: ok
[ 0.053839] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.057873] devtmpfs: initialized
[ 0.062835] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.062983] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.063318] pinctrl core: initialized pinctrl subsystem
[ 0.065410] NET: Registered protocol family 16
[ 0.066712] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.068365] cpuidle: using governor menu
[ 0.088871] SCSI subsystem initialized
[ 0.089272] usbcore: registered new interface driver usbfs
[ 0.089476] usbcore: registered new interface driver hub
[ 0.089728] usbcore: registered new device driver usb
[ 0.090290] pps_core: LinuxPPS API ver. 1 registered
[ 0.090376] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.090503] PTP clock support registered
[ 0.090977] Advanced Linux Sound Architecture Driver Initialized.
[ 0.092385] clocksource: Switched to clocksource timer
[ 0.119370] NET: Registered protocol family 2
[ 0.120654] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes)
[ 0.120802] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.120877] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.120933] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.121250] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.121348] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.121872] NET: Registered protocol family 1
[ 0.123408] RPC: Registered named UNIX socket transport module.
[ 0.123509] RPC: Registered udp transport module.
[ 0.123548] RPC: Registered tcp transport module.
[ 0.123576] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.125584] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.127482] Initialise system trusted keyrings
[ 0.128141] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.144485] NFS: Registering the id_resolver key type
[ 0.144625] Key type id_resolver registered
[ 0.144670] Key type id_legacy registered
[ 0.156418] Key type asymmetric registered
[ 0.156521] Asymmetric key parser 'x509' registered
[ 0.156716] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.156791] io scheduler noop registered
[ 0.156825] io scheduler deadline registered
[ 0.157278] io scheduler cfq registered (default)
[ 0.157357] io scheduler mq-deadline registered
[ 0.157395] io scheduler kyber registered
[ 0.158836] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
[ 0.167381] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.331732] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.337924] console [ttyS0] disabled
[ 0.358243] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A
[ 0.847381] console [ttyS0] enabled
[ 0.856509] panel-simple panel: panel supply power not found, using dummy regulator
[ 0.864575] panel-simple panel: Linked as a consumer to regulator.0
[ 0.872316] SCSI Media Changer driver v0.25
[ 0.879463] spidev spi0.0: buggy DT: spidev listed directly in DT
[ 0.885775] ------------[ cut here ]------------
[ 0.890466] WARNING: CPU: 0 PID: 1 at drivers/spi/spidev.c:730 spidev_probe+0x198/0x1e8
[ 0.898556] Modules linked in:
[ 0.901665] CPU: 0 PID: 1 Comm: swapper Not tainted 4.19.0-rc3-licheepi-nano #1
[ 0.909039] Hardware name: Allwinner suniv Family
[ 0.913904] [<c010e9c0>] (unwind_backtrace) from [<c010bc68>] (show_stack+0x10/0x14)
[ 0.921723] [<c010bc68>] (show_stack) from [<c0117230>] (__warn+0xec/0x114)
[ 0.928807] [<c0117230>] (__warn) from [<c011736c>] (warn_slowpath_null+0x3c/0x48)
[ 0.936500] [<c011736c>] (warn_slowpath_null) from [<c0460ff8>] (spidev_probe+0x198/0x1e8)
[ 0.944904] [<c0460ff8>] (spidev_probe) from [<c045d990>] (spi_drv_probe+0x88/0xa0)
[ 0.952715] [<c045d990>] (spi_drv_probe) from [<c0417bf0>] (really_probe+0x25c/0x3fc)
[ 0.960617] [<c0417bf0>] (really_probe) from [<c0417f38>] (driver_probe_device+0x6c/0x1bc)
[ 0.969002] [<c0417f38>] (driver_probe_device) from [<c0415c4c>] (bus_for_each_drv+0x70/0xb8)
[ 0.977644] [<c0415c4c>] (bus_for_each_drv) from [<c04178f0>] (__device_attach+0xc8/0x164)
[ 0.986018] [<c04178f0>] (__device_attach) from [<c0416b70>] (bus_probe_device+0x84/0x8c)
[ 0.994307] [<c0416b70>] (bus_probe_device) from [<c0413808>] (device_add+0x380/0x618)
[ 1.002298] [<c0413808>] (device_add) from [<c045e264>] (spi_add_device+0x8c/0x16c)
[ 1.010093] [<c045e264>] (spi_add_device) from [<c045ed10>] (spi_register_controller+0x44c/0x8f4)
[ 1.019069] [<c045ed10>] (spi_register_controller) from [<c045f1e8>] (devm_spi_register_controller+0x30/0x70)
[ 1.029079] [<c045f1e8>] (devm_spi_register_controller) from [<c04624e8>] (sun6i_spi_probe+0x1e8/0x2b0)
[ 1.038593] [<c04624e8>] (sun6i_spi_probe) from [<c0419bc8>] (platform_drv_probe+0x48/0x9c)
[ 1.047062] [<c0419bc8>] (platform_drv_probe) from [<c0417bf0>] (really_probe+0x25c/0x3fc)
[ 1.055446] [<c0417bf0>] (really_probe) from [<c0417f38>] (driver_probe_device+0x6c/0x1bc)
[ 1.063823] [<c0417f38>] (driver_probe_device) from [<c041818c>] (__driver_attach+0x104/0x12c)
[ 1.072542] [<c041818c>] (__driver_attach) from [<c0415b78>] (bus_for_each_dev+0x64/0xb4)
[ 1.080768] [<c0415b78>] (bus_for_each_dev) from [<c0416e3c>] (bus_add_driver+0x18c/0x264)
[ 1.089141] [<c0416e3c>] (bus_add_driver) from [<c0418b68>] (driver_register+0x78/0x10c)
[ 1.097352] [<c0418b68>] (driver_register) from [<c0102b80>] (do_one_initcall+0x48/0x1a0)
[ 1.105670] [<c0102b80>] (do_one_initcall) from [<c0900e10>] (kernel_init_freeable+0x108/0x1c4)
[ 1.114497] [<c0900e10>] (kernel_init_freeable) from [<c06973ec>] (kernel_init+0x8/0x110)
[ 1.122793] [<c06973ec>] (kernel_init) from [<c01010e0>] (ret_from_fork+0x14/0x34)
[ 1.130390] Exception stack(0xc1831fb0 to 0xc1831ff8)
[ 1.135519] 1fa0: 00000000 00000000 00000000 00000000
[ 1.143774] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 1.151975] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[ 1.158656] ---[ end trace 99f3c12227daac5d ]---
[ 1.165322] i2c /dev entries driver
[ 1.170606] sunxi-mmc 1c0f000.mmc: Linked as a consumer to regulator.1
[ 1.204142] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB
[ 1.213420] usbcore: registered new interface driver usbhid
[ 1.219058] usbhid: USB HID core driver
[ 1.235678] NET: Registered protocol family 17
[ 1.240380] Key type dns_resolver registered
[ 1.246956] Loading compiled-in X.509 certificates
[ 1.261595] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[ 1.272739] usb_phy_generic usb_phy_generic.0.auto: Linked as a consumer to regulator.0
[ 1.281643] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 1.287641] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 1.297804] hub 1-0:1.0: USB hub found
[ 1.301851] hub 1-0:1.0: 1 port detected
[ 1.308172] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.324374] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.331206] ALSA device list:
[ 1.334357] #0: Loopback 1
[ 1.338092] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.346920] cfg80211: failed to load regulatory.db
[ 1.352711] Waiting for root device /dev/mmcblk0p2...
[ 1.369275] mmc0: host does not support reading read-only switch, assuming write-enable
[ 1.384315] mmc0: new high speed SDHC card at address aaaa
[ 1.392647] mmcblk0: mmc0:aaaa SS08G 7.40 GiB
[ 1.404268] mmcblk0: p1 p2
[ 1.424319] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 1.432701] VFS: Mounted root (ext4 filesystem) on device 179:2.
[ 1.443250] devtmpfs: mounted
[ 1.450164] Freeing unused kernel memory: 1024K
[ 1.454954] Run /sbin/init as init process
[ 1.571469] random: fast init done
[ 1.606748] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
Starting logging: OK
Initializing random number generator... [ 1.870551] random: dd: uninitialized urandom read (512 bytes read)
done.
Welcome to Lichee Pi
Lichee login: root
Password:
# modprobe g_ether
[ 15.127278] using random self ethernet address
[ 15.131802] using random host ethernet address
[ 15.137522] usb0: HOST MAC 86:ee:40:ce:3c:52
[ 15.141973] usb0: MAC ae:98:d6:21:a2:9e
[ 15.146039] using random self ethernet address
[ 15.150523] using random host ethernet address
[ 15.155353] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
[ 15.162004] g_ether gadget: g_ether ready
当中0.91秒那段日志和@chong大神的有90%的相似度
加载g_ether提示信息正常,但插入pc usb口没反应,接u盘没反应
现在还不确定,他这几天回家。
应该基本上都在一楼了,如果有修改也会很小。这是他前几天发给我的tf卡zImage和dtb, 你加个u-boot和ext4 根文件系统试一试.
试了一下,这个内核和dtb也是一样的,用otg插入U盘没反应,usb插入pc也没反应,我猜@chong大神的板子和我们的不同
这个我到时候和他说说,要不你先试一试看USB能不能跑起来?
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.19.0-rc5-licheepi-nano (root@LicheepiNano) (gcc version 6.4.1 20180425 [linaro-6.4-2018.05 revision 7b15d0869c096fe39603ad63dc19ab7cf035eb70] (Linaro GCC 6.4-2018.05)) #6 Wed Sep 26 22:29:47 CST 2018
[ 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+0x80/0x3f8 with crng_init=0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: console=tty0 console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw
[ 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: 23736K/32768K available (5120K kernel code, 222K rwdata, 1152K rodata, 1024K init, 224K bss, 9032K reserved, 0K cma-reserved, 0K highmem)
[ 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) (6112 kB)
[ 0.000000] .init : 0x(ptrval) - 0x(ptrval) (1024 kB)
[ 0.000000] .data : 0x(ptrval) - 0x(ptrval) ( 223 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 225 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.000043] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000109] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000541] Console: colour dummy device 80x30
[ 0.001104] console [tty0] enabled
[ 0.001208] Calibrating delay loop... 358.80 BogoMIPS (lpj=1794048)
[ 0.050289] pid_max: default: 32768 minimum: 301
[ 0.050680] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.050766] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.051893] CPU: Testing write buffer coherency: ok
[ 0.053783] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.057462] devtmpfs: initialized
[ 0.062457] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.062603] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.062891] pinctrl core: initialized pinctrl subsystem
[ 0.064988] NET: Registered protocol family 16
[ 0.066222] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.067907] cpuidle: using governor menu
[ 0.086296] SCSI subsystem initialized
[ 0.086784] pps_core: LinuxPPS API ver. 1 registered
[ 0.086867] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.087008] PTP clock support registered
[ 0.088572] clocksource: Switched to clocksource timer
[ 0.114863] NET: Registered protocol family 2
[ 0.116145] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes)
[ 0.116293] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.116368] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.116424] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.116717] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.116816] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.117348] NET: Registered protocol family 1
[ 0.118891] RPC: Registered named UNIX socket transport module.
[ 0.118994] RPC: Registered udp transport module.
[ 0.119028] RPC: Registered tcp transport module.
[ 0.119054] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.120955] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.122818] Initialise system trusted keyrings
[ 0.123455] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.139499] NFS: Registering the id_resolver key type
[ 0.139657] Key type id_resolver registered
[ 0.139709] Key type id_legacy registered
[ 0.151055] Key type asymmetric registered
[ 0.151156] Asymmetric key parser 'x509' registered
[ 0.151357] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.151430] io scheduler noop registered
[ 0.151465] io scheduler deadline registered
[ 0.151961] io scheduler cfq registered (default)
[ 0.152049] io scheduler mq-deadline registered
[ 0.152087] io scheduler kyber registered
[ 0.153417] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
[ 0.161781] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.323956] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.330150] console [ttyS0] disabled
[ 0.350453] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A
[ 0.817840] console [ttyS0] enabled
[ 0.823281] SCSI Media Changer driver v0.25
[ 0.830673] m25p80 spi0.0: w25q128 (16384 Kbytes)
[ 0.836564] 4 fixed-partitions partitions found on MTD device spi0.0
[ 0.843115] Creating 4 MTD partitions on "spi0.0":
[ 0.847964] 0x000000000000-0x000000100000 : "u-boot"
[ 0.854184] 0x000000100000-0x000000110000 : "dtb"
[ 0.860085] 0x000000110000-0x000000510000 : "kernel"
[ 0.866071] 0x000000510000-0x000001000000 : "rootfs"
[ 0.873368] udc-core: couldn't find an available UDC - added [g_ether] to list of pending drivers
[ 0.882680] i2c /dev entries driver
[ 0.887919] sunxi-mmc 1c0f000.mmc: Linked as a consumer to regulator.1
[ 0.921428] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB
[ 0.930995] NET: Registered protocol family 17
[ 0.935725] Key type dns_resolver registered
[ 0.942644] Loading compiled-in X.509 certificates
[ 0.957060] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[ 0.968137] usb_phy_generic usb_phy_generic.0.auto: Linked as a consumer to regulator.0
[ 0.977681] using random self ethernet address
[ 0.982346] using random host ethernet address
[ 0.987909] usb0: HOST MAC 1a:27:d5:6e:43:f7
[ 0.992514] usb0: MAC fa:31:fc:41:d9:f9
[ 0.996492] using random self ethernet address
[ 1.001082] using random host ethernet address
[ 1.005911] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
[ 1.012692] g_ether gadget: g_ether ready
[ 1.017781] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.032881] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.040510] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.049333] cfg80211: failed to load regulatory.db
[ 1.054949] Waiting for root device /dev/mmcblk0p2...
[ 1.090316] mmc0: host does not support reading read-only switch, assuming write-enable
[ 1.102038] mmc0: new high speed SDHC card at address aaaa
[ 1.110388] mmcblk0: mmc0:aaaa SS08G 7.40 GiB
[ 1.121538] mmcblk0: p1 p2
[ 1.163941] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 1.172321] VFS: Mounted root (ext4 filesystem) on device 179:2.
[ 1.183012] devtmpfs: mounted
[ 1.190052] Freeing unused kernel memory: 1024K
[ 1.194742] Run /sbin/init as init process
[ 1.315256] random: fast init done
[ 1.348840] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
Starting logging: OK
Initializing random number generator... [ 1.631353] random: dd: uninitialized urandom read (512 bytes read)
done.
Welcome to Lichee Pi
Lichee login:
主线内核usb没反应,启动日志有看到rndis加载
日志里面有 [ 0.153417] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO,usbid io错误
3.10 内核的 RNDIS 搞定了。
f1c100s 的手册中关于 USB 有这样的说明:
Supports up to 3 User-Configurable Endpoints for Bulk , Isochronous, Control and Interrupt
bi-directional transfers (Endpoint1, Endpoint2)
支持 INT 传输的只有 EP1 和 EP2,目前代码采用的是 EP4,是无法工作的。
@szyusong,你的手册是哪里找到的?我找了一圈,没找到,据说和f1c100s相同的f1c600的手册,里面写的是8 User-Configurable Endpoints
方便的话共享一下手册
3.10 内核的 RNDIS 搞定了。
f1c100s 的手册中关于 USB 有这样的说明:
Supports up to 3 User-Configurable Endpoints for Bulk , Isochronous, Control and Interrupt
bi-directional transfers (Endpoint1, Endpoint2)
支持 INT 传输的只有 EP1 和 EP2,目前代码采用的是 EP4,是无法工作的。按如下修改后,在 Windows 下 RNDIS 没问题了。
static const char ep0name [] = "ep0"; static const char ep1in_bulk_name [] = "ep1in-bulk"; static const char ep1out_bulk_name [] = "ep1out-bulk"; #if 1 static const char ep2in_bulk_name [] = "ep2-int"; // 作为 INT 节点,为了 usb_ep_autoconfig 能查询到 #else static const char ep2in_bulk_name [] = "ep2in-bulk"; #endif static const char ep2out_bulk_name [] = "ep2out-bulk"; static const char ep3_iso_name [] = "ep3-iso"; static const char ep4_int_name [] = "ep4-int"; static const char ep5in_bulk_name [] = "ep5in-bulk"; static const char ep5out_bulk_name [] = "ep5out-bulk";
.ep[3] = { .num = 2, .ep = { .name = ep2in_bulk_name, .ops = &sunxi_udc_ep_ops, .maxpacket = SW_UDC_EP_FIFO_SIZE, }, .dev = &sunxi_udc, //.fifo_size = SW_UDC_EP_FIFO_SIZE, .bEndpointAddress = (USB_DIR_IN | 2), #if 1 .bmAttributes = USB_ENDPOINT_XFER_INT, #else .bmAttributes = USB_ENDPOINT_XFER_BULK, #endif
厉害!!!
昨天我测试的时候,看到数据传输有停顿的情况,抓包看,两次传输数据有时间隔20秒,一直怀疑是中断问题,因为每次传数据都有irq reset,正发毛...........
果然足够蛋疼
明显是sunxi的udc驱动问题
我在本贴的24楼曾经发过疑问,加载驱动的顺序问题,结果在usb_manager.c里面找到一段代码
static int usb_hardware_scan_thread(void * pArg)
{
struct usb_cfg *cfg = pArg;
/* delay for udc & hcd ready */
msleep(3000);
while(thread_run_flag) {
msleep(1000); /* 1s */
if (atomic_read(&thread_suspend_flag))
continue;
usb_hw_scan(cfg);
usb_msg_center(cfg);
}
thread_stopped_flag = 1;
return 0;
}
里面先是延时3秒,然后循环里面又延时一秒,所以g_mass_storage初始化的时候,usb还没完成初始化
我在msg_init里面插入一个4.5秒延时,结果usb插入pc有反应了
https://whycan.cn/files/members/3/QQ20180922222312.png
装上了楼上朋友的驱动程序,果然设备无法启动,代码10.
放狗搜了一圈
权威答案:
我终于想通了。
由于响应时间的原因,设备未能成功完成某些信息的枚举。IE usb设备在枚举期间没有响应足够的时间。
一旦我修复了这个问题,我就能成功运行设备而不会出现ErrorCode 10问题。
看来得改gadget驱动了。
我的驱动,用licheepi zero+linux-4.13.0的内核是可以正常使用的,看来3.10这个版本还是有不少坑
赞助晕哥一个rndis驱动
[ 4.257062]
[ 4.257062] insmod_device_driver
[ 4.257062]
[ 4.265583] [sw_udc]: sunxi_usb_device_enable start
[ 4.271087] [sw_udc]: open_usb_clock
[ 4.275104] [sw_udc]: udc->driver is null, udc is need not stop
[ 4.281816] [sw_udc]: sunxi_usb_device_enable end
[ 4.287096] device_chose finished 64!
看来我的不太一样,错误是 udc->driver is null
[ 27.926832]
[ 27.926832]
[ 27.926832] insmod_device_driver
[ 27.926832]
[ 27.935352] [sw_udc]: sunxi_usb_device_enable start
[ 27.940846] [sw_udc]: open_usb_clock
[ 27.944874] Unable to handle kernel NULL pointer dereference at virtual address 00000400
[ 27.953899] pgd = c0004000
[ 27.956948] [00000400] *pgd=00000000
[ 27.960926] Internal error: Oops: 17 [#1] ARM
[ 27.965745] Modules linked in:
[ 27.969139] CPU: 0 PID: 13 Comm: usb-hardware-sc Not tainted 3.10.65 #156
[ 27.976653] task: c18f0000 ti: c18f2000 task.ti: c18f2000
[ 27.982665] PC is at USBC_EnableDpDmPullUp+0x14/0x2c
[ 27.988172] LR is at sunxi_udc_bsp_init+0x24/0x7c
[ 27.993384] pc : [<c01ac988>] lr : [<c01b8938>] psr: 60000013
[ 27.993384] sp : c18f3ec8 ip : c18f3ee0 fp : c18f3edc
[ 28.006081] r10: 00000000 r9 : 00000000 r8 : c185f000
[ 28.011861] r7 : 00000001 r6 : c02f1084 r5 : c02f1080 r4 : c02f0d70
[ 28.019081] r3 : 00000000 r2 : 00000504 r1 : ffffffff r0 : c02f0d70
[ 28.026304] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 28.034388] Control: 0005317f Table: 81a70000 DAC: 00000017
[ 28.040743]
[ 28.040743] PC: 0xc01ac908:
[ 28.045470] c908 e89da800 e1a0c00d e92dd800 e24cb004 e89da800 e1a0c00d e92dd818 e24cb004
[ 28.054563] c928 e5903004 e1a04000 e5930400 e3800802 ebffffee e5943004 e5830400 e89da818
[ 28.063654] c948 e1a0c00d e92dd818 e24cb004 e5903004 e1a04000 e5930400 e3c00802 ebffffe3
[ 28.072749] c968 e5943004 e5830400 e89da818 e1a0c00d e92dd818 e24cb004 e5903004 e1a04000
[ 28.081841] c988 e5930400 e3800801 ebffffd8 e5943004 e5830400 e89da818 e1a0c00d e92dd818
[ 28.090937] c9a8 e24cb004 e5903004 e1a04000 e5930400 e3c00801 ebffffcd e5943004 e5830400
[ 28.100028] c9c8 e89da818 e1a0c00d e92dd818 e24cb004 e3510001 e5904004 0a000002 e3510002
[ 28.109125] c9e8 1a000007 ea000003 e5940400 e3c00903 e3800902 ea000004 e5940400 e3800903
[ 28.118224]
[ 28.118224] LR: 0xc01b88b8:
[ 28.122948] 88b8 e5944038 e1a00004 eb00879f e1a00004 eb008b43 e59f3034 e59f0034 e5933004
[ 28.132038] 88d8 e12fff33 ea000004 e58d3000 e59f0024 e594203c e5943040 eb00af0f e3a00000
[ 28.141134] 88f8 e24bd014 e89da830 c028afe0 c028a6e9 c02d6630 0010624c c028beb2 e1a0c00d
[ 28.150223] 8918 e92dd830 e24cb004 e1a04000 ebffff87 e5940030 ebffcfa3 e5940030 ebffd00e
[ 28.159315] 8938 e5940030 ebffcff6 e5940030 e3a01002 ebffd01f e5940030 e3a01002 ebffd031
[ 28.168412] 8958 e3a01000 e5940030 e1a02001 e1a03001 ebffceb9 e10f5000 e3853080 e121f003
[ 28.177507] 8978 e3a01a02 e5940030 ebffcdf7 e121f005 e3a00000 e89da830 e1a0c00d e92dd818
[ 28.186599] 8998 e24cb004 e1a04000 e5900030 ebffcffd e5940030 ebffcfe5 e5940030 e3a01000
[ 28.195696]
[ 28.195696] SP: 0xc18f3e48:
[ 28.200420] 3e48 00000002 00000001 00000000 00000000 00000000 c01ac988 60000013 ffffffff
[ 28.209509] 3e68 c18f3eb4 c185f000 c18f3edc c18f3e80 c000aa78 c000a1a0 c02f0d70 ffffffff
[ 28.218602] 3e88 00000504 00000000 c02f0d70 c02f1080 c02f1084 00000001 c185f000 00000000
[ 28.227695] 3ea8 00000000 c18f3edc c18f3ee0 c18f3ec8 c01b8938 c01ac988 60000013 ffffffff
[ 28.236788] 3ec8 00000001 c02f1084 c18f3ef4 c18f3ee0 c01b8938 c01ac984 c02f0e44 c02f1080
[ 28.245880] 3ee8 c18f3f34 c18f3ef8 c01b71e0 c01b8924 c18f3f24 c18f3f08 c01e456c c00191e0
[ 28.254976] 3f08 c028a4c0 c02f0e44 00000000 c02f0d8c c01b2360 00000000 00000000 00000000
[ 28.264063] 3f28 c18f3f4c c18f3f38 c01b3168 c01b719c c02f0d8c 00000000 c18f3f64 c18f3f50
[ 28.273160]
[ 28.273160] IP: 0xc18f3e60:
[ 28.277886] 3e60 60000013 ffffffff c18f3eb4 c185f000 c18f3edc c18f3e80 c000aa78 c000a1a0
[ 28.286979] 3e80 c02f0d70 ffffffff 00000504 00000000 c02f0d70 c02f1080 c02f1084 00000001
[ 28.296070] 3ea0 c185f000 00000000 00000000 c18f3edc c18f3ee0 c18f3ec8 c01b8938 c01ac988
[ 28.305161] 3ec0 60000013 ffffffff 00000001 c02f1084 c18f3ef4 c18f3ee0 c01b8938 c01ac984
[ 28.314257] 3ee0 c02f0e44 c02f1080 c18f3f34 c18f3ef8 c01b71e0 c01b8924 c18f3f24 c18f3f08
[ 28.323351] 3f00 c01e456c c00191e0 c028a4c0 c02f0e44 00000000 c02f0d8c c01b2360 00000000
[ 28.332444] 3f20 00000000 00000000 c18f3f4c c18f3f38 c01b3168 c01b719c c02f0d8c 00000000
[ 28.341537] 3f40 c18f3f64 c18f3f50 c01b23a4 c01b30b4 00000000 c1835dc0 c18f3fac c18f3f68
[ 28.350635]
[ 28.350635] FP: 0xc18f3e5c:
[ 28.355358] 3e5c c01ac988 60000013 ffffffff c18f3eb4 c185f000 c18f3edc c18f3e80 c000aa78
[ 28.364453] 3e7c c000a1a0 c02f0d70 ffffffff 00000504 00000000 c02f0d70 c02f1080 c02f1084
[ 28.373546] 3e9c 00000001 c185f000 00000000 00000000 c18f3edc c18f3ee0 c18f3ec8 c01b8938
[ 28.382638] 3ebc c01ac988 60000013 ffffffff 00000001 c02f1084 c18f3ef4 c18f3ee0 c01b8938
[ 28.391734] 3edc c01ac984 c02f0e44 c02f1080 c18f3f34 c18f3ef8 c01b71e0 c01b8924 c18f3f24
[ 28.400829] 3efc c18f3f08 c01e456c c00191e0 c028a4c0 c02f0e44 00000000 c02f0d8c c01b2360
[ 28.409922] 3f1c 00000000 00000000 00000000 c18f3f4c c18f3f38 c01b3168 c01b719c c02f0d8c
[ 28.419016] 3f3c 00000000 c18f3f64 c18f3f50 c01b23a4 c01b30b4 00000000 c1835dc0 c18f3fac
[ 28.428114]
[ 28.428114] R0: 0xc02f0cf0:
[ 28.432839] 0cf0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.441931] 0d10 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.451019] 0d30 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.460110] 0d50 c18c0ac0 00000000 00000000 00002000 00000000 00000000 00000000 00000000
[ 28.469200] 0d70 00000000 00000000 00000000 00000000 f1c13000 f1c13000 00000000 00000001
[ 28.478289] 0d90 00000000 00000001 00000000 00000002 00000000 00000001 c0973734 00000001
[ 28.487376] 0db0 00000000 00000000 00000000 00000000 00000000 00000001 00000082 00000000
[ 28.496464] 0dd0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.505561]
[ 28.505561] R4: 0xc02f0cf0:
[ 28.510287] 0cf0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.519377] 0d10 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.528469] 0d30 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.537556] 0d50 c18c0ac0 00000000 00000000 00002000 00000000 00000000 00000000 00000000
[ 28.546647] 0d70 00000000 00000000 00000000 00000000 f1c13000 f1c13000 00000000 00000001
[ 28.555739] 0d90 00000000 00000001 00000000 00000002 00000000 00000001 c0973734 00000001
[ 28.564828] 0db0 00000000 00000000 00000000 00000000 00000000 00000001 00000082 00000000
[ 28.573920] 0dd0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.583011]
[ 28.583011] R5: 0xc02f1000:
[ 28.587735] 1000 f1c00000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.596826] 1020 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.605914] 1040 00000000 00000000 00000001 00000000 00000000 00000000 00000000 00000000
[ 28.615004] 1060 00000000 00000000 00000000 00000000 c185f200 00000000 00000000 00000000
[ 28.624095] 1080 00000001 00000000 00000000 f1c13000 00000000 00000000 f1c00000 00000000
[ 28.633188] 10a0 00000000 00000000 00000000 f1c13000 f1c00000 c02f0d70 00000001 c1804fc0
[ 28.642281] 10c0 00000000 c1804f40 00000000 00000000 00000000 c02e1098 c185f000 00000000
[ 28.651373] 10e0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.660465]
[ 28.660465] R6: 0xc02f1004:
[ 28.665190] 1004 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.674280] 1024 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.683372] 1044 00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.692461] 1064 00000000 00000000 00000000 c185f200 00000000 00000000 00000000 00000001
[ 28.701550] 1084 00000000 00000000 f1c13000 00000000 00000000 f1c00000 00000000 00000000
[ 28.710639] 10a4 00000000 00000000 f1c13000 f1c00000 c02f0d70 00000001 c1804fc0 00000000
[ 28.719734] 10c4 c1804f40 00000000 00000000 00000000 c02e1098 c185f000 00000000 00000000
[ 28.728827] 10e4 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.737920]
[ 28.737920] R8: 0xc185ef80:
[ 28.742644] ef80 00000001 00000000 c185ef00 c0280d67 00000001 c185efd0 c1861050 00000000
[ 28.751731] efa0 00000000 659e97a7 c02dba2c 00000000 00000000 81240002 00000199 00000000
[ 28.760822] efc0 00000001 00000000 c185ef00 c0280d76 c185ef91 c18610d0 00000000 00000000
[ 28.769912] efe0 00000000 669ed79a c02dba3c 00000000 00000000 81240002 0000019a 00000000
[ 28.779001] f000 c1858f80 ffffffff 00000000 00000000 c1830e10 c185a840 c1858f80 c185f21c
[ 28.788091] f020 c185ce1c c1830e18 c1851080 c02db470 c185ea00 00000007 00000007 00000000
[ 28.797183] f040 00000000 00000001 c185f048 c185f048 c02db5a8 c02e1054 00000000 00000000
[ 28.806275] f060 00000020 c185f264 c185ce64 7fffffff c185f070 c185f070 00000000 00000000
[ 28.815372] Process usb-hardware-sc (pid: 13, stack limit = 0xc18f21b8)
[ 28.822688] Stack: (0xc18f3ec8 to 0xc18f4000)
[ 28.827748] 3ec0: 00000001 c02f1084 c18f3ef4 c18f3ee0 c01b8938 c01ac984
[ 28.836979] 3ee0: c02f0e44 c02f1080 c18f3f34 c18f3ef8 c01b71e0 c01b8924 c18f3f24 c18f3f08
[ 28.846057] 3f00: c01e456c c00191e0 c028a4c0 c02f0e44 00000000 c02f0d8c c01b2360 00000000
[ 28.855187] 3f20: 00000000 00000000 c18f3f4c c18f3f38 c01b3168 c01b719c c02f0d8c 00000000
[ 28.864311] 3f40: c18f3f64 c18f3f50 c01b23a4 c01b30b4 00000000 c1835dc0 c18f3fac c18f3f68
[ 28.873636] 3f60: c00334e8 c01b2370 00000000 00000000 00000000 c02f0d8c 00000000 c18f3f7c
[ 28.882862] 3f80: c18f3f7c 00000000 c18f3f88 c18f3f88 c1835dc0 c0033434 00000000 00000000
[ 28.892691] 3fa0: 00000000 c18f3fb0 c000aef0 c0033444 00000000 00000000 00000000 00000000
[ 28.911209] 3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 28.920429] 3fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[ 28.929536] Backtrace:
[ 28.932330] [<c01ac974>] (USBC_EnableDpDmPullUp+0x0/0x2c) from [<c01b8938>] (sunxi_udc_bsp_init+0x24/0x7c)
[ 28.943077] r4:c02f1084 r3:00000001
[ 28.947125] [<c01b8914>] (sunxi_udc_bsp_init+0x0/0x7c) from [<c01b71e0>] (sunxi_usb_device_enable+0x54/0x180)
[ 28.958147] r5:c02f1080 r4:c02f0e44
[ 28.962170] [<c01b718c>] (sunxi_usb_device_enable+0x0/0x180) from [<c01b3168>] (usb_msg_center+0xc4/0x174)
[ 28.972939] [<c01b30a4>] (usb_msg_center+0x0/0x174) from [<c01b23a4>] (usb_hardware_scan_thread+0x44/0x6c)
[ 28.983668] r5:00000000 r4:c02f0d8c
[ 28.987732] [<c01b2360>] (usb_hardware_scan_thread+0x0/0x6c) from [<c00334e8>] (kthread+0xb4/0xc0)
[ 28.997700] r4:c1835dc0 r3:00000000
[ 29.001701] [<c0033434>] (kthread+0x0/0xc0) from [<c000aef0>] (ret_from_fork+0x14/0x24)
[ 29.010614] r7:00000000 r6:00000000 r5:c0033434 r4:c1835dc0
[ 29.016973] Code: e92dd818 e24cb004 e5903004 e1a04000 (e5930400)
[ 29.023729] ---[ end trace eac2d74e73483729 ]---
我设置为otg模式,usb插入pc后,提示加载usb_device驱动,然后就崩溃了
[ 0.623618] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008 [ 0.631124] g_ether gadget: g_ether ready [ 0.635626] [udc]: [sunxi_usb_udc]: binding gadget driver 'g_ether'
[ 6.486512] insmod_device_driver [ 6.486512] [ 6.493465] [udc]: sunxi_usb_device_enable start [ 6.501559] [udc]: open_usb_clock [ 6.505354] sunxi_udc_disable [ 6.510459] [udc]: usbd_stop_work [ 6.514323] sunxi_udc_enable called [ 6.520230] [udc]: CONFIG_USB_GADGET_DUALSPEED: USBC_TS_MODE_HS
感觉有点问题,0.623秒的时候加载了g_ether的模块,但6.48秒的时候才加载usb device的驱动,顺序是不是反了?g_ether模块应该是依赖usb_device驱动,应该在后面加载的
framebuffer驱动我还是花了几个晚上功夫的,为了不用xboot的dts还有driver架构,把reset,clock等好几个模块都改了一遍。如果再来一遍V3S的话,应该容易很多,因为两芯片同出一源代码很类似。
不过不打算继续自己搞裸奔了,可重用性太低,累死人。准备直接用xboot或者RTOS这样的平台来开发后续产品,开发驱动有标准,代码容易复用,功能也更强大。比如说切换V3S和F1C100S对xboot来说非常简单,上层完全不用改
目前我把xboot优化到1.3MB大小(带文件系统和图形库),启动到logo只需要0.85s(F1C100S),基本满足需要。V3S没测,上电应该更快。如果V3S和F1C100S支持QSPI就完美了。。。
xboot支持哪些文件系统?
看到有fatfs,其他几个不太了解,能不能支持ext2之类的呢
kernel的网站上有公告哪些是长期支持版本的
https://www.kernel.org/category/releases.html
4.4版本支持到2022年2月
https://whycan.cn/files/members/3/TB2V0Mawb5YBuNjSspoXXbeNFXa_352116497.jpg
https://whycan.cn/files/members/3/TB2SemnwDJYBeNjy1zeXXahzVXa_352116497.jpg
Its default is 408MHz.
f1c100s 官方标称 408Mhz, 不是600Mhz, 还有,
从图上看起来好像是 QFP 封装, 引脚伸出来那种(不知道有没有高清大图), 我大概猜到了是什么芯片.
先去求证一下.
我觉得这个应该就是F1C100S
从spiflash的尺寸和芯片尺寸大小比例看,主芯片明显没可能是128脚的QFP封装,而更像是qfn88
另外,从F1C100s引脚的用途,spiflash和晶振的位置,与F1C100s的引脚一致性很高,都是就近摆放原件
发一个我编译的最小Linux镜像,这个是为了测试最小能做到什么程度而做的镜像。
这个镜像是个linux系统,没有网络部分,只有有基本的命令行,库文件基本删的剩下必须的文件了,从加电到出现命令行提示符,大约8秒,按我的水平基本算优化到极限了。用sunxi-fel刷到spi上就可以用。
再次强调,只有命令行,大家不要要求太高,玩玩就可以了。
镜像下载: Licheepi_nano_spi.rar
作为一个曾经经历 rm -rf / 的人,我有话要说
某日,我的手下就是用rm -rf /将邮件服务器的根目录干掉了,幸好没有触及客户的数据,并且账号信息来自另外的数据库,所以几个小时左右恢复了。
操作的人完全不知道为什么犯错误,我找命令操作记录,发现执行了rm -rf /,问手下为啥执行这个命令,结果他说,他敲的是rm -rf ./,结果敲得太快,漏掉了".",真是巨坑。。。。。。。。。。。。。。。。。。。
我有点不明白,为啥网上的linux教程有很多教rm命令的时候,都是用rm -rf ./,这个命令一旦漏了".",就是巨坑
后来我强迫手下,禁止用./这样的操作,宁愿打全路径
我用一楼的bsp build & pack之后直接sunxi-fel 你说的那个full_img.fex看到log在内核启动处卡住了:
read partition: boot or recovery
boota: bad boot image magic, maybe not a boot.img?
try to read partition(boot) all
[ 0.653]sunxi flash read :offset 4000, 2359296 bytes OK
## Booting kernel from Legacy Image at 80007800 ...
Image Name: Linux-3.10.65
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2313480 Bytes = 2.2 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ...
OK
## Transferring control to Linux (at address 80008000)...
arch/arm/lib/bootm.c 72 Starting kernel ...
--r2 0x8096e120,images->ft_len= = 0 , working_fdt = 8096e120, bi_boot_params = 0你直接烧写你直接用sunxi-fel烧写spiflash没遇到这种情况吗?
有没有恢复 linux-3.10/drivers/mtd/devices/m25p80.c 这个文件?
要从nano官网的百度网盘下载bsp包里面恢复出来
我现在想将UART1改成UART0;修改了sys_config.fex文件将uart_debug_port改成了0,还修改了.config文件;然后发现使用PhoenixSuit软件烧入不了(之前使用UART1是可以的),研究好久发现UBOOT里面的sunivw1p1.h文件需要修改CONFIG_CONS_INDEX的定义为1,改完后可以正常烧入系统也能起来,但是串口输入不了,不清楚是不是还有哪里没改对?
在rootfs系统里面,/etc/inittab,有定义终端使用串口,应该也要改一下
# Put a getty on the serial port
ttyS1::respawn:/sbin/getty -L ttyS1 115200 vt100 # GENERIC_SERIAL
简单总结一下编译BSP的步骤
按照 step by step 编译全志 f1c100s 官方linux bsp 装好编译环境需要的软件
然后更新一下awk
sudo apt-get install gawk
更新依据 https://blog.csdn.net/dpppppp/article/details/53018132
下载源代码包并解压,第一楼里面的有链接
@assert 大神的f1c100s.tar.bz2代码包里面,需要将linux-3.10/drivers/mtd/devices/m25p80.c恢复原来的文件,@assert的代码包对spi做了分区处理,但和原厂bsp冲突,所以要恢复
还有,如果用@assert的包,需要重新下载buildroot/dl目录里面的文件(nano官方的包是文件最齐全的,可以用nano官方的包里面的文件)
进入解压目录,执行./build.sh,运行过程中有三次出错,参照下面的链接修正错误
https://blog.csdn.net/laohuang1122/article/details/44098291/
build完成后,运行./build.sh pack 生成镜像文件
镜像文件 tools/pack/sunivw1p1_linux_evb_uart0.img,用全志的工具刷进去nano就可以了
这个镜像文件有29M多,实际上包含了spi系统用的16M镜像和sd卡用的镜像,全志的工具可以自动识别具体环境刷镜像(我尝试刷sd卡,能正常刷完成,但sd卡启动到内核,显示start kernel就停住了,因为我计划用spi,所以没有继续研究下去)
如果用sunxi-fel.exe来刷,直接找tools/pack/out/full_img.fex这个文件,这个就是spi用的镜像
如果接串口调试,要接uart1
之前我一直接uart0,看代码包里面也针对nano硬件改了设备树的参数,以为是uart0,一直没输出,没找到问题,后来是晕哥提醒我用其他uart试一下,结果发现官方的bsp是用uart1的
暈哥, 現在可以開到 Kernel 了, 但另一個問題是 TF Card 不能讀到, 所以 mount 不到 root
我在 SPI boot 或者 TF Boot, uboot 裡都可以用 mmc 0:1 去讀到 zImage 和 dtb 上 ram , 也可以 boot 到 kernel用 SPI boot 進去 spi 的 root 後, 查到 /dev 有
mtd0, mtd1, mtd2, mtd3
mtd0ro, mtd1ro, mtd2ro, mtd3ro
mtdblock0, mtdblock1, mtdblock2, mtdblock3
但全都 mount 不起, 應該是 Kernel 的問題 , 知道那裡可以修改嗎 ?晕哥 说:用spi flash启动的时候, TF卡能识别吗,读写正常吗?
你的 u-boot 是自己编译的?如果自己编译按照10楼的截图修改。
spi系统启动,根文件系统是只读,有可能是这个原因导致的无法挂载
是的 , 上面的驗証應該是 dtb 的問題, 不是 zImage 和 bootargs 的問題
boot.scr 抄的 RAM 地址也跟 spi boot 的一樣 , 地址沒錯
mmc 中的檔案他也找到了, size 也對reading suniv-f1c100s-licheepi-nano.dtb
8545 bytes read in 32 ms (260.7 KiB/s)
reading zImage
2521280 bytes read in 261 ms (9.2 MiB/s)所以现在的问题是應該如何修改 sunivw1p1.dtsi 和 sunivw1p1-evb.dts, 实现kernel正确加载 TF卡了
看了之前的帖子,发现一个问题,@assert大神的镜像中,用的是bootm命令启动,你导入的kernel之zImage,这个应该有问题,bootm命令应该是用uImage镜像
晕哥 说:参考链接: https://whycan.cn/t_866.html
全志 img 要用专用烧写工具 PhoenixSuit
原来还有这个区别,我试一下
用phoenixsuit将镜像写进去了,用sunxi-fel读出来,也看到明显的标记,不过系统起不来,串口也没反应。
看来要设法自己弄,用u-boot 2018.1了
参考链接: https://whycan.cn/t_866.html
全志 img 要用专用烧写工具 PhoenixSuit
原来还有这个区别,我试一下
我跟據你的布局
取代了f1c100s-480272-argb-w25q256-lvgl.bin 中的 dtb 和 zImage, 保留了 uboot 和 rootfs
他看似一開始能讀到, 但去到中間就不行了 ( 下圖)
https://whycan.cn/files/members/1015/theirimageourdtbzimage1.png我這個是一樓的 bsp, 用 build.sh 直接做出來, 沒改源碼 , 你們有其他東西修改過嗎 ?
可以把你們現在做這 image 的 uboot, 和 kernel 源碼放出來參考下嗎 ? 我試試 build 能不能用一下.
另外留意到, Kernel 在 boot 的中途, [0.621601] , Kernel 找到4個 MTD, 所示的位置是
0x00000 - 0x80000 spl+uboot
0x80000 - 0x2e0000 kernel
0x2e0000 - 0x2f0000 script
0x400000 - 0x1000000 rootfs
跟現在放的位置都不同, 這個有什麼關系的 ?
之前主線 kernel , 需在dtb設定分區 (http://nano.lichee.pro/build_sys/build_flash.html)
現在這個 dtb 檔都找不到這分區的設定謝謝
你这个分区信息来自 linux-3.10/drivers/mtd/devices/m25p80.c这个文件里面的分区信息
839行
/* Register the whole NorFlash as a partition. */
static int partition_register(struct mtd_info *mtd, struct mtd_part_parser_data *ppdata)
{
struct mtd_partition partitions[] = {
/*{
.name = "NorFlash part0",
.offset = 0,
.size = MTDPART_SIZ_FULL
}*/
{
.name = "spl+uboot",
.offset = 0,
.size = 0x80000,
},
{
.name = "kernel",
.offset = 0x80000,
.size = 0x260000,
},
{
.name = "script",
.offset = 0x2e0000,
.size = 0x10000,
},
{
.name = "rootfs",
.offset = 0x400000,
.size = 0x1000000 - 0x400000,
},
};
pr_info("%s: enter\n", __func__);
return mtd_device_parse_register(mtd, NULL, ppdata, partitions, sizeof(partitions)/sizeof(struct mtd_partition));
}
awk line function strtonu never defined
编译报awk错误:
regenerate rootfs cpio
15757 块
16892 块
awk: line 2: function strtonum never defined
awk: line 2: function strtonum never defined
ERROR: build kernel Failed解决办法:
sudo apt-get install gawk
哈哈,找了同一个连接,没想到系统自带的awk不行,一定要gawk
为什么我编译到最后,没有生成img文件?
./build.sh 到最后,出现build kernel error
https://whycan.cn/files/members/1028/1.png./build.sh pack 没有看到有生成的img文件,当中还有个image.cfg的错误
https://whycan.cn/files/members/1028/2.png有哪个环节有错误?
好吧,我来自问自答
第一个错误解决方法就是 sudo apt-get install gawk
解决第一个,第二个就自动解决了
页次: 1