Skip to content

S905l3a 无法写入 mmc, 但能U盘启动的解决办法 #2587

Closed
@SeeleVolleri

Description

@SeeleVolleri

Device Information | 设备信息

  • SOC: [S905l3a]
  • Model [CMCC E900V22C 2021AP5392]

Armbian Version | 系统版本

  • Kernel Version: [Linux armbian 6.1.112-ophub #1 SMP Mon Sep 30 23:44:30 EDT 2024 aarch64 aarch64 aarch64 GNU/Linux]
  • Release: [Noble]

Describe the bug | 问题描述
S905l3a 无法覆盖原厂 u-boot, 同时无法写入 mmc, 但能U盘启动。

进行U盘启动:

Armbian_24.11.0_amlogic_s905l3a_noble_6.1.112_server_2024.10.02.img 烧录至U盘后修改 aml_autoscript 可U盘启动,无需 reboot update 等操作。
编辑 aml_autoscript.txt 在开头加上

fatload usb 0 1020000 s905_autoscript
autoscr 1020000

mkimage -C none -A arm -T script -d aml_autoscript.txt aml_autoscript替换。

无法写入emmc:

进入armbian系统后执行以下命令进行编辑设备树:

screen
sudo armbian-config

选中 System
选中 Dtc
搜索 mmc@ffe0700 节点, 如下:

mmc@ffe07000 {
                        compatible = "amlogic,meson-axg-mmc";
                        reg = <0x00 0xffe07000 0x00 0x800>;
                        interrupts = <0x00 0xbf 0x04>;
                        status = "okay"; // 以下省略

max-frequency 项作出修改为:max-frequency = <0x5f5e100>; (即100000000, 参考
保存重启即可对 emmc 进行读写操作。

无法覆盖原厂 U-boot

我尝试过执行 armbian-install -m yes 后有 ampart 的报错,解决办法是dd if=/dev/zero of=/dev/mmcblk2 bs=4096 count=4,然后重新armbian-install -m yes.

但这样仍然无法解决不能覆盖原厂 U-boot 的问题,导致每次开机都会扫一遍 skmac 分区,bootlogo 分区,必须每次 U-boot 引导失败后手动执行 fatload mmc 1 0x1020000 emmc_autoscriptautoscr 0x1020000 才能正常从 emmc 启动。

无法识别 Wifi 和 其他硬件

[   19.684306] platform sdio-pwrseq: deferred probe pending
[   19.686196] platform wifi32k: deferred probe pending

Please provide a detailed description of the issue and, if necessary, attach a screenshot.
详细描述问题,并在必要时附上屏幕截图。

armbian-install -m yesampart 报错出现位置:

armbian@armbian:~$ sudo armbian-install
[ STEPS ] Installing Armbian to internal eMMC...
[ STEPS ] Checking dependencies...
[ INFO ] Dependency check completed. Proceeding installation...
[ STEPS ] Initializing the environment...
[ INFO ] Use mainline u-boot: [ no ]
[ INFO ] Use ampart tool: [ yes ]
[ INFO ] Show all devices: [ no ]
[ INFO ] Internal eMMC : [ /dev/mmcblk2 ]
[ STEPS ] Start selecting device...
-----------------------------------------------------------------------------------------------------
ID    SOC        MODEL                                         DTB                                               
-----------------------------------------------------------------------------------------------------
301   s905x2     X96-Max-4GB,Tx5-Max                           meson-g12a-x96-max.dtb                            
302   s905x2     X96-Max-2GB,A95X-F2                           meson-g12a-x96-max-rmii.dtb                       
303   s905x2     MECOOL-KM3-4G                                 meson-g12a-sei510.dtb                             
304   s905l3a    ♥,E900V22C-D,CM311-1a-CH,IP112H,B863AV3.1   meson-g12a-s905l3a-e900v22c.dtb                   
305   s905l3a    ♥,CM311-1a-YST                              meson-g12a-s905l3a-cm311.dtb                      
306   s905l3a    M401A,UNT403A,B863AV3.2-M                     meson-g12a-s905l3a-m401a.dtb                      
0     Other      Customize                                     Enter-custom-dtb-name                             
-----------------------------------------------------------------------------------------------------
[ OPTIONS ] Please Input ID: 304
[ INFO ] Input Box ID: [ 304 ]
[ INFO ] Model Name: [ ♥,E900V22C-D,CM311-1a-CH,IP112H,B863AV3.1 ]
[ INFO ] FDTFILE: [ meson-g12a-s905l3a-e900v22c.dtb ]
[ INFO ] MAINLINE_UBOOT: [  ]
[ INFO ] BOOTLOADER_IMG:  [  ]
[ INFO ] UBOOT_OVERLOAD: [ u-boot-e900v22c.bin ]
[ INFO ] NEED_OVERLOAD: [ no ]
[ STEPS ] Which type of filesystem do you want for your root? 
-----------------------------------------------
  ID   TYPE
-----------------------------------------------
  1    ext4
  2    btrfs
-----------------------------------------------
[ OPTIONS ] Please Input ID (1/2): 2
[ INFO ] Input Type ID: [ 2 ]
[ INFO ] Type of filesystem: [ btrfs ]
[ STEPS ] Partitioning eMMC...
[ INFO ] Start backing up the default bootloader.
4+0 records in
4+0 records out
4194304 bytes (4.2 MB, 4.0 MiB) copied, 0.341796 s, 12.3 MB/s
[ INFO ] Delete the existing [ 2 ] partitions.
[   42.239279]  mmcblk2: p2
[   42.389316]  mmcblk2:
/usr/sbin/armbian-install: line 294:  1909 Segmentation fault      ampart "${DEV_EMMC}" --mode dclone ${snapshot_expected} &> /dev/null
[ INFO ] Start create MBR and partittion.
[   42.510579]  mmcblk2:
[   42.603820]  mmcblk2: p1
[ INFO ] 03. Write the mybox bootloader: [ /usr/lib/u-bo[   42.775851]  mmcblk2: p1 p2
ot/mybox-bootloader.img ]
444+0 records in
444+0 records out
444 b[   42.785520]  mmcblk2: p1 p2
ytes copied, 0.00248511 s, 179 kB/s
8191+0 records in
8191+0 records out
4193792 bytes (4.2 MB, 4.0[   43.167064]  mmcblk2: p1 p2
 MiB) copied, 0.37805 s, 11.1 MB/s
[ STEPS ] Processing BOOTFS partition...
[ INFO ] Formatting BOOTFS partition...
mkfs.fat 4.2 (2021-01-31)
[ INFO ] Copying BOOTFS ...
[ INFO ] Update the [ uEnv.txt ] file.
[ STEPS ] Start processing the rootfs partition...
[ INFO ] Formatting ROOTFS ...

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationsupportThis need is supported

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions