The Allwinner A133 is a powerful, cost-effective application processor designed for tablets, automotive infotainment, smart displays, and industrial control panels. As a 64-bit, quad-core Cortex-A53 chip, it balances performance and power efficiency. However, working with its firmware—from bootloaders to Android or Linux images—can be challenging. This post is a deep dive into the A133 firmware ecosystem, covering build environments, boot flow, partitioning, and common customization tasks.
Three common methods to flash your custom firmware:
| Symptom | Cause | Fix |
|--------|-------|-----|
| No USB detection | Not in FEL mode | Check FEL pin + GND short |
| Stuck at boot0 | Bad DRAM config | Recompile with lower DRAM speed |
| Kernel panic | Wrong device tree | Replace .dtb with correct one |
| Boot loop after 15 sec | PMIC hold missing | Add hold_power_en in board.dts | allwinner+a133+firmware+work
Emergency recovery: Always keep a known-working firmware .img file. Use PhoenixSuit’s Force Format (uncheck "normal update").
Based on actual engineering support tickets for the A133: Inside the Allwinner A133: A Complete Guide to
Issue: "Board boots from SD but not eMMC"
boot0 defaults to 100KHz, but eMMC HS200 needs 200MHz. Fix: Adjust mmc_para in SPL.Issue: "Thermal throttling at idle"
arisc doesn't know the voltage for 408MHz PLL. Solution: Update dvfs_table.c in the bootloader.Issue: "USB Gadget (ADB) not recognized"
sunxi_usb_reset() to U-Boot's board_late_init().Allwinner is migrating from legacy U-Boot to TianoCore EDK II for the A133 (especially for Windows on ARM or ACPI support, though rare). For 99% of Linux work, U-Boot 2021.07 or newer is standard. Root Cause: The eMMC DLL (Delay Locked Loop)