WhyCan Forum

本站无需注册,无需积分,无需回复可下载所有资料,如果真的喜欢小站,请您注册之后请至少回复一个帖子激活Id,谢谢支持! 站长QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2018-04-18 22:46:06

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

@assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

QQ20180418224402.png

源码包下载地址: http://oslife.top/f1c600.tar.bz2
本站临时下载地址: f1c600.tar.bz2

测试固件下载地址: f1c100s_c600sdk_16M_micropython.7z
启动到shell时间约35秒, 尚有优化空间。

感谢 @assert 网友





补充:
----------------------------------------------
参考链接: step by step 编译全志 f1c100s 官方linux bsp

离线

#2 2018-04-20 18:20:12

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano


他昨天晚上已经搞定了LCD了
主线u-boot, bsp kernel+dtb

离线

#3 2018-04-25 22:30:11

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

QQ20180425222855.jpg

好消息, 已经搞定屏幕,直接用 sunxi-fel.exe 烧到spi flash即可。

QQ20180426084533.png

烧录命令: 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.

离线

#4 2018-04-26 21:55:39

awfans
会员
注册时间: 2018-04-03
累计积分: 155

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

@assert 大神固件在此: f1c100s-480272-argb-lvgl.7z

奇怪,我烧这个固件到 f1c100s W25Q256板子,终端会出现这个问题:

QQ20180426215335.jpg

离线

#5 2018-04-26 21:56:41

awfans
会员
注册时间: 2018-04-03
累计积分: 155

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

眼拙,居然没看到 3# 的提示。

离线

#6 2018-04-26 22:13:18

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

这个固件支持W25Q256和MX25L256了: f1c100s-480272-argb-w25q256-mx25l256.7z

支持 480x272的4.3寸LCD

离线

#7 2018-05-23 13:24:29

Biglion
会员
注册时间: 2018-04-16
累计积分: 3

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

使用主线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传参的问题 tongue

最近编辑记录 Biglion (2018-05-23 13:53:48)

离线

#8 2018-05-23 13:44:06

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

bootz 0x80000000 - 0x80C00000

==>

bootz 0x80500000 - 0x80C00000

是不是上面的地址错了?

离线

#9 2018-05-23 13:55:18

Biglion
会员
注册时间: 2018-04-16
累计积分: 3

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

bootz 0x80000000 - 0x80C00000

==>

bootz 0x80500000 - 0x80C00000

是不是上面的地址错了?

不小心这里粘贴时候搞错了,实际操作还是用的0x80500000的 tongue

DRAM:DRAM initialization failed: dram[0x1] != 0x0.

离线

#10 2018-05-23 14:03:55

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

QQ20180613185250.png

QQ20180523140256.png

QQ20180523141123.png

主线u-boot有三处需要修改, 你先试一试。

离线

#11 2018-05-23 14:13:21

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

@assert 大神的F1C100s跑InfoNES模拟器

离线

#12 2018-06-10 00:35:54

david
会员
注册时间: 2018-03-05
累计积分: 5

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

nano的声卡好用么?

离线

#13 2018-06-13 17:30:53

fly_to_bluesky@126.com
会员
注册时间: 2018-06-13
累计积分: 6

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi 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.

能请您帮我分析一下嘛!

离线

#14 2018-06-13 18:00:30

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

我去邀请 assert 大神过来解答。

离线

#15 2018-06-13 19:17:26

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

经过 @assert 确认, 10楼图片漏贴了一个。

离线

#16 2018-07-15 14:03:33

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

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 呢 ? 

謝謝

离线

#17 2018-07-15 16:57:28

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

这个和 img 的格式有关系,
至于具体如何解析开源社区貌似没什么兴趣,
反正是可以烧录的。

离线

#18 2018-07-17 04:30:01

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥, 我跟你建议用了主线 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 楼最后有没有解决到问题 ?
谢谢
uboot_20180716-1624.png

离线

#19 2018-07-17 09:01:32

达克罗德
会员
注册时间: 2018-04-10
累计积分: 483

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

@assert 大神的F1C100s跑InfoNES模拟器

这个的原理是什么?直接framebuffer操作吗还是SDL,看起来很流畅

离线

#20 2018-07-17 09:16:43

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

直接操作framebuffer.

离线

#21 2018-07-17 09:51:23

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

@nakanoyip  那三处都改了?

离线

#22 2018-07-17 16:30:07

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

是的, 3 個位置都改了, 分別就在於
未改前, boot 起來直接跳到這個位置
而改了之後, 他會在這位置停一下, 大概 1 分鐘後才繼續

uboot.png

离线

#23 2018-07-17 16:46:07

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

从log看有可能你的dtb文件有点问题,你从三楼把固件下载下来,抽出u-boot,dtb,zImage,rootfs
先替换掉你的dtb,文件,不行再替换u-boot,再zImage,
一步一步排除问题。

离线

#24 2018-07-18 06:17:42

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

我把三樓和六樓的 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 再試

謝謝

离线

#25 2018-07-18 06:52:54

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

用linux shell的dd命令就可以pack/unpack,
今天我帮你unpack这个文件吧,把四个文件的address再列出来。

离线

#26 2018-07-18 09:11:15

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

文件下载: 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

离线

#27 2018-07-20 18:58:54

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

我跟據你的布局
取代了f1c100s-480272-argb-w25q256-lvgl.bin 中的 dtb 和 zImage, 保留了 uboot 和 rootfs
他看似一開始能讀到, 但去到中間就不行了 ( 下圖)
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 檔都找不到這分區的設定

謝謝

离线

#28 2018-07-20 19:11:45

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

我看看这两天有没有时间帮你验证一下。

离线

#29 2018-07-26 16:21:10

heirun
会员
注册时间: 2018-06-29
累计积分: 15

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

请教1楼的 ALSA device list:
                 #0: audiocodec
是如何配置出来的?谢谢!

最近编辑记录 heirun (2018-07-26 16:21:32)

离线

#30 2018-07-27 11:58:28

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

应该是默认配置即可.

离线

#31 2018-07-27 14:44:26

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

为什么我编译到最后,没有生成img文件?
./build.sh 到最后,出现build kernel error
FluxBB

./build.sh pack 没有看到有生成的img文件,当中还有个image.cfg的错误
FluxBB

有哪个环节有错误?

离线

#32 2018-07-27 14:58:27

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

估计和你的环境有关系, awk 的第二行 strtonum 没有定义.

离线

#33 2018-07-27 15:26:20

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

一个新装的ubuntu 14.04 LTS环境,按照贴在上的安装了对应的包
试过用16.04 LTS也是一样的

离线

#34 2018-07-27 15:31:16

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

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

https://blog.csdn.net/dpppppp/article/details/53018132

离线

#35 2018-07-27 15:31:48

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

ippen 说:

为什么我编译到最后,没有生成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
解决第一个,第二个就自动解决了

离线

#36 2018-07-27 15:34:07

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

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

https://blog.csdn.net/dpppppp/article/details/53018132

哈哈,找了同一个连接,没想到系统自带的awk不行,一定要gawk

离线

#37 2018-07-28 16:39:02

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

build.sh pack 生成的 sunivw1p1_linux_evb_uart0.img
用sunxi-fel.exe 的工具刷进licheepinano,没法启动
用sunxi-fel.exe 重新读出来,发现镜像是从16M开始的数据,就是说前面的16M被后面的15M数据覆盖了
FluxBB

离线

#38 2018-07-28 16:44:39

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

nakanoyip 说:

我跟據你的布局
取代了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));
}

离线

#39 2018-07-28 16:46:29

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

参考链接: https://whycan.cn/t_866.html

全志 img 要用专用烧写工具 PhoenixSuit

离线

#40 2018-07-28 19:04:10

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

参考链接: https://whycan.cn/t_866.html

全志 img 要用专用烧写工具 PhoenixSuit

原来还有这个区别,我试一下

离线

#41 2018-07-28 19:39:28

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

ippen 说:
晕哥 说:

参考链接: https://whycan.cn/t_866.html

全志 img 要用专用烧写工具 PhoenixSuit

原来还有这个区别,我试一下

用phoenixsuit将镜像写进去了,用sunxi-fel读出来,也看到明显的标记,不过系统起不来,串口也没反应。
看来要设法自己弄,用u-boot 2018.1了

离线

#42 2018-07-28 20:21:51

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

有三组串口,都试一下,或许有新发现。

离线

#43 2018-07-28 20:32:44

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

有三组串口,都试一下,或许有新发现。

不会吧,不用uart0?
我看了设备树文件里面确实是定义了PE0和PE1作为uart0的,难道内核不是用uart0?

离线

#44 2018-07-28 20:38:02

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

u-boot 里面确定是 uart0 ?

离线

#45 2018-07-30 15:23:47

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

暈哥, 後來我把 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, 看到上面模擬器的片, 也沒有聲音 , 這個有沒有方法解決呢 ?
謝謝

离线

#46 2018-07-30 15:51:50

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

1. 建议用32M的spi flash, 比如 MX25L256, W25Q256, TF/SDCard不适合产品,可靠性太差,玩玩另当别论.
2. 从TF卡启动修改 u-boot即可, 参考 https://whycan.cn/t_1180.html 烧录到tf卡方法参考: https://whycan.cn/p_4317.html#p4317
3. 顯示 DRAM:DRAM initialization failed     这个不知道什么问题
4. 声卡是正常的, 要配一下 tinymix 混音器

离线

#47 2018-08-02 04:40:39

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

暈哥, 我用可 boot 到 TF 的 bin, uboot 已經是設計給 boot TF 的, 取代 dtb 和 zImage,
他讀到 zImage 和 dtb,  但也 boot 不起, 是不是 Kernel 內也有些東西要改 ?
dram.png

离线

#48 2018-08-02 09:16:48

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

理论上不需要重新编译kernel,
因为无论kernel在 spi flash,还是 tf 卡,
最终都是加载到 ddr.

你在 bootargs 里面加上 earlyprintk(估计要修改 linux 的 .config然后重新编译, 改u-boot启动参数没用) 试一试,
都没有出现 starting kernel ... 就挂了

离线

#49 2018-08-02 16:08:13

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

在 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,  現在是要刪去嗎 ?

离线

#50 2018-08-02 16:14:03

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

我的意思是要加上,既然现在有了, 感觉没法解释了,现象有点诡异, 路过的大神解释一下.

离线

#51 2018-08-02 19:15:42

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

我在 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 ... OK

Starting kernel ...


Read dt_phys 80e60000
Read devtree c0e60000

Read 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        f1c100s

Please 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

离线

#52 2018-08-03 09:16:00

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

现在的问题是,不知道如何修改 sunivw1p1.dtsisunivw1p1-evb.dts, 实现kernel正确加载 TF卡 ?

离线

#53 2018-08-03 14:37:50

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

是的 , 上面的驗証應該是 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卡了

离线

#54 2018-08-03 14:55:44

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

用spi flash启动的时候, TF卡能识别吗,读写正常吗?

你的 u-boot 是自己编译的?如果自己编译按照10楼的截图修改。

离线

#55 2018-08-03 17:20:44

三哥
会员
注册时间: 2018-08-03
累计积分: 13

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

坑哥,能讲一下f1c100s启动流程么,我想裸奔,我不知道是不是默认从spi flash启动,从什么地址开始拷贝到内存?

离线

#56 2018-08-03 17:32:37

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

全志V3s手册V1.0: Allwinner_V3s_Datasheet_V1.0.pdf

全志f1c100s手册: Allwinner_F1C600_User_Manual_V1.0.pdf手册


本来想去全志 f1c100s/f1c600手册里面找,
结果里面根本没有提 boot system,
还是从上面的V3s手册里面找.

QQ20180803173404.png

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的存在.

离线

#57 2018-08-03 17:44:49

三哥
会员
注册时间: 2018-08-03
累计积分: 13

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

如果从nano板子上spi flash启动,是从什么地址开始拷贝,拷到内存什么位置?

离线

#58 2018-08-03 17:49:59

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

BROM只能把引导程序(也叫boot0, 也叫spl)拷到 SRAM去,
比如f1c100s 的 SRAM 地址在 0x10000,
那肯定是拷到这里了,
拷完后把 PC指针指向 0x10000,
现在系统已经交给你的boot0了。

BROM 也会校验引导程序的合法性, 魔法数字,校验值什么的。

离线

#59 2018-08-05 00:04:12

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

nakanoyip 说:

是的 , 上面的驗証應該是 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镜像

离线

#60 2018-08-05 00:55:48

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

终于搞定bsp的linux启动了,bsp的u-boot-2014.07+linux-3.10.65,spi启动正常了,下面要看看如何定制内核了。

离线

#61 2018-08-05 12:04:14

basicdev
会员
注册时间: 2017-10-02
累计积分: 159

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

ippen 说:

终于搞定bsp的linux启动了,bsp的u-boot-2014.07+linux-3.10.65,spi启动正常了,下面要看看如何定制内核了。

大神是怎么做到的?

离线

#62 2018-08-06 03:16:20

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

暈哥, 現在可以開到 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楼的截图修改。

离线

#63 2018-08-06 06:44:20

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

如果你能启动到shell,
并且rootfs是在tf卡第二个分区,
说明你的tf已经挂载上了。

mtd挂载是找 /dev/mtdblockX

离线

#64 2018-08-06 09:22:10

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

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系统启动,根文件系统是只读,有可能是这个原因导致的无法挂载

离线

#65 2018-08-06 10:08:22

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

简单总结一下编译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)

离线

#66 2018-08-06 10:17:11

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

感谢分享,我当时是用官方烧录软件,很难把img烧进nano,换了几台电脑都不行,两个nano板子也一样。

但是V3s烧录img正常,

所以不得不跟着 @assert 脚步。

离线

#67 2018-08-06 11:34:07

heirun
会员
注册时间: 2018-06-29
累计积分: 15

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

ippen 说:

简单总结一下编译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,改完后可以正常烧入系统也能起来,但是串口输入不了,不清楚是不是还有哪里没改对?

离线

#68 2018-08-06 12:00:45

超级萌新
会员
注册时间: 2018-05-04
累计积分: 182

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

是改成这样吗:

[uart_para]
uart_debug_port = 1
uart_debug_tx   = port:PE1<5><1><default><default>
uart_debug_rx   = port:PE0<5><1><default><default>

确认硬件连接没有问题, 串口线没有问题?

离线

#69 2018-08-06 13:30:12

ippen
会员
注册时间: 2018-07-22
累计积分: 172

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

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

离线

#70 2018-08-06 14:07:49

heirun
会员
注册时间: 2018-06-29
累计积分: 15

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

超级萌新 说:

是改成这样吗:

[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)

离线

#71 2018-08-06 14:09:54

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

试一试69楼朋友说的方法.

离线

#72 2018-08-06 14:58:44

heirun
会员
注册时间: 2018-06-29
累计积分: 15

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

ippen 说:
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

离线

#73 2018-08-06 15:07:42

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,164

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

直接用 vi 命令修改这个文件: out/sunivw1p1/linux/common/buildroot/target/etc/inittab

离线

#74 2018-08-06 15:29:37

heirun
会员
注册时间: 2018-06-29
累计积分: 15

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

晕哥 说:

直接用 vi 命令修改这个文件: out/sunivw1p1/linux/common/buildroot/target/etc/inittab

就是改的这个文件呢,改完编译后又变成ttyS1了,,,

离线

#75 2018-08-06 15:46:54

nakanoyip
会员
注册时间: 2018-07-15
累计积分: 22

Re: @assert 大神移植全志官方f1c100s linux bsp 到licheepi nano

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 device

mnt >>>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 flash启动的时候, TF卡能识别吗,读写正常吗?

你的 u-boot 是自己编译的?如果自己编译按照10楼的截图修改。

spi系统启动,根文件系统是只读,有可能是这个原因导致的无法挂载

离线

页脚