MichaIng / DietPi

Lightweight justice for your single-board computer!
https://dietpi.com/
GNU General Public License v2.0
4.81k stars 494 forks source link

Image | Radxa ZERO 3 #7024

Closed SelfhostedPro closed 4 months ago

SelfhostedPro commented 5 months ago

Creating an image request

Formal device information

Is the SBC officially supported by the Debian installer?

If not, is a reliable 3rd party Debian image available for this SBC?

If not, are there install instructions for Debian available?

Here are the official instructions for installing an OS: https://docs.radxa.com/en/zero/zero3/getting-started/install-os

MichaIng commented 4 months ago

Great!

I'm also building a Trixie image now, as this is currently possible. But again, I am 99.99% sure that is has no effect on GPU/display driver issues, Radxa simply will have more differences between their images, than the Debian userland version alone. Also, while builds go currently through, on my Trixie systems, I still face a lot of errors coming and going due to 64-bit time_t transition, i.e. one or more packages are hold back due to dependency conflicts. Running forces full-upgrade, result in unwanted purged packages to resolve those conflicts, which can potentially result in a broken system on/after first boot of DietPi.

Hence, I strongly recommend to not use Trixie for any production case for the next month(s), until time_t transition has fully finished. But of course, it does not hurt to test/verify whether the Bookworm system really has no GPU/display issue, which the Trixie system does not have.

MichaIng commented 4 months ago

So, since the wrong device tree was the reason (indeed I just found that Radxa's kernel sources provide that one, while Armbian's kernel sources do not, but their default DTS matches the AIC8800 one from Radxa), probably it works actually well with Linux 6.1, when defining the device tree explicitly. I'll recreate an image with that: https://github.com/MichaIng/DietPi/actions/runs/8924902271

Will be available again here: https://dietpi.com/downloads/images/testing/ With _Linux6.1 suffix.

EDIT: Okay, the Linux 6.1 image seems to have no HDMI output and throws mali/panfrost kernel errors with stack trace at reboot. Hence for now we'll stick with legacy Linux 5.10 kernel, and will generate Linux 6.1 kernel packages by times, or in case we see some related commit at Armbian or Radxa (who did not add ZERO 3 support to their 6.1 branch either).

disablewong commented 4 months ago

em.... it sound strange to me.... my board can use HDMI with kernel 6.1.43.... IMG_20240503_145211

The current problem is the wifi was not detected during the first boot, it only show up after rebooting... IMG_20240503_150206

MichaIng commented 4 months ago

Interesting, when testing the Radxa ZERO 3E with @StephanStS, it did not work, but worked when just placing the SD card with 5.10 build. Not sure whether 3E and 3W have some other differences in this regards?

Does WiFi not work on any cold boot, or is it only missing on the very first boot? And does it work immediately with the 5.10 image? And when it is missing, does the kernel log dmesg contain any hints?

I was looking through Armbian implementation. Strange is, regarding the device tree, that U-Boot is configured to select the correct one:

Confusing why it was still trying to load rk3566-radxa-zero-3w-aic8800ds2.dtb. Probably there is some code in the bootloader which changes the variable, depending on the actually detected WiFi chip. And the problem is that Armbian replaced the default device tree with the AIC8800 one, and removed that dedicated one from the kernel. However, it does not hurt to have the intended one defined in /boot/dietpiEnv.txt. The option being revealed indirectly points to other device trees, like the AP6212 related one.

The bigger problem now is, that the ZERO 3W comes with two different onboard WiFi chips: AP6212 and AIC8800. In our images/with Armbian kernel, the default supports AIC8800. AP6212 requires a switch to the rk3566-radxa-zero3-ap6212.dtb device tree.

I mixed it up, ignore ... , but according to your [forum](https://dietpi.com/forum/t/share-of-unofficial-dietpi-radxa-zero-3w/18661/46?u=michaing) post, AIC8800 requires additional firmware. AP6212 requires a switch to the `rk3566-radxa-zero3-ap6212.dtb` device tree, but the firmware seems to be present OOTB: https://github.com/armbian/firmware/tree/master/ap6212 Strange is, that there are several AIC8800 firmware blobs as well: https://github.com/armbian/firmware/tree/master/aic8800 ![image](https://github.com/MichaIng/DietPi/assets/28480705/230fb88b-86e9-4074-aef1-29a384143056) @disablewong which files were missing? Probably they are only at a wrong path. `dmesg` should reveal where the driver is looking for (and does not find) the firmware. EDIT: Ah, I mixed it up: You required additional firmware for AP6212, not AIC8800. And of course, the converted Radxa Debian image does not contain `armbian-firmware`, but likely some Radxa-specific package, which was removed by the installer. So I guess with out image(s), firmware for both variants is present, and only the device tree needs to be switched.

And, I hope there is a way to detect the used WiFi chip e.g. via board revision/serial number:

cat /proc/device-tree/serial-number
msanaullahsahar commented 4 months ago

The output of this command cat /proc/device-tree/serial-number is e360f71969ed8035. So, what kind of Wi-Fi chip my ZERO 3W has? Also what image do you want me to test? This DietPi_RadxaZERO3-ARMv8-Bookworm.img.xz or this: DietPi_RadxaZERO3-ARMv8-Bookworm_Linux6.1.img.xz.

MichaIng commented 4 months ago

I hope that the serial number follows some pattern to differentiate between the revisions. So far it does not like it does, but let's see how those of the others look like.

Would be good if you could test both images. Especially check whether WiFi works, i.e. whether the adapter shows up in ip l, and dmesg should reveal which WiFi chip is used.

MichaIng commented 4 months ago

Found the code which overrides the device tree based some hardware ID ranges: https://github.com/radxa/u-boot/pull/45/files

We can do the following in our /boot/boot.scr:

šŸ‘.

disablewong commented 4 months ago

I hope that the serial number follows some pattern to differentiate between the revisions. So far it does not like it does, but let's see how those of the others look like.

Would be good if you could test both images. Especially check whether WiFi works, i.e. whether the adapter shows up in ip l, and dmesg should reveal which WiFi chip is used.

The wifi in my case show-up in both ip l and dietpi-config. For the the serial number cat /proc/device-tree/serial-number, it returns 40a812228830f789

In my opinion, I would give compatibility with ap6212 a lower priority, cause this batch of board should be in small quantity (~500 pcs), and will not be produced again as I learnt from Radxa.

Now it is in Labor's Day holidays in China and they would return to work next week. Maybe I can help request some support from Radxa if needed.

MichaIng commented 4 months ago

Thanks, this basically verifies that Armbian did no wrong decision to make the AIC8800 device tree the default. Instead of checking and adjusting fdtfile in the U-Boot script, much better is to patch the Radxa U-Boot sources (via Armbian build patch system) to use the dtb's from Armbian kernel.

I'll implement this tomorrow. Even if the batch is small, it is sufficiently simple to keep supporting the boards of those early adopters. So far, no need for help from Radxa, as the code is self-explaining, but thanks for the offer to ask šŸ™‚.

MichaIng commented 4 months ago

Totally forgot about the U-Boot patch. Done now: https://github.com/MichaIng/build/commit/084efdc Please test everyone on all Radxa ZERO 3W/3E variants you have with AIC8800 and AP6212 onboard WiFi chip:

cd /tmp
wget https://dietpi.com/downloads/binaries/testing/linux-u-boot-radxa-zero3-legacy.deb
dpkg -i linux-u-boot-radxa-zero3-legacy.deb
/boot/dietpi/func/dietpi-set_hardware flash-u-boot-mmc
sed -i '/^[[:blank:]]*fdtfile=/s/^/#/' /boot/dietpiEnv.txt
reboot

If it does not boot anymore, still trying to load the wrong device tree, the revert the change in /boot/dietpiEnv.txt, i.e. uncomment the fdtfile= line again. But based on the serial console output we saw, the patched code should be pretty much the relevant one here.

MichaIng commented 4 months ago

Is anyone able to test the above? So I can merge those builds into our APT repo.

disablewong commented 4 months ago

yes Michalng, thanks for the hard works. I would test it today and report here.

disablewong commented 4 months ago

I've tested the image, with some strange output at a glance. I summarize the findings as below for your investigation.

1) UART debug port with some funny outputs, like

[   18.483035] mpp_rkvenc fdf40000.rkvenc: Failed to get leakage
[   18.483093] mpp_rkvenc fdf40000.rkvenc: pvtm = 87560, from nvmem
[   18.483112] mpp_rkvenc fdf40000.rkvenc: pvtm-volt-sel=1
[   18.483292] mpp_rkvenc fdf40000.rkvenc: avs=0
[   18.483419] mpp_rkvenc fdf40000.rkvenc: failed to find power_model node
[   18.483435] mpp_rkvenc fdf40000.rkvenc: failed to initialize power model
[   18.483447] mpp_rkvenc fdf40000.rkvenc: failed to get dynamic-coefficient
[   18.484034] mpp_rkvenc fdf40000.rkvenc: probing finish
[   18.484502] mpp_rkvdec2 fdf80200.rkvdec: Adding to iommu group 5
[   18.484745] mpp_rkvdec2 fdf80200.rkvdec: rkvdec, probing start
[   18.485080] mpp_rkvdec2 fdf80200.rkvdec: shared_niu_a is not found!
[   18.485097] rkvdec2_init:1022: No niu aclk reset resource define
[   18.485111] mpp_rkvdec2 fdf80200.rkvdec: shared_niu_h is not found!
[   18.485123] rkvdec2_init:1025: No niu hclk reset resource define
[   18.485425] mpp_rkvdec2 fdā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’?ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’?ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’ā–’
  1. HDMI out works
  2. First boot take long time as it presume I have ethernet (radxa 3E?)
  3. Wifi is not detected (I am on AP6212 chip)

The image I've tested was Trixie, kernel version was 5.10.xx

MichaIng commented 4 months ago

First boot take long time as it presume I have ethernet (radxa 3E?)

The device tree supports both: ZERO 3W and ZERO 3E. But it should not take longer to boot because of this. First boot takes long because DietPi is doing some first boot setup stuff: https://github.com/MichaIng/DietPi/blob/master/rootfs/var/lib/dietpi/services/dietpi-firstboot.bash

Hmm, how to find out which device tree was picked. Can you check this:

find /proc/device-tree -name 'wireless[-_]wlan'

It should return a directory. If so, that should contain a file named wifi_chip_type. Can you check its content?

Alternative:

sed -i '/^setenv bootargs/s/"$/ fdtfile=${fdtfile}"/' /boot/boot.cmd
mkimage -C none -A arm64 -T script -d /boot/boot.cmd /boot/boot.scr

Then, after reboot, you can read back the variable via

cat /proc/cmdline
MichaIng commented 3 months ago

@StephanStS When you find time, could you test whether the automatic device tree choice works in your case, with the new U-Boot build?

cd /tmp
wget https://dietpi.com/downloads/binaries/testing/linux-u-boot-radxa-zero3-legacy.deb
dpkg -i linux-u-boot-radxa-zero3-legacy.deb
/boot/dietpi/func/dietpi-set_hardware flash-u-boot-mmc
sed -i '/^[[:blank:]]*fdtfile=/s/^/#/' /boot/dietpiEnv.txt
reboot
StephanStS commented 3 months ago

@StephanStS When you find time, could you test whether the automatic device tree choice works in your case, with the new U-Boot build?

cd /tmp
wget https://dietpi.com/downloads/binaries/testing/linux-u-boot-radxa-zero3-legacy.deb
dpkg -i linux-u-boot-radxa-zero3-legacy.deb
/boot/dietpi/func/dietpi-set_hardware flash-u-boot-mmc
sed -i '/^[[:blank:]]*fdtfile=/s/^/#/' /boot/dietpiEnv.txt
reboot

I used the image from there for my Radxa ZERO 3E: https://dietpi.com/downloads/images/DietPi_RadxaZERO3-ARMv8-Bookworm.img.xz and executed the commands given.

The boot process failed (no output on HDMI). The serial console gives this output:

U-Boot 2024.01-armbian (May 13 2024 - 16:10:34 +0000)

Model: Radxa ZERO 3
DRAM:  2 GiB
PMIC:  RK8170 (on=0x40, off=0x00)
fan53555_probe: FAN53555 option 8 rev 1 detected
fan53555_rk860_calibration>>>>>>hardware have rk860-0, reg[0x0e] = 0x4
fan53555_rk860_calibration>>>>>>hardware do not have rk860-1
fan53555_rk860_calibration>>>>>rk860_type = 1
Core:  310 devices, 29 uclasses, devicetree: separate
MMC:   mmc@fe2b0000: 1, mmc@fe2c0000: 2, mmc@fe310000: 0
Loading Environment from nowhere... OK
Override default fdtfile to rockchip/rk3566-radxa-zero-3.dtb
In:    serial@fe660000
Out:   serial@fe660000
Err:   serial@fe660000
Model: Radxa ZERO 3
Net:   No ethernet found.
starting USB...
Bus usb@fd000000: Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.10
Bus usb@fd800000: USB EHCI 1.00
Bus usb@fd840000: USB OHCI 1.0
Bus usb@fd880000: USB EHCI 1.00
Bus usb@fd8c0000: USB OHCI 1.0
scanning bus usb@fd000000 for devices... 1 USB Device(s) found
scanning bus usb@fd800000 for devices... 1 USB Device(s) found
scanning bus usb@fd840000 for devices... ERROR:  USB-error: DEVICENOTRESPONDING: Device did not respond to token (IN) or did
not provide a handshake (OUT) (5)
ERROR: USB-error: DEVICENOTRESPONDING: Device did not respond to token (IN) or did
not provide a handshake (OUT) (5)
unable to get device descriptor (error=-1)
1 USB Device(s) found
scanning bus usb@fd880000 for devices... 1 USB Device(s) found
scanning bus usb@fd8c0000 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit Ctrl+C key in 0 seconds to stop autoboot...
** Booting bootflow 'mmc@fe2b0000.bootdev.part_1' with script
368 bytes read in 5 ms (71.3 KiB/s)
35054080 bytes read in 3317 ms (10.1 MiB/s)
7503065 bytes read in 717 ms (10 MiB/s)
Failed to load '/boot/dtb/rockchip/rk3566-radxa-zero-3.dtb'
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
Moving Image from 0x2080000 to 0x2200000, end=4420000
## Loading init Ramdisk from Legacy Image at 0a200000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    7503001 Bytes = 7.2 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree
Boot failed (err=-14)
Card did not respond to voltage select! : -110
scanning bus for devices...
No ethernet found.
No ethernet found.
## Error: "distro_bootcmd" not defined
Boot failed. Reset in 3 seconds...
resetting ...
DDR Version V1.10 20210810
ln
ddrconfig:0
LP4 MR14:0x4d
LPDDR4, 324MHz
BW=32 Col=10 Bk=8 CS0 Row=16 CS=1 Die BW=16 Size=2048MB
tdqss: cs0 dqs0: 434ps, dqs1: 313ps, dqs2: 361ps, dqs3: 313ps,

change to: 324MHz
PHY drv:clk:38,ca:38,DQ:30,odt:0
vrefinner:41%, vrefout:41%
dram drv:40,odt:0
clk skew:0x58

change to: 528MHz
PHY drv:clk:38,ca:38,DQ:30,odt:60
vrefinner:16%, vrefout:41%
dram drv:40,odt:0
clk skew:0x6e

change to: 780MHz
PHY drv:clk:38,ca:38,DQ:30,odt:60
vrefinner:16%, vrefout:41%
dram drv:40,odt:0
clk skew:0x58

change to: 1056MHz(final freq)
PHY drv:clk:38,ca:38,DQ:30,odt:60
vrefinner:16%, vrefout:29%
dram drv:40,odt:80
vref_ca:00000068
clk skew:0x2c
cs 0:
the read training result:
DQS0:0x3b, DQS1:0x38, DQS2:0x3a, DQS3:0x3c,
min  : 0xd  0xf  0xf  0xd  0x4  0x5  0xa  0x1 , 0x6  0x5  0x3  0x2  0x8  0xa 0x10  0x8 ,
       0x5  0x3  0x4  0x5  0x3  0x4  0x4  0x5 , 0x4  0x5  0x8  0x1  0x6  0x9  0x5  0x4 ,
mid  :0x29 0x2b 0x2b 0x29 0x20 0x21 0x26 0x1e ,0x22 0x21 0x1f 0x1d 0x25 0x25 0x2b 0x24 ,
      0x21 0x22 0x20 0x23 0x20 0x21 0x22 0x22 ,0x22 0x23 0x26 0x1f 0x24 0x26 0x22 0x20 ,
max  :0x46 0x47 0x48 0x45 0x3c 0x3e 0x43 0x3b ,0x3e 0x3e 0x3b 0x39 0x43 0x41 0x47 0x41 ,
      0x3e 0x41 0x3d 0x41 0x3e 0x3e 0x40 0x3f ,0x41 0x42 0x44 0x3e 0x42 0x44 0x40 0x3d ,
range:0x39 0x38 0x39 0x38 0x38 0x39 0x39 0x3a ,0x38 0x39 0x38 0x37 0x3b 0x37 0x37 0x39 ,
      0x39 0x3e 0x39 0x3c 0x3b 0x3a 0x3c 0x3a ,0x3d 0x3d 0x3c 0x3d 0x3c 0x3b 0x3b 0x39 ,
the write training result:
DQS0:0x66, DQS1:0x56, DQS2:0x5c, DQS3:0x56,
min  :0x93 0x93 0x94 0x92 0x89 0x8b 0x8f 0x8c 0x8c ,0x7f 0x7f 0x7d 0x7b 0x82 0x85 0x87 0x85 0x7f ,
      0x87 0x87 0x86 0x87 0x85 0x85 0x86 0x88 0x81 ,0x7c 0x7e 0x7e 0x79 0x7d 0x7f 0x7c 0x7d 0x7e ,
mid  :0xb0 0xb0 0xb1 0xaf 0xa5 0xa8 0xac 0xa7 0xa8 ,0x9b 0x9b 0x99 0x97 0x9e 0xa0 0xa0 0x9f 0x9a ,
      0xa4 0xa4 0xa0 0xa3 0x9f 0xa0 0xa0 0xa1 0x9c ,0x98 0x9a 0x9a 0x95 0x99 0x9b 0x98 0x99 0x9a ,
max  :0xcd 0xcd 0xcf 0xcc 0xc2 0xc5 0xc9 0xc3 0xc4 ,0xb8 0xb8 0xb6 0xb3 0xba 0xbb 0xb9 0xba 0xb6 ,
      0xc1 0xc1 0xbb 0xc0 0xba 0xbb 0xba 0xbb 0xb7 ,0xb4 0xb6 0xb6 0xb1 0xb5 0xb7 0xb4 0xb5 0xb6 ,
range:0x3a 0x3a 0x3b 0x3a 0x39 0x3a 0x3a 0x37 0x38 ,0x39 0x39 0x39 0x38 0x38 0x36 0x32 0x35 0x37 ,
      0x3a 0x3a 0x35 0x39 0x35 0x36 0x34 0x33 0x36 ,0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 ,
CA Training result:
cs:0 min  :0x45 0x40 0x3f 0x33 0x3d 0x33 0x43 ,0x47 0x40 0x3d 0x2d 0x3c 0x32 0x45 ,
cs:0 mid  :0x81 0x83 0x79 0x76 0x77 0x75 0x6f ,0x82 0x82 0x77 0x71 0x77 0x73 0x70 ,
cs:0 max  :0xbd 0xc7 0xb4 0xb9 0xb2 0xb8 0x9b ,0xbd 0xc4 0xb1 0xb6 0xb2 0xb5 0x9b ,
cs:0 range:0x78 0x87 0x75 0x86 0x75 0x85 0x58 ,0x76 0x84 0x74 0x89 0x76 0x83 0x56 ,
out

U-Boot SPL 2024.01-armbian (May 13 2024 - 16:10:34 +0000)
Trying to boot from MMC2
## Checking hash(es) for config config-1 ... OK
## Checking hash(es) for Image atf-1 ... sha256+ OK
## Checking hash(es) for Image u-boot ... sha256+ OK
## Checking hash(es) for Image fdt-1 ... sha256+ OK
## Checking hash(es) for Image atf-2 ... sha256+ OK
## Checking hash(es) for Image atf-3 ... sha256+ OK
## Checking hash(es) for Image atf-4 ... sha256+ OK
## Checking hash(es) for Image atf-5 ... sha256+ OK
INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-167-g81e0b993a-dirty:xsf
NOTICE:  BL31: Built : 11:20:08, Sep  6 2021
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    pmu v1 is valid
INFO:    dfs DDR fsp_param[0].freq_mhz= 1056MHz
INFO:    dfs DDR fsp_param[1].freq_mhz= 324MHz
INFO:    dfs DDR fsp_param[2].freq_mhz= 528MHz
INFO:    dfs DDR fsp_param[3].freq_mhz= 780MHz
INFO:    Using opteed sec cpu_context!
INFO:    boot cpu mask: 0
INFO:    BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR:   Error initializing runtime service opteed_fast
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0xa00000
INFO:    SPSR = 0x3c9
MichaIng commented 3 months ago

Thanks, I found it, rk3566-radxa-zero-3.dtb => rk3566-radxa-zero3.dtb. Other than Orange Pi's device tree names, those from Armbian do not have the dash between "zero" and "3".

I just did a rebuild, would be great if you could test it again. As alternatively to flashing a new image, you could also edit the /boot/dietpiEnv.txt from another Linux system and re-add the fdtfile=rockchip/rk3566-radxa-zero3.dtb.

StephanStS commented 3 months ago

The new downloaded image now works (UART console output as well as HDMI output.

MichaIng commented 3 months ago

Okay great, thanks for testing. I'll merge this into our APT repository then for the next images to have it fixed.

MichaIng commented 1 month ago

Can someone replicate that HDMI does NOT work anymore when upgrading to vendor kernel?

apt update
apt install linux-{image,dtb}-vendor-rk35xx

@StephanStS faced this issue on Radxa ZERO 3E, so would be interesting to know whether its the case on 3W as well. I also just pushed an updated package version, so maybe that was even fixed.

teddeebare commented 1 month ago

I just downloaded the latest image and used on my Zero3W. No display from HDMI. Will have console output later, other work I have to resolve first.

MichaIng commented 1 month ago

Okay, good to know. Then we will keep using the legacy kernel for now, until we find time to further investigate why HDMI is not working, or a fix has been found/done at Armbian or mainline side.