找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
楼主: 白云朵朵

[其他设备] R3300-M运行Manjaro-ARM 21.10(5.14 vim内核)

[复制链接]
发表于 2022-1-8 08:36 | 显示全部楼层
白云朵朵 发表于 2021-10-24 13:50
gxbb s905刷emmc就别想了,只有上古3.14内核能从emmc启动

大师,请教一下,

为啥只有3.14的内核能刷入emmc呢?
反而之后,更加新一些的 armbian却不能刷入?

我尝试把armbian5.77刷入现在是ATV的R3300-M的emmc里,
不管避让mmcblk前面多少MB,
都会导致uboot不能正常启动
(TTL没有正常的命令行)
只能重新线刷安卓,才能有uboot
回复 支持 反对

使用道具 举报

发表于 2022-1-8 08:41 | 显示全部楼层
这个刷入armbian的脚本里,
是破坏了原来的uboot吗?
难道原来的uboot不是在emmc的boot0区域的吗?
或者,
即便是在UDA区域的前4MB里(参考uboot启动时显示的SPL里的分区表),把armbian刷入emmc的时候,也把这部分区域让开了啊,,,甚至是skip了700MB,把安卓里的env分区,tee分区都让开了呢…

怎么会uboot就被损毁了,不能启动了呢?
……………………

还望大湿不吝赐教

点评

https://forum.libreelec.tv/thread/21134-what-aspects-of-hardware-is-supported-under-amlogic-mainline-at-the-moment/ 这个帖子说得比较详细,节选一段: GXBB cannot boot mainline u-boot from emmc (GX  详情 回复 发表于 2022-1-9 08:28
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-9 08:28 | 显示全部楼层
gaze 发表于 2022-1-8 08:41
这个刷入armbian的脚本里,
是破坏了原来的uboot吗?
难道原来的uboot不是在emmc的boot0区域的吗?

https://forum.libreelec.tv/threa ... line-at-the-moment/

这个帖子说得比较详细,节选一段:

GXBB cannot boot mainline u-boot from emmc (GXBB checks for boot firmware in the first sector which conflicts with MBR tables, which is why the BSP u-boot has some crazy not-upstreamable custom partition scheme to workaround the SoC design mistake).

反正结论就是GXBB别尝试安装系统到emmc分区,缺乏上游支持。另外Manjaro ARM 21.12 已经放弃主线u-boot,用bsp u-boot(就是安卓提供的那个) 直接启动linux。我简单测了下,第一能启动系统,第二安装到emmc分区不行。另外关机重启和hdmi都有点问题。

点评

但是,是否可以有这样一个操作: 在原始uboot映像的基础上,构造一个新的u-boot.bin: 往后整体平移1KB, 然后,在文件的第一个Byte写JMP代码, 让cpu直接从0x400开始执行原来的uboot 从而跳过446-509By  详情 回复 发表于 2022-1-9 12:28
非常感谢您的指点: 但 GXBB 无法从 emmc 启动主线 u-boot (GXBB 检查与 MBR 表冲突的第一个扇区中的启动固件, 这就是为什么 BSP u-boot 有一些疯狂的原因非上游自  详情 回复 发表于 2022-1-9 12:06
回复 支持 反对

使用道具 举报

发表于 2022-1-9 12:06 | 显示全部楼层
白云朵朵 发表于 2022-1-9 08:28
https://forum.libreelec.tv/thread/21134-what-aspects-of-hardware-is-supported-under-amlogic-mainli ...

非常感谢您的指点:

                       但 GXBB 无法从 emmc 启动主线 u-boot           (GXBB 检查与 MBR 表冲突的第一个扇区中的启动固件,         
这就是为什么 BSP u-boot 有一些疯狂的原因非上游自定义分区方案来解决 SoC 设计错误)

据此理解,
其实就是说:
(所有)GXBB类型主板的uboot都把自己写满了整个的第一扇区的512Bytes
这太可怕了。

所以当我们试图写入emmc,对emmc做MBR的fdisk的时候,
分区表会覆盖emmc的UDA区域的第一扇区的446-509 Bytes,

所以就损毁了uBoot

如果在分区之后重新将原来的4MB完全复制回到emmc里,
则又会覆盖第一扇区里的分区表,同样不能启动。。。。

回复 支持 反对

使用道具 举报

发表于 2022-1-9 12:28 | 显示全部楼层
白云朵朵 发表于 2022-1-9 08:28
https://forum.libreelec.tv/thread/21134-what-aspects-of-hardware-is-supported-under-amlogic-mainli ...

但是,是否可以有这样一个操作:

在原始uboot映像的基础上,构造一个新的u-boot.bin:

        往后整体平移1KB,
        然后,在文件的第一个Byte写JMP代码,
        让cpu直接从0x400开始执行原来的uboot
        从而跳过446-509Bytes的分区表,


这样,既可以启动原来的uboot,又保护了emmc上的MBR分区表不被破坏,
能被uboot识别出来,从而装载zImage、dtb等等,启动Linux。

点评

这个帖子包含S905从emmc启动armbian的详细步骤,不过是俄文的,结合翻译看吧,过程比较复杂  详情 回复 发表于 2022-7-24 20:02
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-9 15:55 | 显示全部楼层
gaze 发表于 2022-1-9 12:28
但是,是否可以有这样一个操作:

在原始uboot映像的基础上,构造一个新的u-boot.bin:

https://forum.armbian.com/topic/18902-s905-failed-to-boot-from-emmc/

这个帖子里有人声称成功将Armbian 20.10 装入了GXBB盒子的EMMC中,你可以参考下,我对uboot不熟悉没重现成功:
[color=rgb( var(--theme-brand_primary) )]@hexdump sorry, I didn't realize how much time has passed since we talked, lol. It is about Amologix S905. As you know the ROM in this SOC looks for bootloader at the 1st sector of the eMMC, so it is not possible to create regular partitions since the part. table would overwrite the bootloader. The result is that u-boot commands like 'fatload' won't work. Which prevented me from installing Armbian into eMMC.
E.g.: the chainloaded u-boot will report:
U-Boot 2020.07-dirty (Oct 24 2020 - 21:14:30 +0200) hexdump-gxbb...switch to partitions #0, OKmmc2 is current device** No partition table - mmc 2 **
I resolved this by dedicating 2 areas at the end of eMMC: 200MB 'boot', and the rest (~6GB) as 'root'. I exposed these to Linux using kernel command line parameter: 'blkdevparts=mmcblk1:209715200@1463812096(boot),-@1673528320(root)'.

In Linux I copied the root directory tree to /dev/mmcblk1p2. I left /dev/mmcblk1p1 (the boot "partition") without file system, and copied (dd) uboot (the mailine uboot), kernel, ramdisk, and dtb there at the predefined block positions, e.g: 'dd if=zImage of=/dev/mmcblk1p2 bs=512 seek=2859008 count=54841'.

In Amlogic u-boot instead of fatload I used 'mmc read' to load all files, e.g.: to load the kernel: 'mmc read 0x08080000 0x2BA3FC 0xD639'.

In the chainloaded Mainline u-boot I used 'booti 0x08080000 0x13000000 0x08008000' as 'bootcmd' to start the system.

With this setup I can now boot from eMMC. Thanks for you assistance; your comments on the subject in various threads on the forum were very helpful.

我之前尝试过将Armbian装入emmc,结果遇到了如上所示的找不到分区表错误。帖子中的pistar用mmc read代替mmc fatload来规避第一sector的问题,并声称成功实现。不过我对u-boot不熟悉,他也没给出详细步骤所以没复现成功,你可以看下


回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-10 07:23 | 显示全部楼层
gaze 发表于 2022-1-9 12:28
但是,是否可以有这样一个操作:

在原始uboot映像的基础上,构造一个新的u-boot.bin:

我之前的回复貌似被吞了,再发一次:

@hexdump sorry, I didn't realize how much time has passed since we talked, lol. It is about Amologix S905. As you know the ROM in this SOC looks for bootloader at the 1st sector of the eMMC, so it is not possible to create regular partitions since the part. table would overwrite the bootloader. The result is that u-boot commands like 'fatload' won't work. Which prevented me from installing Armbian into eMMC.

E.g.: the chainloaded u-boot will report:


U-Boot 2020.07-dirty (Oct 24 2020 - 21:14:30 +0200) hexdump-gxbb
...
switch to partitions #0, OK
mmc2 is current device
** No partition table - mmc 2 **


I resolved this by dedicating 2 areas at the end of eMMC: 200MB 'boot', and the rest (~6GB) as 'root'. I exposed these to Linux using kernel command line parameter: 'blkdevparts=mmcblk1:209715200@1463812096(boot),-@1673528320(root)'.



In Linux I copied the root directory tree to /dev/mmcblk1p2. I left /dev/mmcblk1p1 (the boot "partition") without file system, and copied (dd) uboot (the mailine uboot), kernel, ramdisk, and dtb there at the predefined block positions, e.g: 'dd if=zImage of=/dev/mmcblk1p2 bs=512 seek=2859008 count=54841'.



In Amlogic u-boot instead of fatload I used 'mmc read' to load all files, e.g.: to load the kernel: 'mmc read 0x08080000 0x2BA3FC 0xD639'.



In the chainloaded Mainline u-boot I used 'booti 0x08080000 0x13000000 0x08008000' as 'bootcmd' to start the system.



With this setup I can now boot from eMMC. Thanks for you assistance; your comments on the subject in various threads on the forum were very helpful.

这个人也是用的GXBB盒子,他声称用mmc read取代mmc fatload解决的emmc启动问题,不过缺少具体步骤,你可以参考
回复 支持 反对

使用道具 举报

发表于 2022-5-14 16:13 | 显示全部楼层
MXQ_PRO_4K_p201_android_TV_by cOOLio_V2.5_MEE.7z
百度盘下载了几次都是包损坏

回复 支持 反对

使用道具 举报

发表于 2022-5-14 19:42 | 显示全部楼层
zte b860av1.1-t
刷MXQ_PRO_4K_p201_android_TV_by cOOLio_V2.5_MEE.7z

报错
[Err]--[0x10105002]Romcode/初始化DDR/读取初始化结果/USB控制命令出错


在coreelec里看soc是s905m2 rev c
回复 支持 反对

使用道具 举报

发表于 2022-5-24 19:15 | 显示全部楼层
楼主的s905m-b
居然用的dtb是gxbb的

而正常s905mb是gxl

被误导了

回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-7-24 20:02 | 显示全部楼层
gaze 发表于 2022-1-9 12:28
但是,是否可以有这样一个操作:

在原始uboot映像的基础上,构造一个新的u-boot.bin:

这个帖子包含S905从emmc启动armbian的详细步骤,不过是俄文的,结合翻译看吧,过程比较复杂

https://github.com/d51x/armbian-s905
回复 支持 反对

使用道具 举报

发表于 2022-7-24 20:33 | 显示全部楼层
白云朵朵 发表于 2022-7-24 20:02
这个帖子包含S905从emmc启动armbian的详细步骤,不过是俄文的,结合翻译看吧,过程比较复杂

https://g ...

多谢大师指点迷津^_^
我去看一下…
回复 支持 反对

使用道具 举报

发表于 2022-10-31 00:00 | 显示全部楼层
老哥  你是b站那个大哥吗

点评

我在B站发过一些关于R3300-M的帖子  详情 回复 发表于 2022-11-3 12:16
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-3 12:16 | 显示全部楼层
aaqzzx 发表于 2022-10-31 00:00
老哥  你是b站那个大哥吗

我在B站发过一些关于R3300-M的帖子
回复 支持 反对

使用道具 举报

发表于 2023-3-9 10:12 | 显示全部楼层
本帖最后由 青青草原 于 2023-3-9 10:18 编辑

这个旧盒子了,性能一般。现在最新的一款是e900v22c s905l3a 看这个芯片好像是s905x2的  配置2GB内存 能不能用外置存储卡体验Manjaro  有适配好的固件吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-6-15 04:01

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表