Jump to content

ARMBIAN for Amlogic S905 and S905X (ver 5.44 =<)


balbes150

Recommended Posts

8 hours ago, balbes150 said:

If you ran coreelec, you need to restore the regular Android firmware via USB Burn Tool and then re-activate the universal multi-boot.

Only this will allow Armbian and Libreelec to work correctly.

 

..okay-maybe not the ideal way, but I had no android for the box here..so for me worked pretty well booting the armbian from card with pressed recovery button and just re-copying the system to emmc via armbian-config again..also 19 alpha Libreelec builds boot/work again as expected, but neither coreelec nor official built images boot, like it should be..

 

Just installed Armbian_5.99_Aml-g12_Ubuntu_bionic_dev_5.4.0-rc6_desktop_20191010.img.xz (is the timestamp 1010 correct or should it be 1110?!). No issues so far on my x96 mini p281 s905w 2/16 test box.

 

Link to comment
Share on other sites

I was able to make CoreELEC run with WIFI and Bluetooth support.

I used the same DTB in (Armbian_19.11.3_Aml-g12_bionic_legacy_5.3.0_desktop_20191126.img), but the BOX doesn't even want to boot.

In theory the same DTB should  work, not ?!?!

 

On CoreELEC I used gxl_p281_2g .

Armbian only boot using: meson-gxl-s905w-p281.img

But my Android is: TX8 PRO: CS_905W

My WiFi chipset QCA9377,.

 

What files should I copy to make it work?

 

 

reading /dtb/amlogic/dtb_librelect_workingwifi.img
41186 bytes read in 14 ms (2.8 MiB/s)
[rsvmem] get fdtaddr NULL!
rsvmem - reserve memory

Usage:
rsvmem check                   - check reserved memory
rsvmem dump                    - dump reserved memory

rsvmem check failed
## Loading init Ramdisk from Legacy Image at 13000000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    9980318 Bytes = 9.5 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
load dtb from 0x1000000 ......
      Amlogic multi-dtb tool
      Single dtb detected
## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x1000000
   Loading Ramdisk to 73519000, end 73e9d99e ... OK
   Loading Device Tree to 000000001fff2000, end 000000001ffff0e1 ... OK
fdt_instaboot: no instaboot image

Starting kernel ...

uboot time: 5496901 us

 

Link to comment
Share on other sites

10 minutes ago, Ricardo JL Rufino said:

I was able to make CoreELEC run with WIFI and Bluetooth support.

I used the same DTB in (Armbian_19.11.3_Aml-g12_bionic_legacy_5.3.0_desktop_20191126.img), but the BOX doesn't even want to boot.

In theory the same DTB should  work, not ?!?!

 

On CoreELEC I used gxl_p281_2g .

Armbian only boot using: meson-gxl-s905w-p281.img

But my Android is: TX8 PRO: CS_905W

My WiFi chipset QCA9377,.

 

What files should I copy to make it work?

 

 


reading /dtb/amlogic/dtb_librelect_workingwifi.img
41186 bytes read in 14 ms (2.8 MiB/s)
[rsvmem] get fdtaddr NULL!
rsvmem - reserve memory

Usage:
rsvmem check                   - check reserved memory
rsvmem dump                    - dump reserved memory

rsvmem check failed
## Loading init Ramdisk from Legacy Image at 13000000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    9980318 Bytes = 9.5 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
load dtb from 0x1000000 ......
      Amlogic multi-dtb tool
      Single dtb detected
## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x1000000
   Loading Ramdisk to 73519000, end 73e9d99e ... OK
   Loading Device Tree to 000000001fff2000, end 000000001ffff0e1 ... OK
fdt_instaboot: no instaboot image

Starting kernel ...

uboot time: 5496901 us

 

I think you are referring to img file and not dtb file in your boot.ini or uEnv.ini.

 

look at this line reading /dtb/amlogic/dtb_librelect_workingwifi.img

 

Link to comment
Share on other sites

Quote

I think you are referring to img file and not dtb file in your boot.ini or uEnv.ini.

 

look at this line reading /dtb/amlogic/dtb_librelect_workingwifi.img

 

I attached 2 DTBs used to test

 

dtb_meson-gxl-s905w-p281.dtb - works on armbian , and, not work in CoreELEC

dtb_librelect_wifi__gxl_p281_2g.dtb - not works armbian,  but works in CoreELEC

 

Are they different files / types?
I saw that both are binary

 

dtb_librelect_wifi__gxl_p281_2g.dtb dtb_meson-gxl-s905w-p281.dtb

Edited by Ricardo JL Rufino
improve test description
Link to comment
Share on other sites

file dtb_librelect_wifi__gxl_p281_2g.dtb                                                        ↵ 32
>>> dtb_librelect_wifi__gxl_p281_2g.dtb: Device Tree Blob version 17, size=41186, boot CPU=0, string block size=3578, DT structure block size=37552

 

file dtb_meson-gxl-s905w-p281.dtb 
>>> dtb_meson-gxl-s905w-p281.dtb: Device Tree Blob version 17, size=26210, boot CPU=0, string block size=1490, DT structure block size=24664

 

Using the file command, I saw that both are a Device Tree.

 

 

Link to comment
Share on other sites

Hi, 

 

I tried using the original device DTB but it didn't work.

 

1. Copy from running Android

dd if=/dev/dtb | gzip > /storage/downloads/dtb.img.gz

 

2. Extract using

https://github.com/PabloCastellano/extract-dtb

 

This found 2 dtbs in attachment.

01_dtbdump_Amlogic.dtb
02_dtbdump_Amlogic.dtb

 

3. Decompile  dtc

 

4. re-compile using dtc

dtc -I dts -O dtb -o dtb_dec_orig.img devicetree-01.dts

 

I have tried 2 original dtbs  and 2 compiled 

 

All stop in:

 

reading uEnv.ini
263 bytes read in 7 ms (36.1 KiB/s)
mac=06:41:80:10:85:16
reading /dtb/amlogic/01_dtbdump_Amlogic.dtb
43008 bytes read in 15 ms (2.7 MiB/s)
[rsvmem] get fdtaddr NULL!
rsvmem - reserve memory

Usage:
rsvmem check                   - check reserved memory
rsvmem dump                    - dump reserved memory

rsvmem check failed
## Loading init Ramdisk from Legacy Image at 13000000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    9980318 Bytes = 9.5 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
load dtb from 0x1000000 ......
      Amlogic multi-dtb tool
      Single dtb detected
## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x1000000
   Loading Ramdisk to 73519000, end 73e9d99e ... OK
   Loading Device Tree to 000000001fff2000, end 000000001ffff001 ... OK
fdt_instaboot: no instaboot image

Starting kernel ...

uboot time: 5505599 us

 

 

 

 

 

 

dtbs.zip

Link to comment
Share on other sites

NOTE: I'm using DTC from Ubuntu package

Using DTC from: /mnt/build/cache/sources/u-boot/v2019.10/scripts/dtc  (DOCKER BUILD SYSTEM)

 A got this erros:

devicetree-orig2.dts: Warning (unit_address_vs_reg): /mali: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /timer_bc: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /pm: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /cpu_iomap/io_cbus_base: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /cpu_iomap/io_apb_base: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /cpu_iomap/io_aobus_base: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /amlogic-watchdog: node has a reg or ranges property, but no unit name
devicetree-orig2.dts: Warning (unit_address_vs_reg): /meson_clock: node has a reg or ranges property, but no unit name
 

I had heard that DTC was platform independent ...

 

Link to comment
Share on other sites

Hi Oleg!

 

I am back after some summer issues at your S905 thread at LE Forum when CE folks had interjected, and my Cnx-Software comments were hijacked ...

I will be posting on Armbian- my ID works here. But on LE it doesn't- don't know how to contact LE admin.

 

Kindly you (or someone else) brief me on the following, from your Post#1 which has undergone changes since then:

 

1. There are many Google Playstore apps listed when I search for "Update & Backup." Which one should I use?

 

2. Kernel 4.16 (latest for Armbian and LE Kodi I assume?) doesn't support emmc.

So which last kernel does support emmc install?

(Do you know which new kernel after 4.16 might support emmc install?)

 

3. I am looking for some boot script(s) such that I don't have to go into Kodi menu. Rather at boot time, after splash screen etc, the OS should have screen prompt for configuring WiFi ( AP mode, or input WiFi sta mode SSID available and password.)

 

I know some wifi chips like ssv6051P (e.g., on x96) don't work in WiFi AP mode, given old drivers. But Realtek wifi chipsets should.

 

Also a boot script for  switching between HDMI and AV output. This way I can SSH later and edit if I need to !

 

Unluckily I am not a dev/coder, but I can follow instructions and try to emulate someone else's script.

 

4. LE balbes150 distro problem 😊

I see that in your Yandex files, the Kodi 18 folder is grayed out.

 

Where can I download the Kodi 18 files for latest kernel 4.16, and for last kernel supporting emmc install?

 

5. Is there a performance/features difference between Armbian Kodi and your LE distro for a S905* tv box with 1/8GB ?

How about for 2/16 GB variety for 720p streaming?

 

Thanks 😊 and I am glad to be back. You've been doing a great job.

 

And yes, Happy Holidays and New Year 2020 to you All !!!

Link to comment
Share on other sites

2 hours ago, shippy said:

I will be posting on Armbian- my ID works here. But on LE it doesn't- don't know how to contact LE admin.

I passed your problem to the LE admins.

 

2 hours ago, shippy said:

Kindly you (or someone else) brief me on the following, from your Post#1 which has undergone changes since then:

Much has changed significantly. This topic is outdated and I no longer support it. Look at the info in these topics, there are described the latest changes. If you still have questions, ask better in the appropriate new topic.  :)

 

 

 

 

 

 

 

 

Link to comment
Share on other sites

@balbes150

I have collected your yandex network disk. I see that the versions after 5.90 are no longer s9xx or AMLGX, but only g12. Can the image compiled for g12 still be started on s915 / s912? Does the image file also contain dtb for these devices?

Link to comment
Share on other sites

Hi, I'm having sound issue with both images with kernel 4.20 and 5.x on an x96 mini which is an s905w box.
I read in this topic that for some reason I need an image with the 3.14 kernel so can someone kindly direct me to where i can find armbian image with kernel 3.14

Quote

 

 

Link to comment
Share on other sites

Hi all.

I have a x96mini with the s905w cpu.

Can someone please tell me the correct dbt to use ? i have tried several... even the original from my older x96 box.

 

I can make the box boot from SDcard, made with win32Diskimager. -> Armbian_19.11.3_Aml-g12_disco_legacy_5.3.0_desktop_20191126

black screen, and then I need to restore the original android again to even start the box.

I tired of doing this over and over.....

 

so if any have the same box, do tell me which to use to get the linux to work.

 

I actually just need to test out pihole etc. nothing wild.

 

i just choose restore in android and choose the zip file..

but i have read this from eht net: You boot the box with Android, then run aml_update and aml_autoscript form the SD-card. After that you can write your Linux image to the sdcard and it should boot.

 

are there two operations i have to complete before i can boot ?

 

 

Edited by gorb
Link to comment
Share on other sites

Hello, everybody,
i have a nexbox a95X with a s905x cpu. i can do what i want, it doesn't work. i tried several usb-sticks, read almost all tutorials, but with android recovery and multi boot i can't get any further than this: 
- footer is wrong
- signature verification failed
- cannot load volume /misc!

where is the error, what can I do to make it work. am grateful for any help.

Link to comment
Share on other sites

2 minutes ago, efendi said:

where is the error, what can I do to make it work. am grateful for any help.

With an x96 max I had to push a button that was inside the av connector. I don't know about your box, but it might be the same.

Link to comment
Share on other sites

hi nico,

yes, i already tried that. i tried the following variants: boot into android and then backup&restore, with that the box boots directly into the android recovery and gets stuck there with the error message from above. 
the second variant, as you suggested: with a toothpick in av until the nexbox logo is gone and then released, boot into android recovery again and again cannot load volume /misc.
it just doesn't work :-)

i have tested several dtb, changed ini-files and everything else, but no chance.

maybe i should try it with a SD card, is it USB?

 

cheers

 

 

Link to comment
Share on other sites

For me on the x96mini work all/most versions until 19.11.4 (the 19.11.5s I tried didn't boot or booted but had no usb working) with the meson-gxl-s905w-p281.dtb
For me worked to boot via toothpick method after doing the fake update(there was the footer error, but afterwards balbes' Libreelec booted from card..). Afterwards I can boot any of the armbian images before 19.11.05 on the x96mini 2/16. Install on eMMC works too, but for newer (universal boot images) install has to been done not via armbian config tool like on 5.9x-builds, but via install script in root directory. To get the install successful you need to delete rk and aw u-boots on card as boot partition on eMMC is just 128mb but with all u-boots it is more.
For newer builds 19.11.5 and on I have to ask in mulit platform thread, why those doesn't boot for me with same dtb settings I use for years on that device..
 

Link to comment
Share on other sites

Does someone have the sources for the old kernel khadas-3.14? It was just few mega. In the past I was able to git it with a simple:

git clone -b khadas-3.14 https://github.com/150balbes/Amlogic_s905-kernel.git

unfortunately I have never saved it and now it isn't more available in the @balbes150 repo, I never thought it would be removed.

 

I'm using an s905 device with Armbian installed in the emmc and I would stay with this old version because with it everything works, but now I should recompile my kernel to add support for 8021q vlan.

 

If someone has this kernel, please could he upload it somewhere? I really need it. I hope in a hand from you all.

Link to comment
Share on other sites

28 minutes ago, fatugazuhati said:

Does someone have the sources for the old kernel khadas-3.14? It was just few mega. In the past I was able to git it with a simple:

git clone -b khadas-3.14 https://github.com/150balbes/Amlogic_s905-kernel.git

unfortunately I have never saved it and now it isn't more available in the @balbes150 repo, I never thought it would be removed.

 

I'm using an s905 device with Armbian installed in the emmc and I would stay with this old version because with it everything works, but now I should recompile my kernel to add support for 8021q vlan.

 

If someone has this kernel, please could he upload it somewhere? I really need it. I hope in a hand from you all.

 You want this:-   

 

Link to comment
Share on other sites

4 hours ago, edragon said:

 You want this:-   

 

Sorry thats binary image builds, not source. Since CONFIG_VLAN_8021Q= looks quite embedded, I don't think you will get away with obtaining the 3.14.x android kernel source (or khadas is there is one) and changing the VERSION in Makfeile
to build the module (8021q.ko).
I can't see how someone somewhere hasn't cloned 150balbes kernel repo with that branch.

 

 

Link to comment
Share on other sites

2 hours ago, dbsharpe said:

Sorry thats binary image builds, not source. Since CONFIG_VLAN_8021Q= looks quite embedded, I don't think you will get away with obtaining the 3.14.x android kernel source (or khadas is there is one) and changing the VERSION in Makfeile
to build the module (8021q.ko).
I can't see how someone somewhere hasn't cloned 150balbes kernel repo with that branch.

 

 

Thanks for answering me but unfortunately that is the binary and can't help me. Anyway are you sure that it has support for vlan 8021q?

About the sources for khadas-3.14, this is a big lost, in my opinion the Armbian versions with kernel 3.14 are the better one for s905/s912 devices, with them everything works and it is possible install Armbian in the emmc. The kernel 3.14 is outdated but COREElec too still uses a kernel 3.14 for theese devices.

Honestly I don't understand why that branch has been deleted and not only archived.

Link to comment
Share on other sites

36 minutes ago, fatugazuhati said:

Thanks for answering me but unfortunately that is the binary and can't help me. Anyway are you sure that it has support for vlan 8021q?

About the sources for khadas-3.14, this is a big lost, in my opinion the Armbian versions with kernel 3.14 are the better one for s905/s912 devices, with them everything works and it is possible install Armbian in the emmc. The kernel 3.14 is outdated but COREElec too still uses a kernel 3.14 for theese devices.

Honestly I don't understand why that branch has been deleted and not only archived.

Sorry you've misunderstood. As you know, the link provided was an armbian image and does not have the required kernel module.
You might be able to find close matching AML 3.14.26 kernel source which complies after that module is added in the .config and load it but I doubt you will get away with no module symbol errors.

 

Link to comment
Share on other sites

9 hours ago, fatugazuhati said:

Does someone have the sources for the old kernel khadas-3.14? It was just few mega. In the past I was able to git it with a simple:

git clone -b khadas-3.14 https://github.com/150balbes/Amlogic_s905-kernel.git

unfortunately I have never saved it and now it isn't more available in the @balbes150 repo, I never thought it would be removed.

 

 

Oh, I did a google search and came up with this copy which might do:
https://github.com/abceset/Amlogic_s905-kernel/tree/khadas-3.14 which is a copy/clone and should do if you pick the right commit!

Link to comment
Share on other sites

Thank you @dbsharpe, I was been able to recompile the kernel on the device with that sources, but I'm not able to crosscompile the kernel with any toolchain, the compilation finish succesfully but I haven't an Image file for the kernel not any ko files for the modules.

Do you have some idea of because this occours?


 

Link to comment
Share on other sites

1 hour ago, fatugazuhati said:

Thank you @dbsharpe, I was been able to recompile the kernel on the device with that sources, but I'm not able to crosscompile the kernel with any toolchain, the compilation finish succesfully but I haven't an Image file for the kernel not any ko files for the modules.

Do you have some idea of because this occours?


 

So that I knew what I was talking about, I took commit f29b82a2598b69b52764a51876685a7a079a36c6 of Amlogic_s905-kernel when I last replied to your original post. I built it with the /boot/config-3.14.29 from the June 2018 release
that has /proc/version of  Linux version 3.14.29-amlogics905x-gf29b82a-dirty

That compiles for me using gcc-linaro-7.2.1-2017.11-i686_aarch64-linux-gnu toolchain (old PC) with the build command make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j4 (may need EXTRAVERSION= to make loadable files).
If your using -j in the make, the compilation may have actually failed and the error overwritten by the other threads. Re run the make at the end without -j to see.

Otherwise, check disks space, use clean source etc. I've had problems with newer version of perl and old kernel sources in the past.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines