ophub / amlogic-s9xxx-armbian

Support for Armbian in Amlogic, Rockchip and Allwinner boxes. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.
GNU General Public License v2.0
5.8k stars 1.86k forks source link

Possible support S905? #57

Closed flymike closed 2 years ago

flymike commented 2 years ago

I have got a S905 TV box (Beelink MiniMX 2G/16G) and I tried the closest build (s905x) with the correct dtb file(p200-2G-1Gbit), and copied u-boot-s905.bin to u-boot.ext. The box boots up but stuck at "Starting kernel ..." Is it possible to make this build work with S905 box? Thx

Updates

Thanks @ophub, my Mini MX box works perfect now.

Summary

Warning: Install to internal eMMC is not supported for this box, doing so will brick it!

ophub commented 2 years ago

try 5.4 kernel. don’t mod.

https://github.com/ophub/amlogic-s9xxx-armbian/releases/download/Armbian_Aml_bullseye_2021.12.28.0135/Armbian_22.02.0_Aml_s905x_bullseye_5.4.168_2021.12.28.0129.img.gz

flymike commented 2 years ago

That is exact build I've tried, boot loop if not copy u-boot-s905.bin to u-boot.ext.

ophub commented 2 years ago

Starting kernel It is a hint that the dtb file is incorrect.

s905 is meson-gxbb, try dtb from: https://github.com/ophub/amlogic-s9xxx-armbian/tree/main/build-armbian/amlogic-dtb

meson-gxbb_p201_2G.dtb
meson-gxbb_p200_2G.dtb
meson-gxbb-p200.dtb
meson-gxbb-p201.dtb
flymike commented 2 years ago

OK, this combination works :)

Now, question is, can I install to eMMC? I was using balbes150 build before, sd/usb installation worked fine but "brick" the box after installed to eMMC... yes I will try your build, hope the internal installation works.

ophub commented 2 years ago

You try 5.10 kernel is available. Download the firmware of the 5.10 kernel of s905d, and modify dtb and u-boot according to yours.

If you can restore the system, you can write emmc without any worries.

I searched on the Internet. There are several models of this model. You can easily send an accurate model with a link that looks like this: beelink-gt-king

Based on your feedback, I added this box to the support list, and it can be generated directly by default when building armbian next time.

flymike commented 2 years ago

Thank your very much. I will try 5.10 kernel. Yes I don't mind "brick" the box and I can unbrick it anytime :) It was an old box I just want make it as pihole server etc., This is where I bought it... https://www.gearbest.com/tv-box-mini-pc/pp_321409.html?wid=1433363#goodsDetail https://forum.xda-developers.com/t/beelink-minimx-tv-box-amlogic-s905-antutu-v6-0.3269912/

ophub commented 2 years ago

Thank you for being a pioneer, trying to match the appropriate dtb, your contribution will be recorded in CONTRIBUTOR.md

Before writing the emmc test, check the information to make sure that this box can be used to restore the system by short-circuiting, etc. There is a ddbr tool in armbian, which can backup the current system, and restore it if there is a problem.

ophub commented 2 years ago

local file: /usr/sbin/armbian-install

https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/build-armbian/common-files/files/usr/sbin/armbian-install#L74

When writing emmc test, first add the installation script to this box, the content is as follows:

# Amlogic GXBB Family(s905)
61:Beelink MiniMX:s905:meson-gxbb-vega-s95-telos.dtb:u-boot-s905.bin:NA:NA:Beelink Mini MX Ver 1.0
flymike commented 2 years ago

Good news and bad news :) Good news:

Bad news:

The box is "dead" for now... I need time to unbrick it.

ophub commented 2 years ago

local file: /usr/sbin/armbian-install

There is no corresponding option for this box in the existing armbian-install script, you add a 61, the content is as follows:

# Amlogic GXBB Family(s905)
61:Beelink MiniMX:s905:meson-gxbb-vega-s95-telos.dtb:u-boot-s905.bin:NA:NA:Beelink Mini MX Ver 1.0
ophub commented 2 years ago

Some boxes are locked to prevent writing, such as MXQ PRO+ of s905.

You can also try this dtb on your box: meson-gxbb-mxq-pro-plus.dtb

flymike commented 2 years ago

Yes I did add the 61 entry to armbian-install script.

I read this forum on Armbian before and tried that trick but couldn't accomplished... maybe you can get some idea from there https://forum.armbian.com/topic/18902-s905-failed-to-boot-from-emmc/?do=findComment&comment=132455

I can use both builds in SD/USB, I just want the internal emmc installation working... I can test if you want to implement but it is OK if it is too complicated (probably no one still using this box...)

Even boot from SD and system on eMMC is OK for me...

ophub commented 2 years ago

Several s905 boxes I have seen so far do not support writing emmc.

Generally speaking, I recommend using armbian on TF/SD/USB, because emmc is not written so it will not affect the original system. And you can choose a larger capacity TF card according to your needs.

There is a famous saying that it is my right not to write emmc, but it is your fault not to let me write emmc.

ophub commented 2 years ago

According to your feedback, I have already packaged the s905 firmware, which can be used directly in the future without manual modification of dtb and u-boot.

https://github.com/ophub/amlogic-s9xxx-armbian/releases/tag/Armbian_Aml_bullseye_2021.12.28.1621

flymike commented 2 years ago

The s905 build works great, thx. FYI, the wifi seems no longer works in this build? I do not use wifi anyway, just noticed that in the armbian_config... Still try to find a way to utilize the eMMC for system, 16G is wasted otherwise, also performance would be better than SD. Also, you may want to put "_2G" suffix for the model name, The 1G model will not boot...

ophub commented 2 years ago

Thanks for reminding, the device description and link have been updated.

flymike commented 2 years ago

s905 firmware #2021.12.28.1621

ophub commented 2 years ago

u-boot will be reloaded, so the ip obtained at the first boot will be disconnected immediately, and the system will automatically start the second boot and obtain the final ip. This is done to be compatible with kernel above 5.10.y+