[PATCH 0/2] arm64: dts: rockchip: add ALIENTEK QuarkPi-CA2
BG9OXA
bg9oxa at 163.com
Sun Sep 27 05:36:59 PDT 2026
Hi all,
This short series adds support for the ALIENTEK QuarkPi-CA2, an RK3588S
based single board computer.
Board summary:
- Rockchip RK3588S (4x Cortex-A76 + 4x Cortex-A55), LPDDR4x
- eMMC, microSD slot, M.2 socket (PCIe 2.0 x1)
- Gigabit Ethernet, USB 3.0 Type-A, USB 2.0 Type-A ports and a USB-C
port (USB 2.0 plus DisplayPort altmode)
- HDMI output, MIPI DSI and MIPI CSI connectors
- ES8388 analog codec with 3.5 mm jack, HUSB311 USB-C PD controller
- 40-pin header, RK806 PMIC, IR receiver
- No SPI-NOR; the vendor bootloader reads extlinux.conf from the SD/eMMC
boot partition
Patch 1 documents the board in the Rockchip platform bindings, patch 2
adds the device tree itself (plus its Makefile entry). The "alientek"
vendor prefix is already present in vendor-prefixes.yaml, so no vendor
prefix change is needed.
Tested on hardware with a 6.18 based kernel: boot from SD and eMMC,
gigabit Ethernet, both USB 2.0 ports, the USB 3.0 Type-A port (5000 Mbps
link), USB-C DisplayPort altmode, HDMI video and audio, ES8388 analog
audio, M.2 PCIe, ADC keys, the IR receiver and ramoops.
Notes worth the reviewer's attention:
* The codec node keeps "clock-names = \"mclk\"" together with the
I2S0_8CH_MCLKOUT_TO_IO clock. Without that name the MCLK never reaches
the codec pad and playback stays silent, even though every register,
the DAPM paths and the ALSA controls look correct. Verified on
hardware both with and without the property.
* The codec compatible list is "everest,es8323", "everest,es8388". The
second entry is not cosmetic: sound/soc/codecs/es8328-i2c.c matches only
"everest,es8328" and "everest,es8388", so dropping it would leave the
codec without a driver. Keeping it produces two dtbs_check warnings,
because an ES8323/ES8388 binding is not upstream yet and the node falls
back to everest,es8316.yaml (the compatible list is "too long" and
AVDD/DVDD/HPVDD/PVDD are unexpected). Two mainline boards already use
"everest,es8323" with the same gap (rk3588-firefly-itx-3588j,
rk3588s-youyeetoo-r1), so it looks like a missing binding rather than a
board issue. I left the binding out of this series to keep the board
port focused and will happily send it separately - please tell me which
form you prefer.
* The USB 3.0 Type-A port is wired to usb_host2_xhci through combphy2_psu;
both are enabled here, as in the vendor BSP. combphy2_psu is free on
this board because the M.2 socket uses pcie2x1l2 (combphy0_ps).
* The MIPI CSI camera pipeline is described, but does not stream yet: the
sensor probes fine while the RK3588 VICAP/rkcif capture path is still
incomplete upstream, so those nodes are included for completeness only.
This is my first patch to the Rockchip platform. I am a Chinese hobbyist
(amateur radio callsign BG9OXA) working on this board in my spare time, so
please point out anything that does not follow the expected style.
BG9OXA (2):
dt-bindings: arm: rockchip: add ALIENTEK QuarkPi-CA2
arm64: dts: rockchip: add ALIENTEK QuarkPi-CA2
.../devicetree/bindings/arm/rockchip.yaml | 5 +
arch/arm64/boot/dts/rockchip/Makefile | 1 +
arch/arm64/boot/dts/rockchip/rk3588s-quarkpi-ca2.dts | 1508 +++++++++++++++++++
3 files changed, 1514 insertions(+)
--
2.43.0
More information about the Linux-rockchip
mailing list