Jump to content

Can't boot with 23.05 or later builds on s905x2 (g12a) or s905x3 (sm1)


well83

Recommended Posts

@well83

Would you be able to post links to allow me to download the three different versions of the firmware you have mentioned please (6.1.30,   6.6.3  and  6.1.11 )?

 

That way I can attempt to replicate your test exactly to see what is going on,

 

Thanks

Link to comment
Share on other sites

@well83

 

The bad news is that I have not been able to get any of the three firmware versions to run on my two types of S905 based hardware.

One device is labelled "A95X-F3-AIR" and is based on S905X3,  and the other is labelled "D905" and is based on S905.

 

Outlined for info below are the steps I have used to successfully get older firmware running on both devices.

You will note that the version of Armbian (20.10) is quite old so I am keen to update.

 

I am particularly interested initially in your success with 6.11.1 and trying to replicate that as a starting point.

 

Apart from downloading the firmware and burning it to SD card to create the "armi-boot" and "armbi_root" partitions, would you be able to tell me of any changes you had to make to the uboot.ext file, and the /boot/extlinux/extlinux.conf file, FDT and any other files to make it work on your device please?

 

 

Many thanks in advance for your help.

 

Regards

 

 

 

1. Tutorial Web Page
        https://i12bretro.github.io/tutorials/0269.html

2. Armbian Firmware Download (link from tutorial page)
    https://drive.google.com/open?id=1n6CZa582uJECV3lzQDtFbmbyvmOSiUSg
    Filename: Armbian_20.10_Arm-64_bullseye_current_5.9.0_desktop.img.xz
                            
3. Edit /BOOT/extlinux/extlinux.conf:


     LABEL Armbian
     LINUX /zImage
     INITRD /uInitrd
     
     FDT /dtb/amlogic/meson-gxl-s905x-p212.dtb    # Use this line for S905X  e.g. "D905"
     #FDT /dtb/amlogic/meson-sm1-a95xf3-air.dtb   # Use this line for 905X3  e.g. "A95X-F3-AIR"
     APPEND root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0
     fsck.fix=yes fsck.repair=yes net.ifnames=0


4. Copy correct u-boot file.
   Copy "/boot/u-boot-s905x" to  "/boot/u-boot.ext"  for S905X device
   Or
   Copy "/boot/u-boot-s905x2" to  "/boot/u-boot.ext"  for S905X3 device
   
5. Install SD card in target device, install keyboard, mouse and HDMI monitor and power up.

 

Link to comment
Share on other sites

@tgillett

Hi on 6.1.11

1. edit extlinux.conf your dtb is this meson-sm1-a95xf3-air.dtb or this meson-sm1-a95xf3-air-gbit.dtb

2. rename u-boot-s905x2-s922 to u-boot.ext

3. profit

--------------------------------------------------------

If you want to try 6.1.30 i uploaded modified u-boot.ext that one guy from 4pda sent to me. You have to add it in your boot directory than change extlinux.conf

u-boot.ext

Link to comment
Share on other sites

@SteeMan Your instructions don't seem to work with the current Stable Builds (checked with Armbian_23.5.1_Aml-s9xx-box_bookworm_current_6.1.30.img.xz), as those seem to lack the BOOT (FAT) partition that used to be present in previous versions. This makes installing Armbian very difficult for Windows users. Is that intended or am I missing something? I would really like to run the official Armbian distribution on my S905X3 box as well and not resort to using unauthorized forks. Thanks in advance for your help on this matter.

Link to comment
Share on other sites

@Maxxim  Thanks for the report.  The boot partition is created as vfat.  I have noticed that s905x2 and s905x3 boxes are not booting with the 23.05 builds, but I thought the issue was with the u-boot files.  Your report potentially points into a different direction.  I don't know when I will have time to look into this.  But this is community supported software so any contributions are appreciated.

Link to comment
Share on other sites

@well83

 

The device I have is labelled A95X-F3-Air and it operates happily on the earlier Armbian firmware using  uboot-s905x2-s922 file and /dtb/amlogic/meson-sm1-a95xf3-air.dtb

Link: https://drive.google.com/open?id=1n6CZa582uJECV3lzQDtFbmbyvmOSiUSg

Filename: Armbian_20.10_Arm-64_bullseye_current_5.9.0_desktop.img.xz

 

So I am reasonably confident that all the components are ok.

 

 I went through the process as you outlined for installing 6.1.11:

 

1. Downloaded version 6.1.11  from here:
https://mirror-us-phx1.armbian.airframes.io/dl/aml-s9xx-box/archive/ ( filename is Armbian_23.02.2_Aml-s9xx-box_bullseye_current_6.1.11_xfce_desktop.img.xz),

and checked the sha256sum out all ok.

 

2. Edit the /extlinux/extlinux.conf file as follows:

 

LABEL Armbian
LINUX /uImage
INITRD /uInitrd

 

#FDT /dtb/amlogic/meson-gxl-s905x-p212.dtb
#FDT /dtb/amlogic/meson-gxl-s905w-tx3-mini.dtb
#FDT /dtb/amlogic/meson-sm1-a95xf3-air-gbit.dtb
FDT /dtb/amlogic/meson-sm1-a95xf3-air.dtb

 

  append root=UUID=505123a0-7aa3-403f-b86b-27e32bc39aef rootflags=data=writeback console=ttyAML0,115200n8 console=tty0 rw no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 splash plymouth.ignore-serial-consoles

 

3.  I then copied the uboot file uboot-s905x2-s922  to  u-boot.ext

 

4. Safely removed the SD card and installed on the A95X device.

 

5. Powerup sends a screen signal to the monitor as shown by the calibration LED, but otherwise a blank screen.

 

I feel I am missing some basic step, but I can't see what it it.

 

Any suggestion s appreciated.

 

 

Link to comment
Share on other sites

@well83

 

Thank you for that u-boot file - the device now boots up into the Armbian login page.

Once I replaced the login credentials, the system runs as expected.

Many thanks for your help.

 

It does beg the question though, where did this particular uboot file come from, and more generally what is the process for producing u-boot files?

 

Once again, many thanks for your help.

Link to comment
Share on other sites

@well83 Thanks for your effort, but the method you linked to didn't work. I noticed that the Armbian image written to my SD card somehow has two partitions but no volumes. DISKPART confirmed that:

DISKPART> list part

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    Primary            512 MB  4096 KB
  Partition 2    Primary           2016 MB   516 MB

DISKPART> attributes volume clear NoDefaultDriveLetter

There is no volume selected.
Please select a volume and try again.

 

Maybe there's something wrong with the way the image is prepared this time, @SteeMan? It still doesn't boot, even after using BOOTICE to mount it on Windows and editing the extlinux.conf as per your instructions.

 

In the meanwhile, I'm checking out The-Fork-That-Must-Not-Be-Named which, I have to admit,.. just works.

An off-topic question, if I may. Has anyone at Armbian tried to reach out to "the other guys"? You know, to try and bring them into the fold?

Edited by Maxxim
The question about the You-Know-What
Link to comment
Share on other sites

@Maxxim It's something with windows 10 or 11 that it dindnt asign drive letters. Somebody have this bug somebody no. I dont have this bug on my windows 11. My  windows asigns drive letters with very same image files that you are using. If i use Raspbery pi imager and Balena etcher i have letter assigned but with rufus and fedora media writer its not assigned

Link to comment
Share on other sites

10 hours ago, Maxxim said:

Thanks for your effort, but the method you linked to didn't work.

Did you see if your Virtual Disk Service is enabled?  type: sc query vds ,  if stopped  type: net start vds. 

See if automount is enabled. diskpart --> automount --> automount enable.

If this bug steel persists and if you are using image writer often i would reinstall windows

Link to comment
Share on other sites

Hello,

I tried to install the latest stable version (Armbian_23.8.1) to a s905x3 TV Box and the TV Box fails to start from the SD.

I have succefully install and start version Armbian_23.02.2 from the SD, but after this version, all the newer versions failed to boot from the SD.

I think also other members have mentioned this issue.

Is there any work around or help to overcome the above issue?

Thank you in advance.

Link to comment
Share on other sites

Hello, guys

 

I hope you can help me.

 

I have a T95 MAX+ TV Box, which I would like to run with Armbian.

 

I have downloaded the file named Armbian_23.8.1_Aml-s9xx-box_bookworm_current_6.1.50_xfce_desktop.img.xz

 

Then I "burn" it on a Micro SD card, using BalenaEtcher.

 

After that, I edited the /boot/extlinux/extlinux.conf file, inserting the line:

 

#FDT /dtb/amlogic/meson-g12a-sei510.dtb

 

as it was suggested on this topic:

 

 

Then I made a copy of the u-boot-s905x2-s922 file and paste on the same /Boot directory, renaming the file to u-boot.ext (the instruction is not clear to where to copy the file).

 

After that. I've tried to start the TV Box pressing the "boot" button "located at the back of the audio/video jack connector", but it only takes me to a bootloader screen where I can't choose anything.

 

I have succesfully booted Emuelec before trying ARMBIAN. I don't know if that could have made changes that doesn't allow me to boot other system.

 

 

 

 

Link to comment
Share on other sites

As I mentioned earlier, there are issues with newer builds and the uboots currently shipped in the distributions (things 23.5 and later).  So as others have noted if you have as s905x2 or x3 box you currently should use a 23.2 or earlier build.

 

With 23.5 armbian introduced a new build system.  So everything about the build process for armbian changed.  There are two changes that I am aware of that are or may be impacting the amlogic tv box builds. 

 

The first change is that the FAT partition is created differently than the old build system.  There are comments in this thread that indicate that may be an issue, but I haven't dug into this to know for sure.

 

The second change is that the build system moved from kernel uImage files to kernel Image files.  This is to standardize all the armbian builds onto the same file type.  A uImage file is the kernel  Image file processed by uboot tools to add some additional info to the executable.  This used to be required for uboot to boot a linux kernel, however newer uboots can load plain kernel Image files directly.  I think the issue with the u-boot-s905x2-s922 uboot is that that uboot doesn't have the support to load plain Image files built in.  The u-boot-* files come from the work of balbes150 when he used to support amlogic tv boxes.  So they are about 4 years old and need to be updated to follow changes in uboot.  I started, but haven't had time to do this yet.  If you have a current build (post 23.2) there should be a file in /boot/build-u-boot/readme.txt that talks about moving to newer uboots.  This is based on the work by hexdump originally.  If someone could pick up this work and submit PRs that would be very welcomed.  It would be a good way for a developer to get their feet wet in understanding a key part of the support necessary to make these amlogic tv box builds possible.

 

 

Link to comment
Share on other sites

Hi all,

I don't understand why you want or need to use those chain loaded u-boot blobs? 

 

The vendor u-boot bootloaders can boot mainline Linux perfectly without them. So they are not needed.

All it takes are some simple modifications of some of the Armbian u-boot scripts.

 

Just copy the attached files to the fat partition of the Armbian image after burning the image to a USB disk. 

Edit armbianEnv.txt for the right DTB (so not in extlinux.conf) and you can boot the newer Armbian images without u-boot.ext.

 

I tested it with the Armbian_23.8.1_Aml-s9xx-box_bookworm_current_6.1.50_minimal.img.xz image on the following SOC's:

  • S905x (GXL)
  • S912 (GXM) 
  • S905x2 (G12A)
  • S922X (G12B)
  • S905X3 (SM1)

assumption: you have vendor u-boot (the one that came with the box) running on eMMC. If you don't, you can just restore the stock Android image with Amlogic USB Burning tool.

 

All needed files and a more detailed description is on github

 

aml_autoscript armbianEnv.txt gxl-fixup.scr s905_autoscript

Edited by Devmfc
Link to comment
Share on other sites

Quote
On 9/20/2023 at 12:08 AM, Devmfc said:

Hi all,

I don't understand why you want or need to use those chain loaded u-boot blobs? 

 

The vendor u-boot bootloaders can boot mainline Linux perfectly without them. So they are not needed.

All it takes are some simple modifications of some of the Armbian u-boot scripts.

 

Just copy the attached files to the fat partition of the Armbian image after burning the image to a USB disk. 

Edit armbianEnv.txt for the right DTB (so not in extlinux.conf) and you can boot the newer Armbian images without u-boot.ext.

 

I tested it with the Armbian_23.8.1_Aml-s9xx-box_bookworm_current_6.1.50_minimal.img.xz image on the following SOC's:

  • S905x (GXL)
  • S912 (GXM) 
  • S905x2 (G12A)
  • S922X (G12B)
  • S905X3 (SM1)

assumption: you have vendor u-boot (the one that came with the box) running on eMMC. If you don't, you can just restore the stock Android image with Amlogic USB Burning tool.

 

All needed files and a more detailed description is on github

@Devmfc I confirm it works. Thanks Devmfc

Link to comment
Share on other sites

Hey @Devmfc,

 

I hope this message finds you well. I wanted to express my gratitude for your tutorial on installing [Armbian] via USB on TV Boxes with S905X3 and S905X2 processors. The tutorial worked flawlessly during the USB boot process.

However, I've encountered a challenge when attempting to install the system on the Box using the command "/root/install-aml.sh". After completing the installation, upon rebooting the device, the Box starts but remains stuck on a black screen.

To troubleshoot, I initiated a USB boot and accessed the /boot partition on EMMC. I noticed that during the installation process, the script copies /boot from the USB, but it doesn't add the files "aml_autoscript" and "s905_autoscript" as outlined in your tutorial.

 

In an attempt to resolve this, I manually copied these files to the /boot partition on EMMC. Unfortunately, this didn't resolve the issue, and the Box still fails to start after installation.

 

I'm using a BTV B11 TV Box with S905X3 and another with BTV Express S905X2. Both boxes boot successfully via USB, but post-installation on EMMC, they seem unresponsive. Is there any specific configuration or step I might be missing to ensure the installation on the TV Box works seamlessly?

Link to comment
Share on other sites

Hey @Devmfc,
 

I followed the steps outlined in your GitHub repository (https://github.com/devmfc/amlogic-bootscripts-Armbian) to install [Armbian] on my TV Box.

Here's a quick rundown of the steps I took:


1) Installed the system following the recommendations on the GitHub page.
2) Initiated Armbian via USB and proceeded with the installation using the "/root/install-aml.sh" command.
3) Upon completion of the installation, I replaced the "emmc_autoscript" file with "s905_autoscript" (and renamed it to "emmc_autoscript").
4) Used the command "$ sudo blkid" to identify the UUID of my EMMC partition.
5) Opened the "armbianEnv.txt" file and updated the UUID with that of my EMMC partition, then saved the file.
6) Removed the USB device and restarted my Box.


The substitution of "emmc_autoscript" with "s905_autoscript" proved to be the key, and everything is running smoothly now.


Thanks once again for your invaluable assistance!
Best regards!
 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines