Closed lovl88 closed 1 year ago
我这个盒子的无线是8822CS无线带蓝牙,好像都用不了
@ophubE900V21E(S905L2)这款盒子识别不了EMMC,那不是也要修改频率才能识别
lsblk
看一下。大部分的魔百和都需要降低频率使用,从200HZ降低到100或者50。你不能写入emmc报的什么错误。
https://github.com/ophub/amlogic-s9xxx-armbian/commit/c9b6a7747bd6726f0773744159f59ed9332adcd7
我添加到了列表里了,编号122,以后你使用这个即可,名字里的关键字:s905l2-e900v21e
是不是可以写入EMCC啦
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年4月13日(星期四) 晚上6:55 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [ophub/amlogic-s9xxx-armbian] 魔百和E900v21E(s905L2)使用方法 (Issue #1278)
c9b6a77
我添加到了列表里了,编号122,以后你使用这个即可,名字里的关键字:s905l2-e900v21e
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
你选122试试,现在的固件列表里没你的盒子名称,选122即可,试试
修改 /boot/uEnv.txt 里dtb的名字为:meson-gxl-s905l3b-e900v22e.dtb ,那个extlinux目录里的文件要修改吗,我之前去掉BAK才可以启动的
编号122是什么没有明白
122
就是你armbian-install
安装到emmc时的选项。
https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/build-armbian/armbian-files/common-files/etc/model_database.conf
# 一行复制下面的命令,到盒子里执行下,就覆盖了本地的原来的就文件了,然后再运行armbian-install选122即可
wget https://raw.githubusercontent.com/ophub/amlogic-s9xxx-armbian/main/build-armbian/armbian-files/common-files/etc/model_database.conf -O /etc/model_database.conf
以后下载新的固件是不是就更新了DTB不用在修改了和更新这个写入122编号
嗯,晚上我重新打包下,里面就自带了,现在你先下载下配置文件,就和打包后结果一样。只是多了这一行配置
好的我先测试下,测试好了留言,谢谢
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年4月13日(星期四) 晚上7:41 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [ophub/amlogic-s9xxx-armbian] 魔百和E900v21E(s905L2)使用方法 (Issue #1278)
嗯,晚上我重新打包下,里面就自带了,现在你先下载下配置文件,就和打包后结果一样。只是多了这一行配置
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
这个好像和那个MG2000(S905L2)的差不多编号113,我到时也测试下MY2000,这个我也有一个,不知道之前有人反馈没有 E900v21E(s905L2)测试结果如下,写入不成功 启动是用的meson-gxl-s905l3b-e900v22e.dtb
--------------------------------------------------------------------------------------
[ OPTIONS ] Please Input ID: 122
[ INFO ] Input Box ID: [ 122 ]
[ INFO ] FDTFILE: [ meson-gxl-s905l2-x7-5g.dtb ]
[ INFO ] MAINLINE_UBOOT: [ ]
[ INFO ] BOOTLOADER_IMG: [ ]
[ INFO ] UBOOT_OVERLOAD: [ u-boot-s905x-s912.bin ]
[ INFO ] NEED_OVERLOAD: [ yes ]
[ STEPS ] Start selecting file system type...
-----------------------------------------------
ID TYPE
-----------------------------------------------
1 ext4
2 btrfs
-----------------------------------------------
[ OPTIONS ] Please Input ID (1/2): 1
[ INFO ] Input Type ID: [ 1 ]
[ INFO ] The type of file system: [ ext4 ]
[ STEPS ] Start creating eMMC partition...
[ INFO ] Start backing up the default bootloader.
记录了4+0 的读入
记录了4+0 的写出
4194304字节(4.2 MB,4.0 MiB)已复制,0.657333 s,6.4 MB/s
[ INFO ] Start create MBR and partittion.
Error: 输入/输出错误 during write on /dev/mmcblk2
Error: 输入/输出错误 during write on /dev/mmcblk2
Error: 输入/输出错误 during write on /dev/mmcblk2
[ ERROR ] Failed to create partition using [ parted ].
lsblk 看看结果
https://github.com/ophub/amlogic-s9xxx-armbian/issues/1277 看这个帖子,照着改频率测试
https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/build-armbian/documents/README.cn.md 看12.16 和 12.13
root@armbian:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 14.6G 0 disk
├─sda1 8:1 1 255M 0 part /boot
└─sda2 8:2 1 14.4G 0 part /
mmcblk2 179:0 0 7.3G 0 disk
└─mmcblk2p2 179:2 0 6G 0 part
mmcblk2boot0 179:32 0 4M 1 disk
mmcblk2boot1 179:64 0 4M 1 disk
zram0 254:0 0 462.5M 0 disk [SWAP]
zram1 254:1 0 50M 0 disk /var/log
好的,我看看
root@armbian:/boot/dtb# dtc -I dtb -O dts -o xxx.dts meson-gxl-s905l3b-e900v22e.dtb xxx.dts: Warning (unit_address_vs_reg): /soc/bus@c8100000/pinctrl@14: node has a unit name, but no reg property xxx.dts: Warning (unit_address_vs_reg): /soc/bus@c8834000/pinctrl@4b0: node has a unit name, but no reg property xxx.dts: Warning (simple_bus_reg): /soc/bus@c8100000/pinctrl@14: missing or empty reg/ranges property xxx.dts: Warning (simple_bus_reg): /soc/bus@c8834000/pinctrl@4b0: missing or empty reg/ranges property xxx.dts: Warning (gpios_property): /symbols:gpio: property size (39) is invalid, expected multiple of 4 root@armbian:/boot/dtb# dtc -I dtb -O dts -o ddd.dts meson-gxl-s905l3b-e900v22e.dtb ddd.dts: Warning (unit_address_vs_reg): /soc/bus@c8100000/pinctrl@14: node has a unit name, but no reg property ddd.dts: Warning (unit_address_vs_reg): /soc/bus@c8834000/pinctrl@4b0: node has a unit name, but no reg property ddd.dts: Warning (simple_bus_reg): /soc/bus@c8100000/pinctrl@14: missing or empty reg/ranges property ddd.dts: Warning (simple_bus_reg): /soc/bus@c8834000/pinctrl@4b0: missing or empty reg/ranges property ddd.dts: Warning (gpios_property): /symbols:gpio: property size (39) is invalid, expected multiple of 4
忽视警告
mmc@70000 mmc@72000 mmc@74000 这三个地方 如下的行修改
max-frequency = <0x5f5e100>;
mmc@70000 {
compatible = "amlogic,meson-gx-mmc\0amlogic,meson-gxbb-mmc";
reg = <0x00 0x70000 0x00 0x800>;
interrupts = <0x00 0xd8 0x04>;
status = "okay";
clocks = <0x03 0x5e 0x03 0x77 0x03 0x04>;
clock-names = "core\0clkin0\0clkin1";
resets = <0x11 0x2c>;
pinctrl-0 = <0x21>;
pinctrl-1 = <0x22>;
pinctrl-names = "default\0clk-gate";
#address-cells = <0x01>;
#size-cells = <0x00>;
bus-width = <0x04>;
cap-sd-highspeed;
sd-uhs-sdr12;
sd-uhs-sdr25;
sd-uhs-sdr50;
sd-uhs-sdr104;
max-frequency = <0x5f5e100>;
non-removable;
disable-wp;
keep-power-in-suspend;
mmc-pwrseq = <0x23>;
vmmc-supply = <0x24>;
vqmmc-supply = <0x25>;
phandle = <0x9b>;
mmc@72000 {
compatible = "amlogic,meson-gx-mmc\0amlogic,meson-gxbb-mmc";
reg = <0x00 0x72000 0x00 0x800>;
interrupts = <0x00 0xd9 0x04>;
status = "okay";
clocks = <0x03 0x5f 0x03 0x7a 0x03 0x04>;
clock-names = "core\0clkin0\0clkin1";
resets = <0x11 0x2d>;
pinctrl-0 = <0x26>;
pinctrl-1 = <0x27>;
pinctrl-names = "default\0clk-gate";
bus-width = <0x04>;
cap-sd-highspeed;
max-frequency = <0x2faf080>;
disable-wp;
cd-gpios = <0x28 0x30 0x01>;
vmmc-supply = <0x24>;
vqmmc-supply = <0x25>;
phandle = <0x9c>;
};
mmc@74000 {
compatible = "amlogic,meson-gx-mmc\0amlogic,meson-gxbb-mmc";
reg = <0x00 0x74000 0x00 0x800>;
interrupts = <0x00 0xda 0x04>;
status = "okay";
clocks = <0x03 0x60 0x03 0x7d 0x03 0x04>;
clock-names = "core\0clkin0\0clkin1";
resets = <0x11 0x2e>;
pinctrl-0 = <0x29 0x2a>;
pinctrl-1 = <0x2b>;
pinctrl-names = "default\0clk-gate";
bus-width = <0x08>;
cap-mmc-highspeed;
max-frequency = <0x5f5e100>;
是不是改这个地方
改完反编译回去,同名覆盖到/boot/dtb/amlogic,重启测试,一般50,52,100都可以。
只搜索到这三段代码里有这个 全改成十进制的 50000000 对应的十六进制为 0x2faf080 好像启动不了啦 你说的 50 52 100是什么 是限速吗
12.16 如何解决写入 eMMC 时 I/O 错误的问题 有些设备可以从 USB/SD/TF 正常启动 Armbian 使用,但是写入 eMMC 时会报 I/O 写入错误,例如 https://github.com/ophub/amlogic-s9xxx-armbian/issues/989 中的案例,报错内容如下:
[ 284.338449] I/O error, dev mmcblk2, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 2 [ 284.341544] Buffer I/O error on dev mmcblk2, logical block 0, lost async page write [ 284.446972] I/O error, dev mmcblk2, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 2 [ 284.450074] Buffer I/O error on dev mmcblk2, logical block 0, lost async page write [ 284.497746] I/O error, dev mmcblk2, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 2 [ 284.500871] Buffer I/O error on dev mmcblk2, logical block 0, lost async page write 这种情况下可以调整所使用的 dtb 的工作模式速度和频率,来稳定对存储的读写支持。使用 sdr 模式时,频率是速度的 2 倍,使用 ddr 模式时,频率等于速度。如下:
sd-uhs-sdr12 sd-uhs-sdr25 sd-uhs-sdr50 sd-uhs-ddr50 sd-uhs-sdr104
max-frequency = <208000000>; 以内核源码的 dts 文件中的代码片段举例:
/ SD card / &sd_emmc_b { status = "okay";
bus-width = <4>;
cap-sd-highspeed;
sd-uhs-sdr12;
sd-uhs-sdr25;
sd-uhs-sdr50;
max-frequency = <100000000>;
};
/ eMMC / &sd_emmc_c { status = "okay";
bus-width = <8>;
cap-mmc-highspeed;
max-frequency = <100000000>;
}; 一般情况下,把 &sd_emmc_c 的频率由 max-frequency = <200000000>; 下调为 max-frequency = <100000000>; 即可解决问题。如果不行可继续下调到 50000000 进行测试,并通过调整 &sd_emmc_b 来对 USB/SD/TF 进行设置,也可以使用 sd-uhs-sdr 进行限速。你可以通过修改 dts 文件并 编译 得到测试文件,也可以通过 12.13 节 中介绍的方法对已有的 dtb 文件进行反编译修改生成测试文件。反编译 dtb 文件修改时使用十六进制的值,其中十进制的 200000000 对应的十六进制为 0xbebc200,十进制的 100000000 对应的十六进制为 0x5f5e100,十进制的 50000000 对应的十六进制为 0x2faf080,十进制的 25000000 对应的十六进制为 0x17d7840。
@ophub 编译修改了dtb如下两段代码
mmc@72000 {
compatible = "amlogic,meson-gx-mmc\0amlogic,meson-gxbb-mmc";
reg = <0x00 0x72000 0x00 0x800>;
interrupts = <0x00 0xd9 0x04>;
status = "okay";
clocks = <0x03 0x5f 0x03 0x7a 0x03 0x04>;
clock-names = "core\0clkin0\0clkin1";
resets = <0x11 0x2d>;
pinctrl-0 = <0x26>;
pinctrl-1 = <0x27>;
pinctrl-names = "default\0clk-gate";
bus-width = <0x04>;
cap-sd-highspeed;
max-frequency = <0x17d7840>; 这里改成了(十进制的 25000000 对应的十六进制为 0x17d7840)
disable-wp;
cd-gpios = <0x28 0x30 0x01>;
vmmc-supply = <0x24>;
vqmmc-supply = <0x25>;
phandle = <0x9c>;
};
mmc@74000 {
compatible = "amlogic,meson-gx-mmc\0amlogic,meson-gxbb-mmc";
reg = <0x00 0x74000 0x00 0x800>;
interrupts = <0x00 0xda 0x04>;
status = "okay";
clocks = <0x03 0x60 0x03 0x7d 0x03 0x04>;
clock-names = "core\0clkin0\0clkin1";
resets = <0x11 0x2e>;
pinctrl-0 = <0x29 0x2a>;
pinctrl-1 = <0x2b>;
pinctrl-names = "default\0clk-gate";
bus-width = <0x08>;
cap-mmc-highspeed;
max-frequency = <0x17d7840>; 这里改成了(十进制的 25000000 对应的十六进制为 0x17d7840)
disable-wp;
non-removable;
disable-wp;
mmc-ddr-1_8v;
mmc-hs200-1_8v;
mmc-pwrseq = <0x2c>;
vmmc-supply = <0x2d>;
vqmmc-supply = <0x25>;
phandle = <0x9d>;
编译回去的 很多警告,, 复制回去后重启后依然报错如下
[ OPTIONS ] Please Input ID: 122
[ INFO ] Input Box ID: [ 122 ]
[ INFO ] FDTFILE: [ meson-gxl-s905l2-x7-5g.dtb ]
[ INFO ] MAINLINE_UBOOT: [ ]
[ INFO ] BOOTLOADER_IMG: [ ]
[ INFO ] UBOOT_OVERLOAD: [ u-boot-s905x-s912.bin ]
[ INFO ] NEED_OVERLOAD: [ yes ]
[ STEPS ] Start selecting file system type...
-----------------------------------------------
ID TYPE
-----------------------------------------------
1 ext4
2 btrfs
-----------------------------------------------
[ OPTIONS ] Please Input ID (1/2): 1
[ INFO ] Input Type ID: [ 1 ]
[ INFO ] The type of file system: [ ext4 ]
[ STEPS ] Start creating eMMC partition...
[ INFO ] Start backing up the default bootloader.
dd: 读取 '/dev/mmcblk2' 时出错: 输入/输出错误
记录了0+0 的读入
记录了0+0 的写出
0字节已复制,0.101151 s,0.0 kB/s
[ ERROR ] Using dd to backup [ /usr/lib/u-boot/mybox-bootloader.img ] failed.
继续换,那几个频率都试试
@ophub 只换mmc72000 和mmc74000 的频率就可以啦吧
@ophub 只换mmc72000 和mmc74000 的频率都改成 25000000 20000000 15000000 三种都试过了还是不行
你的存储上标注了是nand?你网上搜一下他的代码是emmc还是nand
刚看了下主板图还真是
此处可以画个逗号了。 我比较笨,看不懂官方的代码,没搞定nand写入脚本。你可以看看官方的nand操作。
https://github.com/armbian/build/blob/main/packages/bsp/common/usr/sbin/armbian-install
可能需要其他地方也配合,可能内核里应该启用什么选项,但是我不会弄。
你都看 不懂,我更加看不懂,那还是算了, 谢谢大佬
不要放弃,心存梦想,总会实现的。 我也是初学者,一边搜索一边尝试。 看看窗外,告诉自己,明天我会搞定怎么写入nand的,有空就搜搜,也许明天就找到方法了。 我最无奈的是不知道搜点什么关键字去找教程。官方的脚本能写入,他是开源的代码,慢慢学习,那个脚本的一些逻辑我看着迷糊所以没摸到根上,顺着那个脚本应该可以找到点什么,直觉告诉我可能不只是脚本的一个命令的区别,因为查看存储的命令目前在系统里执行也无效,可能需要内核启用什么? 心存念想,念念不忘,必有回报。只要你没有放弃,路就在脚下继续向前延伸,哈哈
我都奔五了还是有一肯定难度,有时间我在研究下,暂时先放一放,记住你的话了 “不要放弃,心存梦想,总会实现的,心存念想,念念不忘,必有回报” 谢谢
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年4月14日(星期五) 下午2:59 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [ophub/amlogic-s9xxx-armbian] 魔百和E900v21E(s905L2)使用方法 (Issue #1278)
不要放弃,心存梦想,总会实现的。 我也是初学者,一边搜索一边尝试。 看看窗外,告诉自己,明天我会搞定怎么写入nand的,有空就搜搜,也许明天就找到方法了。 我最无奈的是不知道搜点什么关键字去找教程。官方的脚步能写入,他是开源的代码,慢慢学习,那个脚本的一些逻辑我看着迷糊所以没摸到根上,顺着那个脚本应该可以找到点什么,直觉告诉我可能不只是脚本的一个命令的区别,因为查看存储的命令目前在系统里执行也无效,可能需要内核启用什么? 心存念想,念念不忘,必有回报。哈哈
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
这个是E-NAND 就是EMMC 不是nand 刚才问了下别人
如果是emmc,你改100hz或者50hz肯定可以,目前还没发现不能的。你只改mmc@74000那段的值就可以,这个对应emmc
目前见存储上标有nand的,还没有能写入成功的。
是很奇怪 ,改了三种 mmc0 = @.**@."; mmc1 = @.**@."; mmc2 = @.**@."; 这里有三个,我只改 了一和2的参数 我把0的参数也改过一次,后直接都找不到了
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年4月14日(星期五) 下午3:12 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [ophub/amlogic-s9xxx-armbian] 魔百和E900v21E(s905L2)使用方法 (Issue #1278)
如果是emmc,你改100hz或者50hz肯定可以,目前还没发现不能的。 目前见存储上标有nand的,还没有能写入成功的。
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
SK海力士e-NAND由NAND闪存和MMC控制器组成。 e-NAND 内置智能控制器,可管理接口协议、磨损均衡、坏块管理、垃圾收集和 ECC。 e-NAND 保护数据内容免受主机突然断电故障的影响。 e-NAND 兼容 JEDEC 标准 eMMC5.1 规范
eMMC ( Embedded Multi Media Card) 采用统一的MMC标准接口, 把高密度NAND Flash以及MMC Controller封装在一颗BGA芯片中。针对Flash的特性,产品内部已经包含了Flash管理技术,包括错误探测和纠正,flash平均擦写,坏块管理,掉电保护等技术。用户无需担心产品内部flash晶圆制程和工艺的变化。同时eMMC单颗芯片为主板内部节省更多的空间。
简单地说,eMMC=Nand Flash+控制器+标准封装
先就这样吧,暂时不折腾啦
我手头有一个,魔百盒CM201-1,长虹代工的 这里有一个它的分区备份(https://www.mydigit.cn/thread-51328-1-1.html) 我用 @lovl88 的方法,把镜像写入到MicroSD卡,复制extlinux.conf.bak为一个extlinux.conf adb reboot update 成功进入Armbian 系统
出现的问题:
搜了半天,不知道搜什么关键词,对linux实在是不熟悉. 麻烦 @ophub @lovl88 大佬们,帮忙看看,感谢!
我现在怀疑是不是 adb reboot update 破坏了原安卓系统的引导文件.
本来想自己编译一下 u-boot ,然后按照文档里说的
打开 HxD 软件,打开上面导出的 bootloader.bin 文件,右键 - 选择范围,起始位置 F200,长度 1000,选十六进制。
CM201-1 的bootloader 全是乱码.
备份EMMC系统
armbian-ddbr
[ STEPS ] Welcome to use the eMMC system backup/restore service.
[ INFO ] The device name: [ Amlogic Meson GXL (S905L2) X7 5G Tv Box ]
[ ERROR ] The eMMC storage not found in this device!
看到上面的命令输出,我猜, adb reboot update 应该是把原安卓系统的 u-boot或dtb 给替换了.
通过搜索引擎,搜到用遥控器可以进入原安卓系统的recovery,但是我没有遥控器.
so ~ 现在只剩下一只解决办法了,线刷?
线刷有点麻烦,需要短接操作,我看了一下(https://www.mydigit.cn/thread-51328-1-1.html)这篇帖子提到的短接点.看的眼疼.
待我再去探索一番,回来汇报成果.
安卓系统能让armbianU盘启动就没问题
1277 看这个帖子,照着改频率测试
https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/build-armbian/documents/README.cn.md 看12.16 和 12.13
大佬,我的armbian可以从U盘(我只有一个3.0的U盘,所以我用的SD读卡器)正常启动.
盒子如果不插SD卡,原安卓系统就会卡LOGO(也有叫卡首屏的).
暂时没找到我这个盒子简单恢复原安卓系统的办法,所以我并没有写入EMMC.
昨晚上又搜了一下 根据 (https://www.znds.com/tv-1194265-1-1.html) 这个帖子描述,是 aml_autoscript 这个UBOOT脚本文件修改了原系统的引导.
加QQ71715641
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年4月16日(星期天) 上午8:03 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [ophub/amlogic-s9xxx-armbian] 魔百和E900v21E(s905L2)使用方法 (Issue #1278)
https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/build-armbian/documents/README.cn.md 看12.16 和 12.13
大佬,我的armbian可以从U盘(我只有一个3.0的U盘,所以我用的SD读卡器)正常启动.但是,如果不插SD卡,原安卓系统就会卡LOGO.
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.***>
@ophub e21ej是重新编译了DTB吗,我看有独立的固件啦
还是之前的,只是调整了下默认编译的固件,增加了几个默认编译设备。
我的E900V21E(S90512)刷完armbian以后,ssh打开只要是上传压缩包就直接断开连接,不上传压缩包正常用。几个版本都试了也不行,求解 @ophub
可以用晶晨的烧录工具刷吗?我的E900V21E不知道是因为刷了三方固件还是什么原因没法U盘启动,刷了几个固件都不行,只能连电脑用烧录工具刷😂
可以
USB_Burning_Tool导入不了,显示“解析烧录固件失败”,关了效验IMG再导入又显示“生成工作流程XML失败”,第三方的安卓固件能导进去能正常刷入,这个机顶盒安卓是4.4.2的,好像没有开ADB的地方,想用ADB从U盘启动也不行,真的是难受
试了下好几次了,后面sha我也对比了是对的。。。
其它型号的如果发现有同样不能启动的问题可以试试去掉.BAK的方法