[S922X] X88 King

Thanks @ramoncio for the update on ethernet port.
I use new version of g12b_s922x_x88_king_rev_a.dtb from
CoreELEC-Amlogic-ng.arm-19.2-Matrix_nightly_20210701.tar.
Now ethernet is working fine without using usb adaptor.

Hello,
I can confirm atirage21’s ethernet problems. I have exactly the same symptoms:

  1. Stock Android works perfectly fine with 1gbit/s ethernet
  2. In CoreELEC-Amlogic-ng.arm-19.3-Matrix-Generic.img “ethtool -S eth0” shows me rx-crc-errors increasing constantly when on 1gbit/s, to an extend that the dhcp request doesn’t even complete.
  3. When i force the ethernet to 100mbit/s “ethtool -s eth0 speed 100 duplex full” everything works fine.

I use “g12b_s922x_x88_king_rev_a.dtb” from the above imagefile.

Does anybody else have similar problems?

In my box ethernet works fine.

X88King:~ # ethtool eth0
Settings for eth0:
	Supported ports: [ TP MII ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Full 
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Supported FEC modes: Not reported
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Full 
	Advertised pause frame use: No
	Advertised auto-negotiation: Yes
	Advertised FEC modes: Not reported
	Link partner advertised link modes:  10baseT/Half 10baseT/Full 
	                                     100baseT/Half 100baseT/Full 
	                                     1000baseT/Full 
	Link partner advertised pause frame use: Symmetric
	Link partner advertised auto-negotiation: Yes
	Link partner advertised FEC modes: Not reported
	Speed: 1000Mb/s
	Duplex: Full
	Port: MII
	PHYAD: 0
	Transceiver: external
	Auto-negotiation: on
	Supports Wake-on: ug
	Wake-on: d
	Current message level: 0x0000003f (63)
			       drv probe link timer ifdown ifup
	Link detected: yes


X88King:~ # opkg install iperf
Installing iperf (2.1.3-1) to root...
Downloading http://bin.entware.net/aarch64-k3.10/iperf_2.1.3-1_aarch64-3.10.ipk
Configuring iperf.
X88King:~ # iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[  1] local 192.168.161.222 port 5001 connected with 192.168.161.223 port 58484
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-10.04 sec  1.05 GBytes   899 Mbits/sec
1 Like

Is it possible add support of PHY RTL8211F-VD for x88kking to dtb from last 19.5-Matrix_rc2 (Added support of PHY RTL8211F-VD) ? I updated of coreelec, but always not going the 1gbit speed.

RTL8211F-VD is included in kernel: add phy RTL8211F-VD · CoreELEC/linux-amlogic@b83657a · GitHub

Can you post after reboot

dmesg | paste

@vpeter I noticed USB 3.0 is not working properly, at least with 3 or 4 mass storage devices I tested: a hard drive, a couple of usb flash disks and a M.2 SSD enclosure.

X88King:~ # lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/0p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/2p, 480M
    |__ Port 1: Dev 4, If 0, Class=Mass Storage, Driver=usb-storage, 480M
    |__ Port 2: Dev 2, If 0, Class=Vendor Specific Class, Driver=dvb_usb_dib0700, 480M
X88King:~ # lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 07ca:b808 AVerMedia Technologies, Inc. A808
Bus 001 Device 002: ID 152d:a583 JMicron Technology Corp. / JMicron USA Technology Corp. SSK Storage
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

The DVB-T card is plugged into the USB 2.0 port, but the mass storage device (M.2 enclosure) is plugged into the USB 3.0 port and should work at 5000M. I noticed this when I recovered my backup to your USB test image with working wifi, it was very slow.

In my X88 King gigabit ethernet works ok, and transfer speeds are pretty high when copying files from or to the EMMC, up to 65MB/s. But USB works just as 2.0.

X88King:~ # ethtool eth0|grep -i speed
	Speed: 1000Mb/s
X88King:~ # ethtool -S eth0|grep crc
     mmc_rx_crc_error: 0
     rx_crc: 0

I searched if any want have an issue with the x88 , i noticed last 3 days the device got freeze, and not ip , not able to control it. How can I get some help or send any log to see what is the problem
Thanks

Also i have now evidence, that this Tv box from hardware side is ok in android. Speed 300 mbit/s is not possible on 100 mbit eth port. How we know log data feom box for next improvement of supporting of this curious hardware ?

Hello, I was wondering where the dts file is for the X88 King (if you have one, I am assuming as you have a DTB file for the x88 king on the website that is bundled in the img you flash), I checked the linux-amlogic repo and while I found the directories (arch/{arch}/boot/dts) where the dts’s seem to be contained, I could not find one for the X88 King specifically (neither with a github search).

Edit: I found a dts file named the same thing from linux-ogu-4.9/g12b_s922x_x88_king_rev_a.dts at ogu-4.9 · JohnnyonFlame/linux-ogu-4.9 · GitHub is this the one CoreELEC uses and if so, should it be added to the linux-amlogic repo so it is easier to find?

It’s all there:

Ah, thank you, that was my issue, seems to have been removed in the default branch but that branch does have it, thank you for directing me towards it.

Default is Amlogic-ne, 5.4 now. 4.9 Kernel is EOSD.

Also, I have heard CoreELEC may be an android system but I can’t find that anywhere on the site? It states it is a lightweight linux system, so I assume that is correct.

Coreelec is an Android system, and Armbian uses the mainline kernel. The dtb and driver of these two systems are not common.

Since the TV box provides a development interface for the Android system, it is very convenient to use in the Android system. Coreelec can use these drivers well, but armbian cannot.

To put it into context, I requested the DTS as I am attempting to get the X88 King working fully under armbian and CoreELEC seemed to have everything working (in Armbian, the USB is not working and audio is wrong, both work in CoreELEC) so it could be used as a base point and I assume the difference is the DTS/DTB (I am not that knowledgeable in this area so I apologize if my assertion is incorrect that the DTS is the difference allowing usb and sound to work on CoreELEC). I wish to know if the above quote is correct or if CoreELEC is not android, if it is not, that is wonderful news as that should mean the file may be able to be used with little (or no (optimistically)) modification.

CoreELEC uses Amlogic vendor kernel, based on Android. Android is Linux. Amlogic Android, what’s default on their boxes uses ARCH ARM, we use ARM64. So kernel modules as example just can not be used from Android on CoreELEC system as the ARCH do not match.

When Armbian uses mainline kernel I am almost sure the hardware decoder will not work for all formats as this is only supported by vendor kernel.

And you can not mix them together, it’s a complete different structure and kernel version as well. So upstream or backport will be needed, if possible…

1 Like

In device tree of coreelec i dont see dtb for x88 for armarch64 (omega, nexus).

Wrong project?
Amlogic-ng will be yours.

X88 King 922 working with Beelink GT King Pro tree. Tested in previous versions.

Kernel 4.9(269) is not supported from january 2023.Only i try found something new kernel system. These kernels have really long support: civilinfrastructureplatform:start [Wiki]

the Linux 4.9 kernel series has finally reached end of life with the 4.9.337 update. There will be good security update also from sight coreelec according to time (269 vs 337).

1 Like