[PATCH] board: rockchip: Add for 9Tripod X3568 v4
Coia Prant
coiaprant at gmail.com
Thu Jun 25 16:52:23 CEST 2026
On June 25, 2026 7:07:53 PM GMT+08:00, Quentin Schulz <quentin.schulz at cherry.de> wrote:
>Hi Coia,
>
>On 6/25/26 12:54 PM, Coia Prant wrote:
>> [You don't often get email from coiaprant at gmail.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>>
>> On June 25, 2026 6:30:46 PM GMT+08:00, Quentin Schulz <quentin.schulz at cherry.de> wrote:
>>> Hi Coia,
>>>
>>> On 5/27/26 1:29 PM, Coia Prant wrote:
>>>> [You don't often get email from coiaprant at gmail.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>>>>
>>>> The 9Tripod X3568 v4 is an RK3568-based SBC, just like the RK3568-EVB.
>>>> It always uses soldered connections between the X3568CV2/X3568CV3/X3568CV4 core board
>>>> and the X3568bv4 I/O board.
>>>>
>>>> The differences between the core boards
>>>> - PCB size, layout
>>>> - CPU (RKK3568B2/RK3568J)
>>>> - Memory type (DDR4/LPDDR4/LPDDR4X) and size
>>>> - eMMC size
>>>> - DSI/EDP resistor values
>>>> Although the components vary, they maintain full compatibility.
>>>>
>>>> The X3568 board has multiple hardware revisions, and we currently support v4 (I/O board).
>>>>
>>>> Specification:
>>>> - SoC: RockChip RK3568 ARM64 (4 cores)
>>>> - eMMC: 16-128 GB
>>>> - RAM: 2-16 GB
>>>> - Power: DC 12V 2A
>>>> - Ethernet: 2x YT8521SC RGMII (10/100/1000 Mbps)
>>>> - Wireless radio: 802.11b/g/n/ac/ax dual-band
>>>> - LED:
>>>> Power: AlwaysOn
>>>> User: GPIO
>>>> - Button:
>>>> VOL+: SARADC/0 <35k µV>
>>>> VOL-: SARADC/0 <450k µV>
>>>> Power/Reset: PMIC RK809
>>>> - CAN
>>>> CAN/1: 4-pin (PH 2.0)
>>>> - PWM
>>>> PWM/4: Backlight DSI/0 DSI/1
>>>> PWM/7: IR Receiver [may not install]
>>>> - UART:
>>>> UART/2: Debug TTL - 1500000 8N1 (1.25mm)
>>>> UART/3: TTL (PH 2.0)
>>>> UART/4: TTL (PH 2.0)
>>>> UART/8: AP6275S Bluetooth
>>>> UART/9: TTL (PH 2.0)
>>>> - I2C:
>>>> I2C/0: PMIC RK809
>>>> I2C/1: Touchscreen DSI/0 DSI/1
>>>> I2C/4: Camera
>>>> I2C/5: RTC at 51 PCF8563
>>>> - I2S:
>>>> I2S/0: miniHDMI Sound
>>>> I2S/1: RK809 Audio Codec
>>>> I2S/3: AP6275S Bluetooth Sound
>>>> - SDMMC:
>>>> SDMMC/0: microSD (TF) slot
>>>> SDMMC/2: AP6275S SDIO WiFi card
>>>> - Camera: 1x CSI
>>>> - Video: miniHDMI / DSI0 (MIPI/LVDS) / DSI1 (MIPI/EDP)
>>>> - Audio: miniHDMI / MIC on-board / Speaker / SPDIF / 3.5mm Headphones / AP6275S Bluetooth
>>>> - USB:
>>>> USB 2.0 HOST x2
>>>> USB 2.0 HOST x3 (4-pin)
>>>> USB 2.0 OTG x1 (shared with USB 3.0 OTG/HOST) [slot may not install]
>>>> USB 3.0 HOST x1
>>>> USB 3.0 OTG/HOST x1
>>>> - SATA: 1x SATA 3.0 with Power/4-pin [slot may not install]
>>>> - PCIe: 1x PCIe 3.0 x2 (x4 connecter) [power/clock/slot may not install]
>>>>
>>>> Link:
>>>> - https://appletsapi.52solution.com/media/X3568V4%E5%BC%80%E5%8F%91%E6%9D%BF%E7%A1%AC%E4%BB%B6%E6%89%8B%E5%86%8C.pdf
>>>> - https://blog.gov.cooking/archives/research-ninetripod-x3568-v4-and-flash.html
>>>>
>>>> Signed-off-by: Coia Prant <coiaprant at gmail.com>
>>>> ---
>>>> .../dts/rk3568-9tripod-x3568-v4-u-boot.dtsi | 3 +
>>>> board/rockchip/evb_rk3568/MAINTAINERS | 7 ++
>>>> configs/9tripod-x3568-v4-rk3568_defconfig | 80 +++++++++++++++++++
>>>> doc/board/rockchip/rockchip.rst | 1 +
>>>> 4 files changed, 91 insertions(+)
>>>> create mode 100644 arch/arm/dts/rk3568-9tripod-x3568-v4-u-boot.dtsi
>>>> create mode 100644 configs/9tripod-x3568-v4-rk3568_defconfig
>>>>
>>>> diff --git a/arch/arm/dts/rk3568-9tripod-x3568-v4-u-boot.dtsi b/arch/arm/dts/rk3568-9tripod-x3568-v4-u-boot.dtsi
>>>> new file mode 100644
>>>> index 00000000000..e0cb8e3e7c8
>>>> --- /dev/null
>>>> +++ b/arch/arm/dts/rk3568-9tripod-x3568-v4-u-boot.dtsi
>>>> @@ -0,0 +1,3 @@
>>>> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>>>> +
>>>> +#include "rk3568-u-boot.dtsi"
>>>
>>> This file is not necessary as if rk3568-9tripod-x3568-v4-u-boot.dtsi is not present, rk3568-u-boot.dtsi will be included automatically (due to CONFIG_SYS_SOC being "rk3568").
>>>
>>>> diff --git a/board/rockchip/evb_rk3568/MAINTAINERS b/board/rockchip/evb_rk3568/MAINTAINERS
>>>> index 030cdbe6f3d..0783fb203c3 100644
>>>> --- a/board/rockchip/evb_rk3568/MAINTAINERS
>>>> +++ b/board/rockchip/evb_rk3568/MAINTAINERS
>>>> @@ -1,3 +1,10 @@
>>>> +9TRIPOD-X3568-V4
>>>> +M: Coia Prant <coiaprant at gmail.com>
>>>> +R: Jonas Karlman <jonas at kwiboo.se>
>>>
>>> I'm not sure Jonas has agreed to do this so please drop him from the Reviewer, except if he publicly asks you to.
>>>
>>>> +S: Maintained
>>>> +F: configs/9tripod-x3568-v4-rk3568_defconfig
>>>> +F: arch/arm/dts/rk3568-9tripod-x3568-v4-u-boot.dtsi
>>>> +
>>>
>>> Since you can remove the file, this line can also be removed.
>>>
>>>> BANANAPI-BPI-R2-PRO
>>>> M: Frank Wunderlich <frank-w at public-files.de>
>>>> S: Maintained
>>>> diff --git a/configs/9tripod-x3568-v4-rk3568_defconfig b/configs/9tripod-x3568-v4-rk3568_defconfig
>>>> new file mode 100644
>>>> index 00000000000..71c0087d369
>>>> --- /dev/null
>>>> +++ b/configs/9tripod-x3568-v4-rk3568_defconfig
>>>> @@ -0,0 +1,80 @@
>>>> +CONFIG_ARM=y
>>>> +CONFIG_SKIP_LOWLEVEL_INIT=y
>>>> +CONFIG_SYS_HAS_NONCACHED_MEMORY=y
>>>> +CONFIG_COUNTER_FREQUENCY=24000000
>>>> +CONFIG_ARCH_ROCKCHIP=y
>>>> +CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3568-9tripod-x3568-v4"
>>>> +CONFIG_ROCKCHIP_RK3568=y
>>>> +CONFIG_SPL_SERIAL=y
>>>> +CONFIG_DEBUG_UART_BASE=0xFE660000
>>>> +CONFIG_DEBUG_UART_CLOCK=24000000
>>>> +CONFIG_SYS_LOAD_ADDR=0xc00800
>>>> +CONFIG_PCI=y
>>>> +CONFIG_DEBUG_UART=y
>>>> +CONFIG_AHCI=y
>>>> +CONFIG_FIT=y
>>>> +CONFIG_FIT_VERBOSE=y
>>>> +CONFIG_SPL_FIT_SIGNATURE=y
>>>> +CONFIG_SPL_LOAD_FIT=y
>>>> +CONFIG_LEGACY_IMAGE_FORMAT=y
>>>> +CONFIG_DEFAULT_FDT_FILE="rockchip/rk3568-9tripod-x3568-v4.dtb"
>>>> +# CONFIG_DISPLAY_CPUINFO is not set
>>>> +CONFIG_DISPLAY_BOARDINFO_LATE=y
>>>> +CONFIG_SPL_MAX_SIZE=0x40000
>>>> +CONFIG_SPL_PAD_TO=0x7f8000
>>>> +# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>>>> +CONFIG_SPL_ATF=y
>>>> +CONFIG_CMD_GPIO=y
>>>> +CONFIG_CMD_GPT=y
>>>> +CONFIG_CMD_I2C=y
>>>> +CONFIG_CMD_MMC=y
>>>> +CONFIG_CMD_PCI=y
>>>> +CONFIG_CMD_USB=y
>>>> +CONFIG_CMD_PMIC=y
>>>> +CONFIG_CMD_REGULATOR=y
>>>> +# CONFIG_SPL_DOS_PARTITION is not set
>>>> +CONFIG_SPL_OF_CONTROL=y
>>>> +CONFIG_OF_LIVE=y
>>>> +# CONFIG_OF_UPSTREAM is not set
>>>> +CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
>>>
>>> Any reason for removing clock-names from xPL DTB?
>>>
>>> Looks ok to me otherwise.
>>>
>>> Cheers,
>>> Quentin
>>
>> Hi Quentin,
>>
>> Thanks for review, this is the first time I've submitted a patch to u-boot.
>>
>
>Welcome to the community :) !
>
>> I referred to some other rk3568 boards that had the clock name removed, so I left it as it was. There was no problem with the board starting, and I don't know why them remove clocks name.
>>
>
>Yeah I guessed, it's what most people do but I don't think it should have made it in the first place for other boards, at least not without an explanation (maybe we need to fix a bug somewhere else such that we don't need to remove it in xPL stages?).
>
>> The board is working fine.
>>
>
>If you remove clock-names from CONFIG_OF_SPL_REMOVE_PROPS?
>
>Cheers,
>Quentin
Hi Quentin,
I have tested you said, after remove it. It still works fine.
I will post PATCH v2 later.
Thanks.
Best,
Coia
More information about the U-Boot
mailing list