源码包下载地址: http://oslife.top/f1c600.tar.bz2
本站临时下载地址: f1c600.tar.bz2
测试固件下载地址: f1c100s_c600sdk_16M_micropython.7z
启动到shell时间约35秒, 尚有优化空间。
感谢 @assert 网友
补充:
----------------------------------------------
参考链接: step by step 编译全志 f1c100s 官方linux bsp
在线
好消息, 已经搞定屏幕,直接用 sunxi-fel.exe 烧到spi flash即可。
烧录命令: sunxi-fel.exe -p spiflash-write 0 f1c100s-480272-argb-lvgl.bin
@assert 大神固件在此: f1c100s-480272-argb-lvgl.7z
调试串口 PE0, PE1
进入shell之后输入 demox
自动运行 littlevgl 程序。
更详细的烧录资料: https://whycan.cn/t_993.html
!!!重要, 该固件由于jffs2文件系统原因不支持 W25Q128/256 等spi flash, 支持MX25L128/256.
在线
离线
眼拙,居然没看到 3# 的提示。
离线
使用主线Uboot引导BSP内核启动出现问题,前来求助:
uboot传递的bootargs参数为: console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw
uboot 执行的命令为:
load mmc 0:1 0x80C00000 suniv-f1c100s-licheepi-nano.dtb (对应bsp的dtb已修改为此名称)
load mmc 0:1 0x80500000 zImage
bootz 0x80500000 - 0x80C00000
内核部分使用5.5版本的 arm-linux-gnueabi 进行编译,使用了 sunivw1p1smp_defconfig 后做了一些修改,config文件在此:.config
现在启动的启动信息如下:(读完dtb后自动重启,并跳出dram初始化失败信息)
=> setenv bootargs console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw
=> load mmc 0:1 0x80C00000 suniv-f1c100s-licheepi-nano.dtb
reading suniv-f1c100s-licheepi-nano.dtb
23705 bytes read in 25 ms (925.8 KiB/s)
=> load mmc 0:1 0x80500000 zImage
reading zImage
2542936 bytes read in 141 ms (17.2 MiB/s)
=> bootz 0x80500000 - 0x80C00000
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
reserving fdt memory region: addr=81000000 size=10000
Loading Device Tree to 80e5d000, end 80e65c98 ... OK
U-Boot SPL 2018.01-05676-g00188782ee (Apr 08 2018 - 16:10:25)
DRAM:
如若使用主线的dtb,读取dtb后则卡在 Starting kernel ...
想知道是内核配置,dts,还是uboot传参的问题
最近编辑记录 Biglion (2018-05-23 13:53:48)
离线
bootz 0x80000000 - 0x80C00000
==>
bootz 0x80500000 - 0x80C00000
是不是上面的地址错了?
不小心这里粘贴时候搞错了,实际操作还是用的0x80500000的
DRAM:DRAM initialization failed: dram[0x1] != 0x0.
离线
nano的声卡好用么?
离线
晕哥,我使用了你的SPI FLASH 镜像能发现一个声卡。
但是我自己编译的解析dtb的时候出错了。
uboot是主线的,kernel是你提供的bsp里面的,dts也是 bsp kernel里面的,rootfs是我确定能用的一个,已经把alsa工具集放进去了。
使用的交叉编译环境为 (Linaro GCC 7.2-2017.11)
启动过程中出问题了,
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
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
reserving fdt memory region: addr=81000000 size=10000
Loading Device Tree to 816f7000, end 816ffeec ... OK
fdt_find_or_add_subnode: chosen: FDT_ERR_BADSTRUCTURE
ERROR: /chosen node create failed
- must RESET the board to recover.
能请您帮我分析一下嘛!
离线
https://whycan.cn/files/members/3/QQ20180418224402.png
源码包下载地址: http://oslife.top/f1c600.tar.bz2
本站临时下载地址: f1c600.tar.bz2测试固件下载地址: f1c100s_c600sdk_16M_micropython.7z
启动到shell时间约35秒, 尚有优化空间。感谢 @assert 网友
測試過測試固件 f1c100s_c600sdk_16M_micropython.bin 可以在 W25Q128 用後
我用這源碼抓下來, 除 compile error 的 bug 外, 源碼沒修改
./build
./build pack
最後做出來的影像檔 sunivw1p1_linux_evb_uart0.img , 有 30.5mb,
現在這個 img 太大了, 都放不入 16M 的 W25Q128 ?
怎樣可以做到 bin 呢 ?
謝謝
离线
晕哥, 我跟你建议用了主线 u-boot
再加 1 楼的 C600 BSP, 用 build.sh , 做出 zImage 和 dtb 檔
再改名成 suniv-f1c100s-licheepi-nano.dtb 给 u-boot 用
一开机时, 出现 13 楼的问题 FDT_ERR_BADSTRUCTURE
然后跟据你 10 楼的建议去修改 u-boot, 做出 u-boot-sunxi-with-spl.bin 放进去
结果也是一样 , 有那部份做错了吗 ?
13 楼最后有没有解决到问题 ?
谢谢
离线
@assert 大神的F1C100s跑InfoNES模拟器
这个的原理是什么?直接framebuffer操作吗还是SDL,看起来很流畅
离线
是的, 3 個位置都改了, 分別就在於
未改前, boot 起來直接跳到這個位置
而改了之後, 他會在這位置停一下, 大概 1 分鐘後才繼續
离线
我把三樓和六樓的 bin , 用 hex editor 拆開, 看看想抽 dtb 出來
看來位置跟我之前用 pack_flash_img.sh 做出來的都不一樣, 想確認一下
我跟 http://nano.lichee.pro/build_sys/build_flash.html , 他有個 pack_to_flash.sh
0x0000000 - 0x0100000 uboot 1024k
0x0100000 - 0x0110000 dtb 64k
0x0110000 - 0x0510000 zImage 4096k
0x0510000 - 0x1000000 rootfs
三樓和六樓的bin,
0x0100000 找到 zImage,
0x0350000 找到 dtb
你用什麼方法 pack ? 或者有沒有具體 memory map, 我自己修改位置去 pack 再試
謝謝
离线
文件下载: f1c100s_bsp_linux_split.7z
flash 布局:
u-boot+env 0 0x100000
u-boot env 0xf8000 0x8000
zImage 0x100000 0x250000
dtb 0x350000 0x7000
rootfs(jffs2) 0x400000 0xC00000
提取方式:
dd if=f1c100s-480272-argb-lvgl.bin of=u-boot.bin bs=$((0x100000)) count=1
dd if=f1c100s-480272-argb-lvgl.bin of=zImage.bin bs=1 skip=$((0x100000)) count=$((0x250000))
dd if=f1c100s-480272-argb-lvgl.bin of=dtb.bin bs=1 skip=$((0x350000)) count=$((0x7000))
dd if=f1c100s-480272-argb-lvgl.bin of=rootfs_jffs2.bin bs=1 skip=$((0x400000)) count=$((0xC00000))
烧录方式:
sunxi-fel.exe -p spiflash-write 0 u-boot.bin
sunxi-fel.exe -p spiflash-write 0x100000 zImage.bin
sunxi-fel.exe -p spiflash-write 0x350000 dtb.bin
sunxi-fel.exe -p spiflash-write 0x400000 rootfs_jffs2.bin
在线
我跟據你的布局
取代了f1c100s-480272-argb-w25q256-lvgl.bin 中的 dtb 和 zImage, 保留了 uboot 和 rootfs
他看似一開始能讀到, 但去到中間就不行了 ( 下圖)
我這個是一樓的 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 檔都找不到這分區的設定
謝謝
离线
请教1楼的 ALSA device list:
#0: audiocodec
是如何配置出来的?谢谢!
最近编辑记录 heirun (2018-07-26 16:21:32)
离线
为什么我编译到最后,没有生成img文件?
./build.sh 到最后,出现build kernel error
./build.sh pack 没有看到有生成的img文件,当中还有个image.cfg的错误
有哪个环节有错误?
离线
一个新装的ubuntu 14.04 LTS环境,按照贴在上的安装了对应的包
试过用16.04 LTS也是一样的
离线
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
在线
为什么我编译到最后,没有生成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
解决第一个,第二个就自动解决了
离线
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
离线
build.sh pack 生成的 sunivw1p1_linux_evb_uart0.img
用sunxi-fel.exe 的工具刷进licheepinano,没法启动
用sunxi-fel.exe 重新读出来,发现镜像是从16M开始的数据,就是说前面的16M被后面的15M数据覆盖了
离线
我跟據你的布局
取代了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));
}
离线
参考链接: https://whycan.cn/t_866.html
全志 img 要用专用烧写工具 PhoenixSuit
原来还有这个区别,我试一下
离线
晕哥 说:参考链接: https://whycan.cn/t_866.html
全志 img 要用专用烧写工具 PhoenixSuit
原来还有这个区别,我试一下
用phoenixsuit将镜像写进去了,用sunxi-fel读出来,也看到明显的标记,不过系统起不来,串口也没反应。
看来要设法自己弄,用u-boot 2018.1了
离线
有三组串口,都试一下,或许有新发现。
不会吧,不用uart0?
我看了设备树文件里面确实是定义了PE0和PE1作为uart0的,难道内核不是用uart0?
离线
暈哥, 後來我把 LCD 從 dts 去掉, 就可以用 spi flash boot 到了, 但 spi flash 太小, 有沒有辦法可以把 Kernel 改回在 SDCard boot ?
我用 Nano_tf_800480.bin 做了可 boot 的 sdcard, 然後把 Kernel 和 dtb 檔換成這個 C600 bsp 的
uboot 就顯示 DRAM:DRAM initialization failed
另外 Soundcard 好像一直也 init failed, 看到上面模擬器的片, 也沒有聲音 , 這個有沒有方法解決呢 ?
謝謝
离线
1. 建议用32M的spi flash, 比如 MX25L256, W25Q256, TF/SDCard不适合产品,可靠性太差,玩玩另当别论.
2. 从TF卡启动修改 u-boot即可, 参考 https://whycan.cn/t_1180.html 烧录到tf卡方法参考: https://whycan.cn/t_993.html#p4317
3. 顯示 DRAM:DRAM initialization failed 这个不知道什么问题
4. 声卡是正常的, 要配一下 tinymix 混音器
在线
暈哥, 我用可 boot 到 TF 的 bin, uboot 已經是設計給 boot TF 的, 取代 dtb 和 zImage,
他讀到 zImage 和 dtb, 但也 boot 不起, 是不是 Kernel 內也有些東西要改 ?
离线
理论上不需要重新编译kernel,
因为无论kernel在 spi flash,还是 tf 卡,
最终都是加载到 ddr.
你在 bootargs 里面加上 earlyprintk(估计要修改 linux 的 .config然后重新编译, 改u-boot启动参数没用) 试一试,
都没有出现 starting kernel ... 就挂了
在线
在 Kernel 內的 sunivw1p1.dtsi , bootargs 都是跟原先的, 沒改過
bootargs = "earlyprintk=sunxi-uart,0x01c25000 loglevel=8 initcall_debug=1 console=ttyS0 init=/init";
在 kernel menuconfig boot option 內的 Default kernel command string 也是一樣
已經有 earlyprintk , 可以 boot spi, 現在是要刪去嗎 ?
离线
我在 spi 能 boot 的情況下, 試過把 bootargs 的 root 和 init 刪去, 最後淨下 console , 他也能開到 kernel, 只是最後找不到 root, 那很正常,
bootargs 應該不會影響到這連 Starting Kernel 也出不來.
另外, 我在 f1c600 kernel make menuconfig 看到, 他 default 設定是讀取 uboot 的 bootargs, 所以應該是跟 boot.scr 的 ( boot.scr 也有 earlyprintk )
我想問題應該是出在 dtb 檔上, 我把 Nano_tf_800480.bin 原本的 dtb 和 rootfs 保留, 換了 boot.scr 和 f1c600 的 zImage
他也可以出到 Starting Kernel... 然後出 Unrecognized/unsupported device tree compatible list, 這也正常, zImage 要跟 dtb 要配合
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
reading /boot.scr
291 bytes read in 17 ms (16.6 KiB/s)
## Executing script at 80c50000
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)
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 80e60000, end 80e65160 ... OKStarting kernel ...
Read dt_phys 80e60000
Read devtree c0e60000Read dt_root 0xc051f68cd00dfeed
Error: unrecognized/unsupported device tree compatible list:
[ 'licheepi,licheepi-nano' 'allwinner,suniv-f1c100s' 'allwinner,suniv' ]Available machine support:
ID (hex) NAME
ffffffff Allwinner A1X (Device Tree)
0000067f f1c100sPlease check your kernel config and/or bootloader.
有沒有頭緒 sunivw1p1.dtsi 和 sunivw1p1-evb.dts 有那些部份需要修改去支持 TF boot 嗎 ?
boot.cmd 如下 (生成 boot.scr 用)
setenv bootargs earlyprintk console=tty0 console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw
load mmc 0:1 0x80C00000 suniv-f1c100s-licheepi-nano.dtb
load mmc 0:1 0x80008000 zImage
bootz 0x80008000 - 0x80C00000
离线
是的 , 上面的驗証應該是 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卡了
离线
坑哥,能讲一下f1c100s启动流程么,我想裸奔,我不知道是不是默认从spi flash启动,从什么地址开始拷贝到内存?
离线
全志V3s手册V1.0: Allwinner_V3s_Datasheet_V1.0.pdf
全志f1c100s手册: Allwinner_F1C600_User_Manual_V1.0.pdf手册
本来想去全志 f1c100s/f1c600手册里面找,
结果里面根本没有提 boot system,
还是从上面的V3s手册里面找.
1. 上电后, f1c100s内部 BROM (芯片内置,无法擦除) 启动,
2. 首先检查 SD0 有没有插卡, 如果有插卡就读卡 8k偏移数据,是否是合法的启动数据, 如果是BROM 引导结束, 否则进入下一步
3. 检测SPI0 NOR FLASH(W25QXXX, MX25LXXX) 是否存在, 是否有合法的启动数据, 如果是BROM 引导结束, 否则进入下一步
4. 检测SPI0 NAND FLASH 是否存在, 是否有合法的启动数据, 如果是BROM 引导结束, 否则进入下一步
5. 因为找不到任何可以引导的介质, 系统进入usb fel 模式, 可以用USB烧录了。
这就是为什么 要烧录程序,需要下拉 MISO/CLK 到地的原因,让BROM 检测不到spi flash的存在.
在线
如果从nano板子上spi flash启动,是从什么地址开始拷贝,拷到内存什么位置?
离线
在线
是的 , 上面的驗証應該是 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镜像
离线
终于搞定bsp的linux启动了,bsp的u-boot-2014.07+linux-3.10.65,spi启动正常了,下面要看看如何定制内核了。
离线
终于搞定bsp的linux启动了,bsp的u-boot-2014.07+linux-3.10.65,spi启动正常了,下面要看看如何定制内核了。
大神是怎么做到的?
离线
暈哥, 現在可以開到 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楼的截图修改。
离线
暈哥, 現在可以開到 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系统启动,根文件系统是只读,有可能是这个原因导致的无法挂载
离线
简单总结一下编译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的
最近编辑记录 ippen (2018-08-06 10:13:31)
离线
简单总结一下编译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的
我现在想将UART1改成UART0;修改了sys_config.fex文件将uart_debug_port改成了0,还修改了.config文件;然后发现使用PhoenixSuit软件烧入不了(之前使用UART1是可以的),研究好久发现UBOOT里面的sunivw1p1.h文件需要修改CONFIG_CONS_INDEX的定义为1,改完后可以正常烧入系统也能起来,但是串口输入不了,不清楚是不是还有哪里没改对?
离线
是改成这样吗:
[uart_para]
uart_debug_port = 1
uart_debug_tx = port:PE1<5><1><default><default>
uart_debug_rx = port:PE0<5><1><default><default>
确认硬件连接没有问题, 串口线没有问题?
离线
我现在想将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
离线
是改成这样吗:
[uart_para]
uart_debug_port = 1
uart_debug_tx = port:PE1<5><1><default><default>
uart_debug_rx = port:PE0<5><1><default><default>确认硬件连接没有问题, 串口线没有问题?
我是这样改的
[uart_para]
uart_debug_port = 0
uart_debug_tx = port:PE1<5><1><default><default>
uart_debug_rx = port:PE0<5><1><default><default>,port选的0,硬件连接是没有问题的,串口线也没有问题,我用一个UART0的镜像是完全没问题的。
最近编辑记录 heirun (2018-08-06 14:16:45)
离线
heirun 说:我现在想将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
这个是要怎么改的呀,我改了这个文件以后编译又被替换成ttyS1了
INFO: build rootfs ...
Could not get object for HEAD. Skipping.
error: refs/heads/master does not point to a valid object!
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
fatal: bad object HEAD
make: Entering directory `/home3/heirun/nano/C600/f1c600/buildroot'
/bin/sed -i -e '/# GENERIC_SERIAL$/s~^.*#~ttyS1::respawn:/sbin/getty -n -l /bin/ash -L ttyS1 115200 vt100 #~' \
/home3/heirun/nano/C600/f1c600/out/sunivw1p1/linux/common/buildroot/target/etc/inittab
离线
直接用 vi 命令修改这个文件: out/sunivw1p1/linux/common/buildroot/target/etc/inittab
就是改的这个文件呢,改完编译后又变成ttyS1了,,,
离线
TF 因為不能掛到 root, 所以 boot 不到 shell,
使用同樣的 kernel 和 dtb, 只是能用 spi 啟動到 shell, 再 mount tf,
tf 內有2 個分區, 一個是 vfat 放 zImage, dtb, boot.scr, 另一個是 ext4 放 rootfs
mtdblock0, mtdblock1, mtdblock2, mtdblock3 全都 mount 不到
我用之前 @assert 的 spi image boot 起, f1c100s-480272-argb-w25q256-lvgl.bin , 同樣也是讀不到 tf
mnt >>>00:01 #mount -t fat /dev/mtdblock3 /mnt/sdcard
mount: mounting /dev/mtdblock3 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t fat /dev/mtdblock2 /mnt/sdcard
mount: mounting /dev/mtdblock2 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t fat /dev/mtdblock1 /mnt/sdcard
mount: mounting /dev/mtdblock1 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t fat /dev/mtdblock0 /mnt/sdcard
mount: mounting /dev/mtdblock0 on /mnt/sdcard failed: No such devicemnt >>>00:01 #mount -t ext4 /dev/mtdblock3 /mnt/sdcard
mount: mounting /dev/mtdblock3 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t ext4 /dev/mtdblock2 /mnt/sdcard
mount: mounting /dev/mtdblock2 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t ext4 /dev/mtdblock1 /mnt/sdcard
mount: mounting /dev/mtdblock1 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t ext4 /dev/mtdblock0 /mnt/sdcard
mount: mounting /dev/mtdblock0 on /mnt/sdcard failed: No such device
如果你能启动到shell,
并且rootfs是在tf卡第二个分区,
说明你的tf已经挂载上了。mtd挂载是找 /dev/mtdblockX
SPI Boot 的 rootfs 用 jffs2, 是 rw 的, 我也試過開另一個資料夾掛載也同樣失敗
nakanoyip 说:暈哥, 現在可以開到 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系统启动,根文件系统是只读,有可能是这个原因导致的无法挂载
离线
現在他可以認到 TF /dev/mmcblk0p2 分區了,
我用 TF boot, 他出現掛不到 rootfs
JBD2: Unrecognised features on journal
EXT4-fs (mmcblk0p2): error loading journal
我用 spi boot 入 shell (spi root),
mount -t ext4 /dev/mmcblk0p2 /mnt/sdcard
錯誤也一樣,
用 mount -t ext4 -o rw,noload /dev/mmcblk0p2 /mnt/sdcard
才能掛起
bootargs 掛 rootfs 可以有不讀 journal 的 option 嗎 (noload) ?
TF 因為不能掛到 root, 所以 boot 不到 shell,
使用同樣的 kernel 和 dtb, 只是能用 spi 啟動到 shell, 再 mount tf,
tf 內有2 個分區, 一個是 vfat 放 zImage, dtb, boot.scr, 另一個是 ext4 放 rootfs
mtdblock0, mtdblock1, mtdblock2, mtdblock3 全都 mount 不到我用之前 @assert 的 spi image boot 起, f1c100s-480272-argb-w25q256-lvgl.bin , 同樣也是讀不到 tf
mnt >>>00:01 #mount -t fat /dev/mtdblock3 /mnt/sdcard
mount: mounting /dev/mtdblock3 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t fat /dev/mtdblock2 /mnt/sdcard
mount: mounting /dev/mtdblock2 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t fat /dev/mtdblock1 /mnt/sdcard
mount: mounting /dev/mtdblock1 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t fat /dev/mtdblock0 /mnt/sdcard
mount: mounting /dev/mtdblock0 on /mnt/sdcard failed: No such devicemnt >>>00:01 #mount -t ext4 /dev/mtdblock3 /mnt/sdcard
mount: mounting /dev/mtdblock3 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t ext4 /dev/mtdblock2 /mnt/sdcard
mount: mounting /dev/mtdblock2 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t ext4 /dev/mtdblock1 /mnt/sdcard
mount: mounting /dev/mtdblock1 on /mnt/sdcard failed: No such device
mnt >>>00:01 #mount -t ext4 /dev/mtdblock0 /mnt/sdcard
mount: mounting /dev/mtdblock0 on /mnt/sdcard failed: No such device晕哥 说:如果你能启动到shell,
并且rootfs是在tf卡第二个分区,
说明你的tf已经挂载上了。mtd挂载是找 /dev/mtdblockX
SPI Boot 的 rootfs 用 jffs2, 是 rw 的, 我也試過開另一個資料夾掛載也同樣失敗
ippen 说:nakanoyip 说:暈哥, 現在可以開到 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系统启动,根文件系统是只读,有可能是这个原因导致的无法挂载
离线
简单总结一下编译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的
我用一楼的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没遇到这种情况吗?
离线
我用一楼的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包里面恢复出来
离线
console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootwait
试一试这组参数.
最後我加了 rootflags=noload 就沒問題了.
現在無論由 SPI Boot 還是 TF Boot 都沒問題了.
謝謝幫忙
离线
晕哥 说:console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootwait
试一试这组参数.
最後我加了 rootflags=noload 就沒問題了.
現在無論由 SPI Boot 還是 TF Boot 都沒問題了.
謝謝幫忙
方便把具体的 bootargs 参数写出来吗?获取哪天我会碰到.
离线
暈哥, 之前你說 audio codec 要用 tinyalsa,
我跟據 F1C600 User Manual, Page 157, Audio Codec Block Diagram , 設定 Codec.
再用 tinyplay 播放 wav 檔, 在 HPR , 和 HPL 也沒有聲音.
你有試過可以用嗎 ?
我 mixer 設定如下
# tinymix contents
Number of controls: 37
ctl type num name value
0 INT 1 dac digital volume 63 (range 0->63)
1 BOOL 1 dac: right chanel en On
2 BOOL 1 dac: left chanle en On
3 BOOL 1 dac: right analog output mixer en On
4 BOOL 1 dac: left analog output mixer en On
5 BOOL 1 dac: right mute Off
6 BOOL 1 dac: left mute Off
7 BOOL 1 hp right source select: 0-dac, 1-mixer Off
8 BOOL 1 hp left source select: 0-dac, 1-mixer Off
9 BOOL 1 dac: right mixer mute: mic Off
10 BOOL 1 dac: right mixer mute: linein Off
11 BOOL 1 dac: right mixer mute: FM Off
12 BOOL 1 dac: right mixer mute: right dac On
13 BOOL 1 dac: right mixer mute: left dac On
14 BOOL 1 head phone power On
15 BOOL 1 dac: left mixer mute: mic Off
16 BOOL 1 dac: left mixer mute: linein Off
17 BOOL 1 dac: left mixer mute: FM Off
18 BOOL 1 dac: left mixer mute: right dac On
19 BOOL 1 dac: left mixer mute: left dac On
20 BOOL 1 dac: left hpout to right hpout Off
21 BOOL 1 dac: right hpout to left hpout Off
22 INT 1 head phone volume 63 (range 0->63)
23 INT 1 MICIN GAIN control 3 (range 0->7)
24 INT 1 LINEIN GAIN control 0 (range 0->7)
25 INT 1 ADC INPUT GAIN control 3 (range 0->7)
26 INT 1 COS slop time control for Anti-pop 1 (range 0->3)
27 BOOL 1 ADC mixer mute for mic Off
28 BOOL 1 ADC mixer mute for FML Off
29 BOOL 1 ADC mixer mute for FMR Off
30 BOOL 1 ADC mixer mute for linein Off
31 BOOL 1 ADC mixer mute for left ouput Off
32 BOOL 1 ADC mixer mute for right ouput Off
33 BOOL 1 ADC PA speed select Off
34 INT 1 ADC FM volume 0 (range 0->7)
35 BOOL 1 ADC MIC Boost AMP en Off
36 INT 1 ADC MIC Boost AMP gain control 4 (range 0->7)
找到掛載的 Soundcard
# tinypcminfo
Info for card 0, device 0:PCM out:
Access: 0x000009
Format[0]: 0x000044
Format[1]: 00000000
Format Name: S16_LE, S24_LE
Subformat: 0x000001
Rate: min=8000Hz max=192000Hz
Channels: min=1 max=2
Sample bits: min=16 max=32
Period size: min=32 max=32768
Period count: min=1 max=8PCM in:
Access: 0x000009
Format[0]: 0x000044
Format[1]: 00000000
Format Name: S16_LE, S24_LE
Subformat: 0x000001
Rate: min=8000Hz max=48000Hz
Channels: min=1 max=2
Sample bits: min=16 max=32
Period size: min=32 max=32768
Period count: min=1 max=8# cat /proc/asound/cards
0 [audiocodec ]: audiocodec - audiocodec
audiocodec
离线
bootargs=earlyprintk console=tty0 console=ttyS0,115200 panic=5 rootwait rootfstype=ext4 root=/dev/mmcblk0p2 rw rootflags=noload init=/linuxrc
nakanoyip 说:晕哥 说:console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootwait
试一试这组参数.
最後我加了 rootflags=noload 就沒問題了.
現在無論由 SPI Boot 還是 TF Boot 都沒問題了.
謝謝幫忙方便把具体的 bootargs 参数写出来吗?获取哪天我会碰到.
离线
有没有恢复 linux-3.10/drivers/mtd/devices/m25p80.c 这个文件?
要从nano官网的百度网盘下载bsp包里面恢复出来
你的意思是,要用官方nano云盘里的m25p80.c文件替换一楼压缩包里面的m25p80.c这个文件然后编译吗?
离线
暈哥, 現在 uboot 和 kernel 可以做到 spi nand boot 嗎 ? 我看 F1C100s 的規格書都有寫可以支持
离线
在线
有沒有大神有做過有這代碼和修改 kernel , uboot 的經驗, 可以分享下 ?
nakanoyip 说:暈哥, 現在 uboot 和 kernel 可以做到 spi nand boot 嗎 ? 我看 F1C100s 的規格書都有寫可以支持
brom支持spi nand, 也就是说能从nand里面加载boot0(spl),然后spl接管了系统。
硬件没有问题,关键是自己写代码支持了。
离线
nano开机logo出不来是怎么回事?求指导
离线
没有,屏幕上全是些线条,不知道是不是哪里没配置对
离线
用全志官方给的测试固件上面log打印的是480X272,我的也改过来了
[lcd0]
lcd_used = 1
lcd_driver_name = "default_lcd"
lcd_if = 0
lcd_x = 480
lcd_y = 272
lcd_width = 150
lcd_height = 94
lcd_dclk_freq = 33
lcd_pwm_used = 0
lcd_pwm_ch = 0
lcd_pwm_freq = 10000
lcd_pwm_pol = 0
lcd_hbp = 46
lcd_ht = 1055
lcd_hspw = 0
lcd_vbp = 23
lcd_vt = 525
lcd_vspw = 0
lcd_hv_if = 0
lcd_hv_smode = 0
lcd_hv_s888_if = 0
lcd_hv_syuv_if = 0
lcd_hv_vspw = 0
lcd_hv_hspw = 0
lcd_lvds_if = 0
lcd_lvds_colordepth = 1
lcd_lvds_mode = 0
lcd_lvds_ch = 0
lcd_lvds_bitwidth = 0
lcd_lvds_io_cross = 0
lcd_cpu_if = 0
lcd_frm = 0
lcd_io_phase = 0x0000
lcd_gamma_en = 0
lcd_bright_curve_en = 0
lcd_cmap_en = 0
deu_mode = 0
lcdgamma4iep = 22
lcd_io_cfg0 = 0x04000000
smart_color = 90
lcd_bl_en_used = 1
lcd_bl_en = port:PE12<1><0><default><1>
lcd_power = port:PA00<1><0><default><1>
lcdd3 = port:PD01<2><0><default><default>
lcdd4 = port:PD02<2><0><default><default>
lcdd5 = port:PD03<2><0><default><default>
lcdd6 = port:PD04<2><0><default><default>
lcdd7 = port:PD05<2><0><default><default>
lcdd10 = port:PD06<2><0><default><default>
lcdd11 = port:PD07<2><0><default><default>
lcdd12 = port:PD08<2><0><default><default>
lcdd13 = port:PD09<2><0><default><default>
lcdd14 = port:PD10<2><0><default><default>
lcdd15 = port:PD11<2><0><default><default>
lcdd19 = port:PD13<2><0><default><default>
lcdd20 = port:PD14<2><0><default><default>
lcdd21 = port:PD15<2><0><default><default>
lcdd22 = port:PD16<2><0><default><default>
lcdd23 = port:PD17<2><0><default><default>
lcdclk = port:PD18<2><0><default><default>
lcdde = port:PD19<2><0><default><default>
;lcdhsync = port:PD20<2><0><default><default>
;lcdvsync = port:PD21<2><0><default><default>
离线
还是满屏的线条,比之前更密集些,不懂怎么上图,之前看到有帖子的,
离线
离线
刚确认了下,确实是800X480,改过来还是线条,正常起来屏幕应该是个什么状态呢
离线
U-Boot SPL 2018.01-05676-g0018878-dirty (Aug 05 2018 - 11:29:58)
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-05676-g0018878-dirty (Aug 05 2018 - 11:29:58 +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: 2 1 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
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 80e61000, end 80e65f3e ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.15.0-rc8-licheepi-nano+ (egsen@ubuntu) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #2 Tue Aug 14 21:19: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: fast init done
[ 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 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: 22672K/32768K available (6144K kernel code, 237K rwdata, 1408K rodata, 1024K init, 246K bss, 10096K 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) ( 238 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 247 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.000047] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000114] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000656] Console: colour dummy device 80x30
[ 0.000747] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)
[ 0.070236] pid_max: default: 32768 minimum: 301
[ 0.070550] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.070595] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.072066] CPU: Testing write buffer coherency: ok
[ 0.073767] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.076322] devtmpfs: initialized
[ 0.082878] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.082952] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.083208] pinctrl core: initialized pinctrl subsystem
[ 0.085245] NET: Registered protocol family 16
[ 0.086712] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.088473] cpuidle: using governor menu
[ 0.114357] SCSI subsystem initialized
[ 0.114702] usbcore: registered new interface driver usbfs
[ 0.114850] usbcore: registered new interface driver hub
[ 0.115044] usbcore: registered new device driver usb
[ 0.115473] pps_core: LinuxPPS API ver. 1 registered
[ 0.115503] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.115565] PTP clock support registered
[ 0.116058] Advanced Linux Sound Architecture Driver Initialized.
[ 0.117600] clocksource: Switched to clocksource timer
[ 0.144110] NET: Registered protocol family 2
[ 0.145537] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.145616] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.145666] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.145953] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.146013] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.146490] NET: Registered protocol family 1
[ 0.147851] RPC: Registered named UNIX socket transport module.
[ 0.147893] RPC: Registered udp transport module.
[ 0.147909] RPC: Registered tcp transport module.
[ 0.147925] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.150136] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.151954] Initialise system trusted keyrings
[ 0.152487] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.169929] NFS: Registering the id_resolver key type
[ 0.170015] Key type id_resolver registered
[ 0.170036] Key type id_legacy registered
[ 0.170154] jffs2: version 2.2. (NAND) 漏 2001-2006 Red Hat, Inc.
[ 0.184548] Key type asymmetric registered
[ 0.184591] Asymmetric key parser 'x509' registered
[ 0.184799] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.184835] io scheduler noop registered
[ 0.184854] io scheduler deadline registered
[ 0.185640] io scheduler cfq registered (default)
[ 0.185674] io scheduler mq-deadline registered
[ 0.185693] io scheduler kyber registered
[ 0.186819] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
[ 0.196449] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.367557] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.374463] console [ttyS0] disabled
[ 0.394721] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A
[ 0.868350] console [ttyS0] enabled
[ 0.878908] panel-simple panel: panel supply power not found, using dummy regulator
[ 0.888341] SCSI Media Changer driver v0.25
[ 0.893854] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.900510] ehci-platform: EHCI generic platform driver
[ 0.906007] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.912309] ohci-platform: OHCI generic platform driver
[ 0.918000] usbcore: registered new interface driver usb-storage
[ 0.924967] udc-core: couldn't find an available UDC - added [g_cdc] to list of pending drivers
[ 0.934022] i2c /dev entries driver
[ 0.997727] sunxi-mmc 1c0f000.mmc: base:0x06f7e97f irq:19
[ 1.005147] usbcore: registered new interface driver usbhid
[ 1.010856] usbhid: USB HID core driver
[ 1.032777] NET: Registered protocol family 17
[ 1.037464] Key type dns_resolver registered
[ 1.044107] Loading compiled-in X.509 certificates
[ 1.059720] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc0739c38)
[ 1.068621] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc0738f1c)
[ 1.076287] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.083010] [drm] No driver support for vblank timestamp query.
[ 1.137014] Console: switching to colour frame buffer device 60x34
[ 1.160417] sun4i-drm display-engine: fb0: frame buffer device
[ 1.167546] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[ 1.176703] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[ 1.188693] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 1.194487] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 1.204644] hub 1-0:1.0: USB hub found
[ 1.208698] hub 1-0:1.0: 1 port detected
[ 1.214191] using random self ethernet address
[ 1.218825] using random host ethernet address
[ 1.225043] usb0: HOST MAC 3e:10:47:76:4b:a1
[ 1.229568] usb0: MAC 26:46:97:40:41:40
[ 1.233565] g_cdc gadget: CDC Composite Gadget, version: King Kamehameha Day 2008
[ 1.241128] g_cdc gadget: g_cdc ready
[ 1.245795] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.263420] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.270282] vcc3v3: disabling
[ 1.273267] ALSA device list:
[ 1.276232] #0: Loopback 1
[ 1.280065] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.288815] cfg80211: failed to load regulatory.db
[ 1.294340] Waiting for root device /dev/mtdblock3...
[ 202.987720] random: crng init done
@晕哥 这是怎么回事?
离线
可以幫忙問問能不能分享呢 ? 或者什麼條件下才可分享 ? 謝謝
@assert 做好了,但是没有开源,基于bsp linux f1c100s.
离线
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.15.0-rc8-licheepi-nano+ (egsen@ubuntu) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #2 Tue Aug 14 21:19: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: fast init done
[ 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 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: 22672K/32768K available (6144K kernel code, 237K rwdata, 1408K rodata, 1024K init, 246K bss, 10096K 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) ( 238 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 247 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.000047] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000114] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000659] Console: colour dummy device 80x30
[ 0.000751] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)
[ 0.070237] pid_max: default: 32768 minimum: 301
[ 0.070552] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.070598] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.072066] CPU: Testing write buffer coherency: ok
[ 0.073772] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.076332] devtmpfs: initialized
[ 0.082875] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.082948] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.083211] pinctrl core: initialized pinctrl subsystem
[ 0.085245] NET: Registered protocol family 16
[ 0.086716] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.088480] cpuidle: using governor menu
[ 0.114319] SCSI subsystem initialized
[ 0.114662] usbcore: registered new interface driver usbfs
[ 0.114814] usbcore: registered new interface driver hub
[ 0.115011] usbcore: registered new device driver usb
[ 0.115438] pps_core: LinuxPPS API ver. 1 registered
[ 0.115469] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.115531] PTP clock support registered
[ 0.116023] Advanced Linux Sound Architecture Driver Initialized.
[ 0.117568] clocksource: Switched to clocksource timer
[ 0.144060] NET: Registered protocol family 2
[ 0.145491] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.145573] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.145625] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.145910] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.145971] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.146451] NET: Registered protocol family 1
[ 0.147833] RPC: Registered named UNIX socket transport module.
[ 0.147879] RPC: Registered udp transport module.
[ 0.147897] RPC: Registered tcp transport module.
[ 0.147913] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.150120] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.151932] Initialise system trusted keyrings
[ 0.152465] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.169941] NFS: Registering the id_resolver key type
[ 0.170027] Key type id_resolver registered
[ 0.170049] Key type id_legacy registered
[ 0.170170] jffs2: version 2.2. (NAND) 漏 2001-2006 Red Hat, Inc.
[ 0.184565] Key type asymmetric registered
[ 0.184607] Asymmetric key parser 'x509' registered
[ 0.184810] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.184843] io scheduler noop registered
[ 0.184862] io scheduler deadline registered
[ 0.185643] io scheduler cfq registered (default)
[ 0.185677] io scheduler mq-deadline registered
[ 0.185694] io scheduler kyber registered
[ 0.186821] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
[ 0.196463] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.367473] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.374366] console [ttyS0] disabled
[ 0.394629] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A
[ 0.868257] console [ttyS0] enabled
[ 0.878827] panel-simple panel: panel supply power not found, using dummy regulator
[ 0.888250] SCSI Media Changer driver v0.25
[ 0.893776] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.900429] ehci-platform: EHCI generic platform driver
[ 0.905933] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.912233] ohci-platform: OHCI generic platform driver
[ 0.917929] usbcore: registered new interface driver usb-storage
[ 0.924895] udc-core: couldn't find an available UDC - added [g_cdc] to list of pending drivers
[ 0.933955] i2c /dev entries driver
[ 0.997694] sunxi-mmc 1c0f000.mmc: base:0x06f7e97f irq:19
[ 1.005118] usbcore: registered new interface driver usbhid
[ 1.010824] usbhid: USB HID core driver
[ 1.032698] NET: Registered protocol family 17
[ 1.037390] Key type dns_resolver registered
[ 1.044034] Loading compiled-in X.509 certificates
[ 1.059655] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc0739c38)
[ 1.068558] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc0738f1c)
[ 1.076226] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.082946] [drm] No driver support for vblank timestamp query.
[ 1.136957] Console: switching to colour frame buffer device 60x34
[ 1.160345] sun4i-drm display-engine: fb0: frame buffer device
[ 1.167479] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[ 1.176624] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[ 1.188616] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 1.194408] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 1.204549] hub 1-0:1.0: USB hub found
[ 1.208607] hub 1-0:1.0: 1 port detected
[ 1.214103] using random self ethernet address
[ 1.218743] using random host ethernet address
[ 1.224955] usb0: HOST MAC 3e:10:47:76:4b:a1
[ 1.229476] usb0: MAC 26:46:97:40:41:40
[ 1.233476] g_cdc gadget: CDC Composite Gadget, version: King Kamehameha Day 2008
[ 1.241036] g_cdc gadget: g_cdc ready
[ 1.245682] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.263334] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.270199] vcc3v3: disabling
[ 1.273185] ALSA device list:
[ 1.276151] #0: Loopback 1
[ 1.279956] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.288702] cfg80211: failed to load regulatory.db
[ 1.294233] Waiting for root device /dev/mtdblock3...
@晕哥 是不是分区不成功,根系统起不来,怎么弄?
离线
在线
mkdir rootfs
tar -xvf $YOUR_ROOTFS_FILE -C ./rootfs
cp -r $YOUR_MOD_FILE rootfs/lib/modules
mkfs.jffs2 -s 0x100 -e 0x10000 --pad=0xAF0000 -d rootfs/ -o jffs2.img
dd if=jffs2.img of=$YOUR_IMG_FILE bs=1K seek=5184 conv=notrunc
按这个来做为什么根文件系统 不行? spi flash的驱动或设备树(dts)没有加进来问题出在哪?
离线
修改内核源码目录下的 ./arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>;
status = "okay";
spi-max-frequency = <50000000>;
flash: w25q128@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "winbond,w25q128", "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <50000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x000000 0x100000>;
read-only;
};
partition@100000 {
label = "dtb";
reg = <0x100000 0x10000>;
read-only;
};
partition@110000 {
label = "kernel";
reg = <0x110000 0x400000>;
read-only;
};
partition@510000 {
label = "rootfs";
reg = <0x510000 0xAF0000>;
};
};
};
};
按这个来配置,这个不行?
离线
你说貌似没有把spi flash的驱动或设备树(dts)加进来,所以问配置是否这样?
离线
naka兄,你这中间改了哪里了呢,我也遇到同样的问题了~
暈哥, 現在可以開到 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 的問題 , 知道那裡可以修改嗎 ?
离线
谢谢总结!这两天一直搞这个...早点看到这里就少进很多坑了...哈
简单总结一下编译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的
离线
哪位兄弟可以传下800x480的固件,串口可以正常输出的固件,可以测试nano的板子,买的2块板烧了固件,屏幕有输出,但画面不太正常,串口一直没有输出,PA3,PA2接的。
谢谢了~~
离线
@assert 大神的F1C100s跑InfoNES模拟器
请问这个是基于linux系统的还是xboot或者其他系统?
离线
简单总结一下编译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的
请问这个有显示吗?我用git clone https://github.com/mirkerson/c600.git这个里面的源码编译起来后5寸800x480的屏幕没有显示,/dev/下面也没有fb或者disp设备,可能是什么问题?谢谢!
离线
官方的BSP编译出来是没有fb的...
按照晕哥的,https://whycan.cn/t_1522.html,编译生成fb-test* ,可以的
离线
官方的BSP编译出来是没有fb的...
按照晕哥的,https://whycan.cn/t_1522.html,编译生成fb-test* ,可以的
我用这个有fb设备,但是屏幕显示会部分花屏&闪烁,是5寸800x480的屏。
离线
按照教程编译,系统没能起来。。。
最终到:
[ 0.876230] Creating 4 MTD partitions on "spi0.0":
[ 0.881040] 0x000000000000-0x000000100000 : "u-boot"
[ 0.887252] 0x000000100000-0x000000110000 : "dtb"
[ 0.893118] 0x000000110000-0x000000510000 : "kernel"
[ 0.899099] 0x000000510000-0x000001000000 : "rootfs"
[ 0.905824] i2c /dev entries driver
[ 0.972547] sunxi-mmc 1c0f000.mmc: base:0x00fe434a irq:19
[ 0.997364] NET: Registered protocol family 17
[ 1.002049] Key type dns_resolver registered
[ 1.008527] Loading compiled-in X.509 certificates
[ 1.021817] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc07391b8)
[ 1.030722] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc073849c)
[ 1.038512] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.045179] [drm] No driver support for vblank timestamp query.
[ 1.099209] Console: switching to colour frame buffer device 60x34
[ 1.122527] sun4i-drm display-engine: fb0: frame buffer device
[ 1.129713] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[ 1.138254] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.155782] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.162661] vcc3v3: disabling
[ 1.165648] ALSA device list:
[ 1.168616] #0: Loopback 1
[ 1.172398] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.181163] cfg80211: failed to load regulatory.db
[ 1.186502] Waiting for root device /dev/mtdblock31:03...
[ 194.796012] random: crng init done
大神帮忙看下?
离线
离线
这几处都已经修改了,还是不行。。。
请问发到这里来看,是linux内核问题,还是rootfs问题?
最近编辑记录 没事逛荡 (2019-02-02 12:01:20)
离线
山无棱 说:这几处都已经修改了,还是不行。。。
请问发到这里来看,是linux内核问题,还是rootfs问题?
这就有点尴尬了, 肯定不是 rootfs 问题, rootfs 会提示运行 /init /linuxrc 失败之类的信息
离线
没事逛荡 说:山无棱 说:这几处都已经修改了,还是不行。。。
请问发到这里来看,是linux内核问题,还是rootfs问题?这就有点尴尬了, 肯定不是 rootfs 问题, rootfs 会提示运行 /init /linuxrc 失败之类的信息
不大懂,刚才以为是文件系统问题...我再找找内核问题,谢谢~
离线
山无棱 说:没事逛荡 说:这几处都已经修改了,还是不行。。。
请问发到这里来看,是linux内核问题,还是rootfs问题?这就有点尴尬了, 肯定不是 rootfs 问题, rootfs 会提示运行 /init /linuxrc 失败之类的信息
不大懂,刚才以为是文件系统问题...我再找找内核问题,谢谢~
感觉你这个bootargs有点问题:
Waiting for root device /dev/mtdblock31:03
要不你把 整个 log 用 code 标签包起来传上, 我看下。
在线
没事逛荡 说:山无棱 说:这就有点尴尬了, 肯定不是 rootfs 问题, rootfs 会提示运行 /init /linuxrc 失败之类的信息
不大懂,刚才以为是文件系统问题...我再找找内核问题,谢谢~
感觉你这个bootargs有点问题:
Waiting for root device /dev/mtdblock31:03
要不你把 整个 log 用 code 标签包起来传上, 我看下。
U-Boot SPL 2018.01-05679-g013ca45-dirty (Feb 02 2019 - 11:08:54)
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 (Feb 02 2019 - 11:08:54 +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
In: serial@1c25000
Out: serial@1c25000
Err: serial@1c25000
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 2 ... 1 ... 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
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 816fb000, end 816fff3e ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.15.0-rc8-licheepi-nano+ (sdong@shangdong) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #10 Sat Feb 2 12:36:58 CST 2019
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] OF: fdt: Machine model: Lichee Pi Nano
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] random: fast init done
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock31: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: 22696K/32768K available (6144K kernel code, 217K rwdata, 1328K rodata, 1024K init, 244K bss, 10072K 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) ( 218 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 245 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.000044] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000108] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000630] Console: colour dummy device 80x30
[ 0.000717] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)
[ 0.070226] pid_max: default: 32768 minimum: 301
[ 0.070522] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.070561] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.071964] CPU: Testing write buffer coherency: ok
[ 0.073572] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.076062] devtmpfs: initialized
[ 0.082376] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.082443] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.082690] pinctrl core: initialized pinctrl subsystem
[ 0.084658] NET: Registered protocol family 16
[ 0.085965] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.087715] cpuidle: using governor menu
[ 0.110036] SCSI subsystem initialized
[ 0.110414] pps_core: LinuxPPS API ver. 1 registered
[ 0.110443] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.110522] PTP clock support registered
[ 0.111005] Advanced Linux Sound Architecture Driver Initialized.
[ 0.112459] clocksource: Switched to clocksource timer
[ 0.138871] NET: Registered protocol family 2
[ 0.140283] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.140359] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.140409] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.140680] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.140734] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.141196] NET: Registered protocol family 1
[ 0.142358] RPC: Registered named UNIX socket transport module.
[ 0.142398] RPC: Registered udp transport module.
[ 0.142415] RPC: Registered tcp transport module.
[ 0.142552] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.144249] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.145985] Initialise system trusted keyrings
[ 0.146543] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.163570] NFS: Registering the id_resolver key type
[ 0.163676] Key type id_resolver registered
[ 0.163696] Key type id_legacy registered
[ 0.163804] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.178158] Key type asymmetric registered
[ 0.178199] Asymmetric key parser 'x509' registered
[ 0.178394] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.178425] io scheduler noop registered
[ 0.178444] io scheduler deadline registered
[ 0.179191] io scheduler cfq registered (default)
[ 0.179223] io scheduler mq-deadline registered
[ 0.179241] io scheduler kyber registered
[ 0.188811] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.358774] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.365485] console [ttyS0] disabled
[ 0.385733] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A
[ 0.838352] console [ttyS0] enabled
[ 0.848707] panel-simple panel: panel supply power not found, using dummy regulator
[ 0.858092] SCSI Media Changer driver v0.25
[ 0.865823] m25p80 spi0.0: w25q128 (16384 Kbytes)
[ 0.870602] 4 ofpart partitions found on MTD device spi0.0
[ 0.876190] Creating 4 MTD partitions on "spi0.0":
[ 0.881005] 0x000000000000-0x000000100000 : "u-boot"
[ 0.887212] 0x000000100000-0x000000110000 : "dtb"
[ 0.893067] 0x000000110000-0x000000510000 : "kernel"
[ 0.899033] 0x000000510000-0x000001000000 : "rootfs"
[ 0.905760] i2c /dev entries driver
[ 0.972579] sunxi-mmc 1c0f000.mmc: base:0x6abb823b irq:19
[ 0.997376] NET: Registered protocol family 17
[ 1.002068] Key type dns_resolver registered
[ 1.008548] Loading compiled-in X.509 certificates
[ 1.021825] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc07391b8)
[ 1.030729] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc073849c)
[ 1.038518] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.045184] [drm] No driver support for vblank timestamp query.
[ 1.099246] Console: switching to colour frame buffer device 60x34
[ 1.122563] sun4i-drm display-engine: fb0: frame buffer device
[ 1.129756] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[ 1.138287] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.155843] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.162713] vcc3v3: disabling
[ 1.165700] ALSA device list:
[ 1.168667] #0: Loopback 1
[ 1.172429] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.181191] cfg80211: failed to load regulatory.db
[ 1.186543] Waiting for root device /dev/mtdblock31:03...
[ 194.796052] random: crng init done
这个是log,大神帮忙看下,感谢感谢~
离线
@没事逛荡
bootargs改成这样:
console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2
或这样:
console=ttyS0,115200 panic=5 rootwait root=31:03 rw rootfstype=jffs2
在线
@没事逛荡
bootargs改成这样:
console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2
或这样:
console=ttyS0,115200 panic=5 rootwait root=31:03 rw rootfstype=jffs2
这个可以到rootfs了
console=ttyS0,115200 panic=5 rootwait root=31:03 rw rootfstype=jffs2
当又是
Welcome to Buildroot
buildroot login:
要重新配置编译个文件系统。。。搞完再来请教,谢谢!
离线
重新编译文件系统,可以启动,但文件系统还是有问题,输出
U-Boot SPL 2018.01-05679-g013ca45-dirty (Feb 02 2019 - 14:23:59)
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 (Feb 02 2019 - 14:23:59 +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
In: serial@1c25000
Out: serial@1c25000
Err: serial@1c25000
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 2 ... 1 ... 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
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 816fb000, end 816fff3e ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.15.0-rc8-licheepi-nano+ (sdong@shangdong) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #10 Sat Feb 2 12:36:58 CST 2019
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] OF: fdt: Machine model: Lichee Pi Nano
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] random: fast init done
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: cconsole=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: 22696K/32768K available (6144K kernel code, 217K rwdata, 1328K rodata, 1024K init, 244K bss, 10072K 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) ( 218 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 245 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.000106] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000631] Console: colour dummy device 80x30
[ 0.001537] console [tty0] enabled
[ 0.001630] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)
[ 0.070278] pid_max: default: 32768 minimum: 301
[ 0.070622] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.070712] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.072170] CPU: Testing write buffer coherency: ok
[ 0.073843] Setting up static identity map for 0x80100000 - 0x80100058
[ 0.076422] devtmpfs: initialized
[ 0.082803] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.082972] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.083271] pinctrl core: initialized pinctrl subsystem
[ 0.085292] NET: Registered protocol family 16
[ 0.086681] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.088515] cpuidle: using governor menu
[ 0.110992] SCSI subsystem initialized
[ 0.111327] pps_core: LinuxPPS API ver. 1 registered
[ 0.111406] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.111551] PTP clock support registered
[ 0.112082] Advanced Linux Sound Architecture Driver Initialized.
[ 0.113603] clocksource: Switched to clocksource timer
[ 0.140069] NET: Registered protocol family 2
[ 0.141559] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.141718] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.141807] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.142120] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.142229] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.142754] NET: Registered protocol family 1
[ 0.144136] RPC: Registered named UNIX socket transport module.
[ 0.144248] RPC: Registered udp transport module.
[ 0.144300] RPC: Registered tcp transport module.
[ 0.144345] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.146072] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.147889] Initialise system trusted keyrings
[ 0.148522] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[ 0.165676] NFS: Registering the id_resolver key type
[ 0.165863] Key type id_resolver registered
[ 0.165924] Key type id_legacy registered
[ 0.166072] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.180510] Key type asymmetric registered
[ 0.180623] Asymmetric key parser 'x509' registered
[ 0.180860] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.180954] io scheduler noop registered
[ 0.181001] io scheduler deadline registered
[ 0.181789] io scheduler cfq registered (default)
[ 0.181885] io scheduler mq-deadline registered
[ 0.181938] io scheduler kyber registered
[ 0.191585] suniv-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.361721] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.388707] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 23, base_baud = 6250000) is a 16550A
[ 0.840181] console [ttyS0] enabled
[ 0.850567] panel-simple panel: panel supply power not found, using dummy regulator
[ 0.860063] SCSI Media Changer driver v0.25
[ 0.867876] m25p80 spi0.0: w25q128 (16384 Kbytes)
[ 0.872726] 4 ofpart partitions found on MTD device spi0.0
[ 0.878367] Creating 4 MTD partitions on "spi0.0":
[ 0.883226] 0x000000000000-0x000000100000 : "u-boot"
[ 0.889497] 0x000000100000-0x000000110000 : "dtb"
[ 0.895443] 0x000000110000-0x000000510000 : "kernel"
[ 0.901494] 0x000000510000-0x000001000000 : "rootfs"
[ 0.908308] i2c /dev entries driver
[ 0.973724] sunxi-mmc 1c0f000.mmc: base:0x6abb823b irq:19
[ 0.998635] NET: Registered protocol family 17
[ 1.003400] Key type dns_resolver registered
[ 1.009953] Loading compiled-in X.509 certificates
[ 1.023344] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc07391b8)
[ 1.032352] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc073849c)
[ 1.040236] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.046965] [drm] No driver support for vblank timestamp query.
[ 1.101005] Console: switching to colour frame buffer device 60x34
[ 1.124711] sun4i-drm display-engine: fb0: frame buffer device
[ 1.132180] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[ 1.152421] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 1.182006] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 1.200941] vcc3v3: disabling
[ 1.209984] ALSA device list:
[ 1.218965] #0: Loopback 1
[ 1.228614] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 1.249048] cfg80211: failed to load regulatory.db
[ 1.357471] random: crng init done
[ 1.670755] VFS: Mounted root (jffs2 filesystem) on device 31:3.
[ 1.690629] devtmpfs: mounted
[ 1.704437] Freeing unused kernel memory: 1024K
Starting logging: OK
Initializing random number generator... done.
Starting network: OK
# ls
.[1;34mbin.[0m .[1;34mlib.[0m .[1;34mmedia.[0m .[1;34mproc.[0m .[1;34msbin.[0m .[1;34musr.[0m
.[1;34mdev.[0m .[1;36mlib32.[0m .[1;34mmnt.[0m .[1;34mroot.[0m .[1;34msys.[0m .[1;34mvar.[0m
.[1;34metc.[0m .[1;36mlinuxrc.[0m .[1;34mopt.[0m .[1;34mrun.[0m .[1;34mtmp.[0m
#
# cd b
# cd bin/.[J
#
# ls
.[1;36mash.[0m .[1;36mdumpkmap.[0m .[1;36mlinux64.[0m .[1;36mnice.[0m .[1;36msh.[0m
.[1;32mbusybox.[0m .[1;36mecho.[0m .[1;36mln.[0m .[1;36mpidof.[0m .[1;36msleep.[0m
.[1;36mcat.[0m .[1;36megrep.[0m .[1;36mlogin.[0m .[1;36mping.[0m .[1;36mstty.[0m
.[1;36mchattr.[0m .[1;36mfalse.[0m .[1;36mls.[0m .[1;36mpipe_progress.[0m .[1;36msu.[0m
.[1;36mchgrp.[0m .[1;36mfdflush.[0m .[1;36mlsattr.[0m .[1;36mprintenv.[0m .[1;36msync.[0m
.[1;36mchmod.[0m .[1;36mfgrep.[0m .[1;36mmkdir.[0m .[1;36mps.[0m .[1;36mtar.[0m
.[1;36mchown.[0m .[1;36mgetopt.[0m .[1;36mmknod.[0m .[1;36mpwd.[0m .[1;36mtouch.[0m
.[1;36mcp.[0m .[1;36mgrep.[0m .[1;36mmktemp.[0m .[1;36mrm.[0m .[1;36mtrue.[0m
.[1;36mcpio.[0m .[1;36mgunzip.[0m .[1;36mmore.[0m .[1;36mrmdir.
离线
没问题了,是你的终端太辣鸡,没颜色显示功能。
试一试 mobaxterm,去官网下载绿色免费版都已经非常好用了,
据说还有专业破解版,更多功能更好用
原来如此。。。换了终端可以了,thankyou!祝新年快乐!!!
最近编辑记录 没事逛荡 (2019-02-02 17:24:01)
离线
我用的C600官方BSP,修改了那1处uboot的cpu校验2处buildroot的软件包,还有pack工具里的uboot二进制替换。
直接./build.sh config ./build.sh ./build.sh pack
就能生成img包,
使用烧录软件可直接烧录到tf卡,spi nor flash。并没有大家那样的艰辛过程。
不过,bsp编译出来的固件。
没有fb功能,而且是只读的系统。不知道从哪里改系统可写,看来我可以参考这里的源码把显示屏给改出来。
离线
这个源码地址都不能下载了
离线
我其实也想下载1楼的代码, 可惜已经找不到了.....
离线
@晕哥 源码下载链接失效了 能给个么
离线
离线
我用的C600官方BSP,修改了那1处uboot的cpu校验2处buildroot的软件包,还有pack工具里的uboot二进制替换。
直接./build.sh config ./build.sh ./build.sh pack
就能生成img包,
使用烧录软件可直接烧录到tf卡,spi nor flash。并没有大家那样的艰辛过程。
不过,bsp编译出来的固件。
没有fb功能,而且是只读的系统。不知道从哪里改系统可写,看来我可以参考这里的源码把显示屏给改出来。
怎么烧录TF卡呀。
好像只能用官方的那个烧录工具,烧录flash哈。
离线
官方有个专门烧TF卡的软件。
叫啥子?
离线
叫啥子?
PhoenixCard: PhoenixCard_V104_20110314.rar
离线
PhoenixCard: PhoenixCard_V104_20110314.rar
恩人呀。~~~~~~~
我都快放弃了。雪中送炭哈。
离线
离线
试一试4.1.2: PhoenixCard_v412.rar
链接失效了,晕哥。
刚才在网上找了个4.1.1
试试好用不?
离线
修复好了.
多谢晕哥,不过好像还是不行哈。
离线
感觉你要换卡了.
你好
有没有机会在没有SPI-Flash的情况下使用此主题img?
我说的是把它们烧成SD卡?
如果是,请您告诉我如何?
Hi
is there any chance to use this topic img without SPI-Flash ?
i am talking about burn them into sdcard ?
if yes, can you please tell me how?
最近编辑记录 Biftor (2019-12-07 22:48:10)
离线
跪求1楼代码哈~~~~~~~
离线
这个固件支持W25Q256和MX25L256了: f1c100s-480272-argb-w25q256-mx25l256.7z
支持 480x272的4.3寸LCD
do you still have the sources of this image?
the first post is dead
离线
在线
这个固件打包的时候, 开机程序写错到 /etc/init.d/rcS了,应该写到 profile,所以不响应串口输入了。
ok I've got you .
but i am talking about the first post
源码包下载地址: http://oslife.top/f1c600.tar.bz2
本站临时下载地址: f1c600.tar.bz2
离线
usb可以用吗,
离线
怎么不给下载啊
离线
下一个吗
离线
这个镜像别的地方没有嘛
离线
请问高分辨率1280x720会有抖屏问题吗?tina高分辨率就抖得厉害,感觉还随着cpu运行而抖,点击触摸屏也抖
离线
入坑f1c必备资料
离线
先收藏,有空看看。
离线
好资料,下载到板子试试效果。
离线
U-Boot SPL 2018.01 (Jun 04 2020 - 21:39:41)
DRAM:DRAM initialization failed: dram[0x0] != 0x80fef25c.
怎么这样
离线
大神编译好的dtb文件在哪呀
离线
使用的是哪个GUI。好资料,下载到板子试试效果。
离线
懇求一个 f1c100s licheepi linux bsp lcd(800x480) 64M w25q128 SPI-NAND引导 有.config 的 u-boot 源码 (qt app)
离线
请教一下,uboot里面找不到对应的.config文件,是如何对应的?
离线