ophub / amlogic-s9xxx-armbian

Support for Armbian in Amlogic, Rockchip and Allwinner boxes. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.
GNU General Public License v2.0
5.92k stars 1.9k forks source link

M401A用u200.dtb和u-boot-u200.bin可以U盘启动,但不能从emmc启动 #438

Closed xcray closed 2 years ago

xcray commented 2 years ago

各位大佬, 之前用zzcand111大佬的Armbian_22.02.0_Aml_s905x2_focal_5.4.180_2022.02.22.2308.img.gz成功安装到emmc,当时型号选择u200.dtb那个。特意查了一下这个版本的/lib/u-boot目录,有一个主线使用的u-boot-u200.bin.sd.bin文件(其实这个文件和/boot里面的是一个,只是改了名字)。

现在ophub这里较新的版本里/lib/u-boot下面没这个文件了,我的盒子只有用meson-g12a-u200.dtb和u-boot-u200.bin可以成功启动,那么安装到emmc时主线uboot应该输入哪一个呢?把原来的文件直接拷出来能用吗? --后来试出了完美的emmc启动方案,见https://github.com/ophub/amlogic-s9xxx-armbian/issues/462

ophub commented 2 years ago

没有可以启动,就是不需要

xcray commented 2 years ago

没有可以启动,就是不需要

用U盘启动这么说能理解,问题是安装到emmc后就无法启动了,好像还离不开这个主线uboot?

ophub commented 2 years ago

这个盒子不支持写入emmc OpenWrt的用户反馈可以正常写入emmc使用,但是armbian的用户反馈不可以

https://docs.qq.com/doc/DWFprWWxZa290VXNk

xcray commented 2 years ago

晕了,我记得好几次说到openwrt不能写入emmc。。。我自己试过也确实不行。armbian用zzcand111那个版本写入emmc没问题(也是从这里fork的),就是有时认不到网卡声卡、内存也只能认到1G。现在想把新版的armbian写到emmc,卡到主线uboot这个环节了。

ophub commented 2 years ago

我也晕,可能反馈的用户使用了不同的设备,没仔细按照说明操作,所以反馈结果不同。 按照开发 e900v22c教程汇总v1.0.2 的介绍是armbian可以正常写入,OpenWrt不能。 如果不熟悉恢复系统的操作,简单一点,都在USB上使用吧。

a520ass commented 2 years ago

不同设备的硬件是有区别的,我的E900V22D是需要改dts,才能写入到emmc并正常启动

xcray commented 2 years ago

不同设备的硬件是有区别的,我的E900V22D是需要改dts,才能写入到emmc并正常启动

能否教下是怎么修改的?我的盒子感觉也更接近于E900V22D(100M网卡有蓝牙无WiFi)

a520ass commented 2 years ago

不同设备的硬件是有区别的,我的E900V22D是需要改dts,才能写入到emmc并正常启动

能否教下是怎么修改的?我的盒子感觉也更接近于E900V22D(100M网卡有蓝牙无WiFi)

要贴个启动的TTL输出,才能看出来哪里有问题

xcray commented 2 years ago

要贴个启动的TTL输出,才能看出来哪里有问题

TTL开始焊了后来感觉没啥用又拆了,能否给个用过的dtb文件我试试?谢谢! 另外有刚拿到手时启动的TTL输出,管用吗?

a520ass commented 2 years ago

要贴个启动的TTL输出,才能看出来哪里有问题

TTL开始焊了后来感觉没啥用又拆了,能否给个用过的dtb文件我试试?谢谢! 另外有刚拿到手时启动的TTL输出,管用吗? `

可以试试我这个dtb,TTL输出肯定是要现在的 meson-g12a-s905l3a-e900v22d.zip

xcray commented 2 years ago

可以试试我这个dtb,TTL输出肯定是要现在的 meson-g12a-s905l3a-e900v22d.zip

谢谢!我试试。再请教个问题:用这个dtb要写入emmc的话OVERLOAD和主线uboot都用e900v22c的?

a520ass commented 2 years ago

可以试试我这个dtb,TTL输出肯定是要现在的 meson-g12a-s905l3a-e900v22d.zip

谢谢!我试试。再请教个问题:用这个dtb要写入emmc的话OVERLOAD和主线uboot都用e900v22c的?

OVERLOAD和主线只是选其中一种,我是用22c的

xcray commented 2 years ago

OVERLOAD和主线只是选其中一种,我是用22c的

又刷新了我的知识,之前用zzcand111那个版本写入emmc,我特意观察了,两个uboot都要写入的。我还以为缺一不可呢

a520ass commented 2 years ago

OVERLOAD和主线只是选其中一种,我是用22c的

又刷新了我的知识,之前用zzcand111那个版本写入emmc,我特意观察了,两个uboot都要写入的。我还以为缺一不可呢

这个在那个e900v22c文档上有说明的

xcray commented 2 years ago

这个在那个e900v22c文档上有说明的

那个文档看了好几遍,还是晕。。。有些内容确实非常宝贵、有用。有些内容已经和当前的软硬件版本不匹配,有些内容看了几遍还是看不懂。。。

通常来说,两种u-boot只能安装一个?还是可以只安装一个也可以两个都装?只装一个的话应该选overload还是主线? 见笑了,实在糊涂着呢

xcray commented 2 years ago

OVERLOAD和主线只是选其中一种,我是用22c的

试了几下,还是不行。看来我这个盒子还是不一样。 用v22c的uboot就不启动,用u200的uboot启动到panic死住。

试了很多组合,

U盘启动:只有u200的uboot+u200的dtb能启动,并且新旧版本都没问题。

写入EMMC:旧版u200有两种uboot,写入后可以启动;

新的版本下u200已经没有主线uboot了,写入emmc时只写入overload u-boot后无法开机。 我试了一下把旧版本的主线uboot拷进新系统U盘写入emmc,也无法开机。

无解?

allonmymind commented 2 years ago

不同设备的硬件是有区别的,我的E900V22D是需要改dts,才能写入到emmc并正常启动

能否教下是怎么修改的?我的盒子感觉也更接近于E900V22D(100M网卡有蓝牙无WiFi)

反编译dtb,修改dts文件里emmc的最大频率再编译出dtb,使用修改的dtb就可以认到emmc分区了

ophub commented 2 years ago

https://github.com/unifreq/linux-5.15.y/blob/main/arch/arm64/boot/dts/amlogic/meson-g12a-s905l3a-e900v22c.dts

这个是源文件,你修改的什么位置(第几行?改成什么?),标记下你的修改方案,给使用这个设备人的朋友们指导下你的使用方案。

a520ass commented 2 years ago

OVERLOAD和主线只是选其中一种,我是用22c的

试了几下,还是不行。看来我这个盒子还是不一样。 用v22c的uboot就不启动,用u200的uboot启动到panic死住。

试了很多组合,

U盘启动:只有u200的uboot+u200的dtb能启动,并且新旧版本都没问题。

写入EMMC:旧版u200有两种uboot,写入后可以启动;

新的版本下u200已经没有主线uboot了,写入emmc时只写入overload u-boot后无法开机。 我试了一下把旧版本的主线uboot拷进新系统U盘写入emmc,也无法开机。

无解?

你用旧版本的主线uboot,接个TTL看看

a520ass commented 2 years ago

https://github.com/unifreq/linux-5.15.y/blob/main/arch/arm64/boot/dts/amlogic/meson-g12a-s905l3a-e900v22c.dts

这个是源文件,你修改的什么位置(第几行?改成什么?),标记下你的修改方案,给使用这个设备人的朋友们指导下你的使用方案。

我测试的E900V22D,是需要修改&sd_emmc_c的max-frequency = <50000000>;

allonmymind commented 2 years ago

https://github.com/unifreq/linux-5.15.y/blob/main/arch/arm64/boot/dts/amlogic/meson-g12a-s905l3a-e900v22c.dts 这个是源文件,你修改的什么位置(第几行?改成什么?),标记下你的修改方案,给使用这个设备人的朋友们指导下你的使用方案。

我测试的E900V22D,是需要修改&sd_emmc_c的max-frequency = <50000000>;

国外论坛扒到的,仅供参考,我遇到无法写入的几款设备都这么解决了 You need to unpack your dtb file into dts via device-tree-compile tool. Install it in linux ubuntu using

sudo apt-get install device-tree-compiler decompile the dtb file:

dtc -I dtb -O dts -o meson-gxl-s905w-p281.dts meson-gxl-s905w-p281.dtb edit this file searching for "mmc@74000" block

max-frequency = <0x5f5e100>;

5f5e100 in hex = 100000000 in dec

edit it to 0x2faf080, 50000000 in dec

compile with

dtc -I dts -O dtb -o meson-gxl-s905w-p281.dtb meson-gxl-s905w-p281.dts

for Armbian_20.10_Arm-64_focal_current_5.9.0.img I prepared the file for you (see attachment)

meson-gxl-s905w-p281.dtb

xcray commented 2 years ago

反编译dtb,修改dts文件里emmc的最大频率再编译出dtb,使用修改的dtb就可以认到emmc分区了

不知道我的理解对不对哈,我用U盘启动后可以访问emmc分区,也可以看到前面拷进去的文件,这算“认到emmc分区”了吗?还是说指的是用emmc启动的时候?

另外,a520ass帮忙提供了修改过的dtb,他上面说也是改的这个频率,我试过还是不行。 U盘用u200的uboot和dtb启动,对emmc能写入也能读出,就是无法从emmc启动。

还有一件想不明白:openwrt用e900v22c的uboot和dtb可以U盘启动,但armbian就是不行,只能用u200的uboot和dtb。难道我买的这个盒子和大家的都不一样?

感谢各位的回复和指导!我理一理哈:

  1. 我现在用任何别的u-boot和dtb组合,都无法实现U盘启动,只有都用u200的才行。
  2. 我用zzcand111的Armbian_22.02.0_Aml_s905x2_focal_5.4.180不做任何修改可以U盘启动、写入emmc、emmc启动(他用的就是u200的uboot和dtb)。这个版本是带着overload和主线uboot的,我特意看了下armbian-install脚本和执行过程,确实两个都写入emmc了。
  3. 新版本镜像中不再提供u200的主线uboot,只往emmc里写入overload的uboot之后无法从emmc启动,是频率的问题?还是只有overload这种做法的问题?如果是频率的问题,我是不是应该反编译u200的dtb然后修改频率后重新编译?
a520ass commented 2 years ago

看你的描述,你这个旧版本armbian能从emmc启动的,内核都是5.4啊,现在ophub的都是5.10以上,肯定不同的。你可以自己编译5.4内核的试试就知道了

sesame-foxes commented 2 years ago

https://github.com/unifreq/linux-5.15.y/blob/main/arch/arm64/boot/dts/amlogic/meson-g12a-s905l3a-e900v22c.dts 这个是源文件,你修改的什么位置(第几行?改成什么?),标记下你的修改方案,给使用这个设备人的朋友们指导下你的使用方案。

我测试的E900V22D,是需要修改&sd_emmc_c的max-frequency = <50000000>;

你好,我的设备刷入emmc后就无法启动,有好几处error,我不大明白是哪里导致的问题,ttl信息如下: `G12A:BL:0253b8:61aa2d;FEAT:E0F83180:2000;POC:F;RCY:0;EMMC:0;READ:0;0.0 l2_stage_init 0x01 bl2_stage_init 0x81 hw id: 0x0000 - pwm id 0x01 bl2_stage_init 0xc1 bl2_stage_init 0x02

L0:00000000 L1:00000703 L2:00008267 L3:04000000 S1:00000000 B2:00002000 B1:e0f83180

TE: 86084

BL2 Built : 10:15:09, Sep 5 2019. g12a ga536e8b - luan.yuan@droid15-sz

Board ID = 1 Set cpu clk to 24M Set clk81 to 24M CPU clk: 1200 MHz Set clk81 to 166.6M eMMC boot @ 0 sw8 s sd/emmc cmd 8 arg 0x00000000 status 01ff3000 DDR driver_vesion: LPDDR4_PHY_V_0_1_11 build time: Sep 5 2019 10:15:06 board id: 1 Load FIP HDR from eMMC, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0 fw parse done Load ddrfw from eMMC, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0 Load ddrfw from eMMC, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0 PIEI prepare done Cfg max: 5, cur: 1. Board id: 255. Force loop cfg DDR4 probe ddr clk to 1200MHz Load ddrfw from eMMC, src: 0x00014200, des: 0xfffd0000, size: 0x0000c000, part: 0 Check phy result INFO : End of initialization INFO : End of read enable training INFO : End of fine write leveling INFO : STREAM 0x0049000 - 0x0000000 0x0000000 INFO : STREAM 0x0402000 - INFO : ERROR : Training has failed! 1D training failed Cfg max: 5, cur: 2. Board id: 255. Force loop cfg DDR3 probe ddr clk to 912MHz Load ddrfw from eMMC, src: 0x0002c200, des: 0xfffd0000, size: 0x0000c000, part: 0 Check phy result INFO : End of initialization INFO : STREAM 0x0067000 - INFO : STREAM 0x0402000 - INFO : ERROR : Training has failed! 1D training failed Cfg max: 5, cur: 3. Board id: 255. Force loop cfg LPDDR4 probe ddr clk to 1392MHz Load ddrfw from eMMC, src: 0x0003c200, des: 0xfffd0000, size: 0x0000c000, part: 0 Check phy result INFO : STREAM 0x00b0000 - 0x0000100 INFO : STREAM 0x00a7000 - 0x0000001 INFO : STREAM 0x0054000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x0056000 - 0x0000000 0x0000000 0x0000100 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x005b000 - 0x0000000 0x0000005 0x000000a 0x0000003 0x0000000 INFO : End of CA training INFO : End of initialization INFO : Training has run successfully! Check phy result INFO : STREAM 0x00b0000 - 0x0000100 INFO : STREAM 0x00a7000 - 0x0000001 INFO : STREAM 0x0054000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x0056000 - 0x0000000 0x0000000 0x0000031 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x005b000 - 0x0000000 0x0000005 0x000000a 0x0000003 0x0000000 INFO : End of initialization INFO : End of read enable training INFO : End of fine write leveling INFO : End of read dq deskew training INFO : End of MPR read delay center optimization INFO : End of Write leveling coarse delay INFO : End of write delay center optimization INFO : End of read delay center optimization INFO : End of max read latency training INFO : Training has run successfully! Check phy result INFO : STREAM 0x00b0000 - 0x0000100 INFO : STREAM 0x00a7000 - 0x0000001 INFO : STREAM 0x0054000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x0056000 - 0x0000000 0x0000000 0x0000001 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x005b000 - 0x0000000 0x0000005 0x000000a 0x0000003 0x0000000 INFO : End of initialization INFO : End of write delay center optimization INFO : Training has run successfully! 1D training succeed Load ddrfw from eMMC, src: 0x00048200, des: 0xfffd0000, size: 0x0000c000, part: 0 Check phy result INFO : STREAM 0x012c000 - INFO : STREAM 0x0130000 - 0x0000100 INFO : STREAM 0x0127000 - 0x0000001 INFO : STREAM 0x00d4000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x00d6000 - 0x0000000 0x0000000 0x0000006 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x00db000 - 0x0000000 0x0000005 0x0000002 0x0000003 0x0000000 INFO : End of initialization INFO : End of 2D read delay Voltage center optimization INFO : End of 2D read delay Voltage center optimization INFO : End of 2D write delay Voltage center optimization INFO : End of 2D write delay Voltage center optimization INFO : Training has run successfully!

channel==0 RxClkDly_Margin_A0==78 ps 7 TxDqDly_Margin_A0==89 ps 8 RxClkDly_Margin_A1==78 ps 7 TxDqDly_Margin_A1==89 ps 8 TrainedVREFDQ_A0==76 TrainedVREFDQ_A1==78 VrefDac_Margin_A0==18 DeviceVref_Margin_A0==38 VrefDac_Margin_A1==19 DeviceVref_Margin_A1==36

channel==1 RxClkDly_Margin_A0==78 ps 7 TxDqDly_Margin_A0==89 ps 8 RxClkDly_Margin_A1==67 ps 6 TxDqDly_Margin_A1==100 ps 9 TrainedVREFDQ_A0==78 TrainedVREFDQ_A1==82 VrefDac_Margin_A0==17 DeviceVref_Margin_A0==35 VrefDac_Margin_A1==17 DeviceVref_Margin_A1==32

dwc_ddrphy_apb_wr((0<<20)|(2<<16)|(0<<12)|(0xb0):000 2D training succeed auto size-- 65535DDR cs0 size: 1024MB DDR cs1 size: 1024MB DMC_DDR_CTRL: 00e0001bDDR size: 2048MB DATA-W[0x00000000]:0x00000100,R:0x00000000 fail D8 cs0 DataBus test failed cs1 DataBus test pass cs0 AddrBus test pass cs1 AddrBus test pass Cfg max: 5, cur: 4. Board id: 255. Force loop cfg LPDDR4 probe ddr clk to 1392MHz Load ddrfw from eMMC, src: 0x0003c200, des: 0xfffd0000, size: 0x0000c000, part: 0 Check phy result INFO : STREAM 0x00b0000 - 0x0000100 INFO : STREAM 0x00a7000 - 0x0000001 INFO : STREAM 0x0054000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x0056000 - 0x0000000 0x0000000 0x0000100 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x005b000 - 0x0000000 0x0000005 0x000000a 0x0000003 0x0000000 INFO : End of CA training INFO : End of initialization INFO : Training has run successfully! Check phy result INFO : STREAM 0x00b0000 - 0x0000100 INFO : STREAM 0x00a7000 - 0x0000001 INFO : STREAM 0x0054000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x0056000 - 0x0000000 0x0000000 0x0000031 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x005b000 - 0x0000000 0x0000005 0x000000a 0x0000003 0x0000000 INFO : End of initialization INFO : End of read enable training INFO : End of fine write leveling INFO : End of read dq deskew training INFO : End of MPR read delay center optimization INFO : End of Write leveling coarse delay INFO : End of write delay center optimization INFO : End of read delay center optimization INFO : End of max read latency training INFO : Training has run successfully! Check phy result INFO : STREAM 0x00b0000 - 0x0000100 INFO : STREAM 0x00a7000 - 0x0000001 INFO : STREAM 0x0054000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x0056000 - 0x0000000 0x0000000 0x0000001 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x005b000 - 0x0000000 0x0000005 0x000000a 0x0000003 0x0000000 INFO : End of initialization INFO : End of write delay center optimization INFO : Training has run successfully! 1D training succeed Load ddrfw from eMMC, src: 0x00048200, des: 0xfffd0000, size: 0x0000c000, part: 0 Check phy result INFO : STREAM 0x012c000 - INFO : STREAM 0x0130000 - 0x0000100 INFO : STREAM 0x0127000 - 0x0000001 INFO : STREAM 0x00d4000 - 0x0000000 0x0000000 0x0000000 INFO : STREAM 0x00d6000 - 0x0000000 0x0000000 0x0000006 0x0000000 0x0000000 0x00000ae INFO : STREAM 0x00db000 - 0x0000000 0x0000005 0x0000002 0x0000003 0x0000000 INFO : End of initialization INFO : End of 2D read delay Voltage center optimization INFO : End of 2D read delay Voltage center optimization INFO : End of 2D write delay Voltage center optimization INFO : End of 2D write delay Voltage center optimization INFO : Training has run successfully!

channel==0 RxClkDly_Margin_A0==78 ps 7 TxDqDly_Margin_A0==89 ps 8 RxClkDly_Margin_A1==0 ps 0 TxDqDly_Margin_A1==0 ps 0 TrainedVREFDQ_A0==76 TrainedVREFDQ_A1==0 VrefDac_Margin_A0==18 DeviceVref_Margin_A0==38 VrefDac_Margin_A1==0 DeviceVref_Margin_A1==0

channel==1 RxClkDly_Margin_A0==67 ps 6 TxDqDly_Margin_A0==100 ps 9 RxClkDly_Margin_A1==0 ps 0 TxDqDly_Margin_A1==0 ps 0 TrainedVREFDQ_A0==82 TrainedVREFDQ_A1==0 VrefDac_Margin_A0==17 DeviceVref_Margin_A0==32 VrefDac_Margin_A1==0 DeviceVref_Margin_A1==0

dwc_ddrphy_apb_wr((0<<20)|(2<<16)|(0<<12)|(0xb0):000 2D training succeed auto size-- 65535 write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-error write-errorDDR cs0 size: 3MB DDR cs1 size: 0MB DMC_DDR_CTRL: 00c0002dDDR size: 0MB DATA-W[0x00000000]:0xaaaaaaaa,R:0xaaaa0000 fail D1 3 5 7 9 11 13 15 DATA-W[0x00000000]:0x55555555,R:0x00000004 fail D0 4 6 8 10 12 14 16 18 20 22 24 26 28 30 DATA-W[0x00000000]:0x00000001,R:0x00000000 fail D0 DATA-W[0x00000000]:0x00000002,R:0x00000000 fail D1 DATA-W[0x00000000]:0x00000004,R:0x00000000 fail D2 DATA-W[0x00000000]:0x00000008,R:0x00000000 fail D3 DATA-W[0x00000000]:0x00000010,R:0x00000000 fail D4 DATA-W[0x00000000]:0x00000020,R:0x00000000 fail D5 DATA-W[0x00000000]:0x00000040,R:0x00000000 fail D6 DATA-W[0x00000000]:0x00000080,R:0x00000000 fail D7 DATA-W[0x00000000]:0x00000100,R:0x00000000 fail D8 DATA-W[0x00000000]:0x00000200,R:0x00000000 fail D9 DATA-W[0x00000000]:0x00000400,R:0x00000000 fail D10 DATA-W[0x00000000]:0x00000800,R:0x00000000 fail D11 DATA-W[0x00000000]:0x00001000,R:0x00000000 fail D12 DATA-W[0x00000000]:0x00002000,R:0x8f00cb77 fail D0 1 2 4 5 6 8 9 11 13 14 15 24 25 26 27 31 DATA-W[0x00000000]:0x00004000,R:0x00000000 fail D14 DATA-W[0x00000000]:0x00008000,R:0x00000000 fail D15 DATA-W[0x00000000]:0x00010000,R:0x00000000 fail D16 DATA-W[0x00000000]:0x00020000,R:0x00000000 fail D17 DATA-W[0x00000000]:0x00040000,R:0x00000000 fail D18 DATA-W[0x00000000]:0x00080000,R:0x00000000 fail D19 DATA-W[0x00000000]:0x00100000,R:0x00000000 fail D20 DATA-W[0x00000000]:0x00200000,R:0x00000000 fail D21 DATA-W[0x00000000]:0x00400000,R:0x00000000 fail D22 DATA-W[0x00000000]:0x00800000,R:0x00000000 fail D23 DATA-W[0x00000000]:0x01000000,R:0x00000000 fail D24 DATA-W[0x00000000]:0x02000000,R:0x00000000 fail D25 DATA-W[0x00000000]:0x04000000,R:0x00000000 fail D26 DATA-W[0x00000000]:0x08000000,R:0x00000000 fail D27 DATA-W[0x00000000]:0x10000000,R:0x00000000 fail D28 DATA-W[0x00000000]:0x20000000,R:0x00000000 fail D29 DATA-W[0x00000000]:0x40000000,R:0x00000000 fail D30 DATA-W[0x00000000]:0x80000000,R:0x00000000 fail D31 cs0 DataBus test failed ADDR-W[0x00000004]:0xaaaaaaaa,R:0x00005555 cs0 AddrBus test failed fail address pin cs 0 add 0x 00000004 Cfg max: 5, cur: 5. Board id: 255. Force loop cfg LPDDR3 probe Firmware does not exist! All ddr config failed... Reset... boot times 0`

a520ass commented 2 years ago

你好,我的设备刷入emmc后就无法启动,有好几处error,我不大明白是哪里导致的问题,ttl信息如下:

勾选擦除bootloader,重新线刷回安卓,使用armbian-install no写入试下

sesame-foxes commented 2 years ago

你好,我的设备刷入emmc后就无法启动,有好几处error,我不大明白是哪里导致的问题,ttl信息如下:

勾选擦除bootloader,重新线刷回安卓,使用armbian-install no写入试下

armbian-install no 是可以的,但是我想写入uboot,是不支持吗

a520ass commented 2 years ago

你好,我的设备刷入emmc后就无法启动,有好几处error,我不大明白是哪里导致的问题,ttl信息如下:

勾选擦除bootloader,重新线刷回安卓,使用armbian-install no写入试下

armbian-install no 是可以的,但是我想写入uboot,是不支持吗

你要主线u-boot的话,必须提取本机的acs.bin,你用其他型号的不一定能用

sesame-foxes commented 2 years ago

你好,我的设备刷入emmc后就无法启动,有好几处error,我不大明白是哪里导致的问题,ttl信息如下:

勾选擦除bootloader,重新线刷回安卓,使用armbian-install no写入试下

armbian-install no 是可以的,但是我想写入uboot,是不支持吗

你要主线u-boot的话,必须提取本机的acs.bin,你用其他型号的不一定能用

用的盒子是311-1a,好像分好几种,有的ys(m)可以写入主线,有的ys(s)不行。。。想写入个openwrt都难

xcray commented 2 years ago

勾选擦除bootloader,重新线刷回安卓,使用armbian-install no写入试下

armbian-install no 是可以的,但是我想写入uboot,是不支持吗

羡慕啊! 我完整的重新折腾了两遍,想要armbian-install no的效果却得不到: 先参考上文修改mmc最大频率,先减一半,试了不行再减一半。每次都先拷入U盘验证启动没问题。

线刷安卓->U盘用修改过的u200.dtb和u200 uboot启动->按文档说明检查修改armbian-install脚本(注释掉K510="1"后面那一行,另一处最新版已不需要修改)->armbian-install no,选0、soc输s905l3a、dtb输已修改过的meson-g12a-u200.dtb(已拷入U盘boot分区/dtb/amlogic验证可启动)->选Overload uboot为U盘可启动的u-boot-u200.bin ->主线和安卓uboot直接回车

完成后halt拔电拔U盘,重新加电,开机画面后持续黑屏,等很久都没动静,路由器上也看不到。

难道我还漏了什么步骤?

xcray commented 2 years ago

后来接上TTL挨个组合uboot和dtb测试,发现最好使的是e900v22c的uboot+u200的dtb,armbian-install no可以顺利从emmc启动。 不管哪个版本的内核,都要把uboot复制到u-boot.emmc,否则认不出网卡、内存也只能认出一半。 另外,在u-boot.emmc加持下,5.10、5.15、5.18启动后能认出网卡、但无法获得IP地址,必须重新插网线才行,5.4没这个问题。 之前用u200的uboot、5.4、5.15和5.18内核都没问题,但不能从emmc启动。

mia0x75 commented 1 year ago

https://github.com/unifreq/linux-5.15.y/blob/main/arch/arm64/boot/dts/amlogic/meson-g12a-s905l3a-e900v22c.dts 这个是源文件,你修改的什么位置(第几行?改成什么?),标记下你的修改方案,给使用这个设备人的朋友们指导下你的使用方案。

我测试的E900V22D,是需要修改&sd_emmc_c的max-frequency = <50000000>;

@a520ass 请问22D的刷机步骤是什么?手里有一台江苏版原系统。直接写U盘,插入U盘,断电重启按遥控右键?