March 21Mar 21 @Bob-the-great try these images https://github.com/NickAlilovic/build/releases/tag/20250306
March 24Mar 24 @Nick A I have one of those T95 H616 AXP313a tv boxes. I have successfully compiled a mainline U-Boot image and it boots fine, all with UART input/output, but none of the images from your github repo work. I only managed to boot MiniArch images up to 6.19 kernel but I couldn't get HDMI, Ethernet, WiFi or Bluetooth to work at all. Got any idea what could be missing? I can help in debugging if you'd like. I attached the extracted and decompiled DTS from the stock Android 10 firmware of the device. Thank you extracted.dts
March 24Mar 24 @boggy Try my Transpeed 8K618T image. It includes the most critical DTS settings for this hardware. All your Dram settings in the dts have dram_type = <0x03> or DDR3. dram_para1 { device_type = "dram_para1"; dram_clk = <0x258>; dram_type = <0x03>; cd-gpios = <&pio 8 16 GPIO_ACTIVE_LOW>; /* PI16 */ sdmmc@04020000 { compatible = "allwinner,sunxi-mmc-v4p1x"; device_type = "sdc0"; . . . cd-gpios = <0x53 0x08 0x10 0x06 0x01 0x03 0xffffffff>; can you find the wifi chip on your board? Edited March 24Mar 24 by Nick A
March 25Mar 25 @Nick A Hi, thank you for the quick response! So far the attempts to boot the transpeed image would hang during boot most of the time, but I did manage to get a working shell once, albeit still without any networking. The WiFi chip is BCM4334, the physical print on the chip wasn't too helpful, but in either case it's the exact same model as shown on the pictures on this article https://linux-sunxi.org/T95 (4/32 version). I can't currently test HDMI but it is attempting to load Plymouth despite the config specifying otherwise. I attached a boot log of the stock Android image, if it helps at all. Thank you so much for helping out, I really appreciate it! androidbtlog.txt Edited March 25Mar 25 by boggy typo
March 25Mar 25 Currently just hangs after the Loading kernel message, will provide a log with increased verbosity tomorrow
March 25Mar 25 @Nick Acutecom.log log2.txt Here's how it looks right now, booting from an SD card on which I flashed the mainline U-Boot to boot the image.
March 25Mar 25 @boggy have you tried another SD card? You have a lot of mmc errors. which miniarch image booted for you? Maybe we can use the mmc settings from that image.
September 19Sep 19 My T95 hardware: * **Model:** T95 Android TV Box * **SoC:** Allwinner H616 * **Board:** H616-T95MAX-V4.0 * **RAM:** 4GB DDR3 * **Internal storage:** 64GB eMMC * **Wi-Fi chip:** AW859A * **PMIC:** AXP305 * **Ethernet:** 100Mbps, using the AC200/AC300 internal PHY * **USB:** 2x USB 2.0 host ports * **Video:** HDMI output * **UART:** 3.3V logic * **Boot method:** Debian from microSD using mainline U-Boot * **Current OS:** Debian 12 Bookworm * **Current test kernel:** Linux 7.3-rc3 * **Stock Android:** still intact on eMMC Important detail: this is the **V4.0 board revision**, and some upstream T95 device-tree assumptions were based on other revisions. That mattered for things like the second USB port. T95 Box T95 H616 Linux issues and fixes so far: * **Only 2GB RAM showing** * Fixed with a U-Boot DRAM-size patch. Box now sees the full **4GB**. * **SD boot problems / wrong card detect** * Fixed by using the correct T95 device tree with the **PI16 SD card-detect GPIO**. * **Debian 7.3 kernel would not mount root** * `root=UUID=` failed without initramfs. * Fixed by using: `root=PARTUUID=fe8d38d0-eebf-4bb1-aa05-baafaf8c3f50` * **No HDMI output** * Added the H616 display-engine/HDMI patches and enabled HDMI in the T95 DTS. * HDMI now works at **1080p**. * **Ethernet not working** * Fixed H616 EMAC/AC200 PHY support. * Ethernet now links at **100Mbps full duplex**. * **One USB port had power but no data** * Stock Android DTS showed the V4.0 board also uses USB host 1. * Added: ```dts &ehci1 { status = "okay"; }; &ohci1 { status = "okay"; }; ``` * Both USB ports now work. * **Mali/Panfrost GPU acceleration** * Still being worked on. * Panfrost times out because of the H616 PRCM GPU power-domain path. This is the last major issue. Board: **H616-T95MAX-V4.0** OS: **Debian 12** Kernel testing: **Linux 7.3-rc3**
September 20Sep 20 T95 H616 Mali-G31 Panfrost GPU Fix Problem: The Mali-G31 GPU was detected by the Panfrost driver, but GPU workloads would hang and fail with errors such as: gpu sched timeout gpu soft reset timed out gpu hard reset timed out error powering up gpu L2/shader/tiler The issue was not missing Panfrost support. The GPU was not being powered and initialized correctly due to device-tree power configuration. Fixes: 1. Increased GPU voltage The board was running the GPU regulator at 900mV. Changing vdd-gpu-sys to a fixed 950mV stabilized GPU operation. Device tree: regulator-min-microvolt = <950000>; regulator-max-microvolt = <950000>; regulator-name = "vdd-gpu-sys"; 2. Restored GPU power domain A previous workaround removed the GPU power domain: /delete-property/ power-domains; This allowed Panfrost to load but caused unstable GPU power management. Restored: power-domains = <&prcm_ppu 2>; 3. Linked the GPU regulator Added: mali-supply = <®_dcdcc>; This allows the Mali GPU driver to correctly control the GPU power supply. 4. Increased CMA memory Added kernel boot parameter: cma=128M The default 32MB CMA memory was increased to 128MB for improved DRM/display buffer reliability. Final working setup: - Kernel: Linux 7.3 - GPU: Mali-G31 Bifrost - Driver: Panfrost - GPU voltage: 950mV - PRCM GPU power domain enabled - CMA: 128MB Validation: GL_VENDOR: Panfrost GL_RENDERER: Mali-G31 (Panfrost) GL_VERSION: OpenGL ES 3.1 Repeated glmark2 tests completed successfully with no GPU scheduler timeouts. Conclusion: The T95 H616 Mali-G31 Panfrost issue was caused by incorrect GPU power sequencing in the device tree, not a lack of driver support. Correcting the regulator voltage, restoring the GPU power domain, linking the regulator, and increasing CMA memory resulted in stable hardware acceleration.
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.