Re: [PATCH] usb: onboard_dev: add the Rockchip rk1808
From: Rudi Heitbaum <hidden>
Date: 2026-08-28 10:56:34
Also in:
linux-rockchip, linux-usb, lkml
On Thu, Aug 27, 2026 at 03:25:23PM +0200, Heiko Stuebner wrote:
Hi Rudi, Am Montag, 24. August 2026, 04:52:02 Mitteleuropäische Sommerzeit schrieb Rudi Heitbaum:quoted
The rk1808 is the npu die in an rk3399pro package. It is wired to one of the usb3 controllers rather than to an external port, and it needs its reference clock running before it will boot, which is exactly what this driver exists to do for onboard devices. It takes no supply from the driver: the rails are sequenced elsewhere. Only the clock matters here, and that is already optional and handled generically.the "elsewhere" might need a bit more explanation to verify it's the right implementation. Even if the regulators are always-on or something, we still want the supplies defined - for future uses.
Hi Heiko, As follow up on the bringup of the Rock-Pi-N10, the proposed change to the dtsi for the rk3399pro-vmarc-som is here, but needs the provision of the usb first. https://github.com/heitbaum/linux/commit/6b114b6fff4022c330003d7f70ce09915ffd774f Thanks Rudi
Thanks Heikoquoted
Two ids, because the die changes identity as it boots: 180a while it is in maskrom and then in the rockusb loader, 1808 once it is running. Signed-off-by: Rudi Heitbaum <redacted> --- drivers/usb/misc/onboard_usb_dev.h | 8 ++++++++ 1 file changed, 8 insertions(+)diff --git a/drivers/usb/misc/onboard_usb_dev.h b/drivers/usb/misc/onboard_usb_dev.h index 3523f8f8a149..e07f509ac751 100644 --- a/drivers/usb/misc/onboard_usb_dev.h +++ b/drivers/usb/misc/onboard_usb_dev.h@@ -134,6 +134,12 @@ static const struct onboard_dev_pdata xmos_xvf3500_data = { .is_hub = false, }; +static const struct onboard_dev_pdata rockchip_rk1808_data = { + .reset_us = 0, + .num_supplies = 0, + .is_hub = false, +}; + static const struct of_device_id onboard_dev_match[] = { { .compatible = "usb-a-connector", .data = &usb_a_conn_data, }, { .compatible = "usb424,2412", .data = µchip_usb424_data, },@@ -167,6 +173,8 @@ static const struct of_device_id onboard_dev_match[] = { { .compatible = "usb2109,817", .data = &vialab_vl817_data, }, { .compatible = "usb2109,2817", .data = &vialab_vl817_data, }, { .compatible = "usb20b1,0013", .data = &xmos_xvf3500_data, }, + { .compatible = "usb2207,1808", .data = &rockchip_rk1808_data, }, + { .compatible = "usb2207,180a", .data = &rockchip_rk1808_data, }, { .compatible = "usb3431,6241", .data = &corechips_sl6341_data, }, { .compatible = "usb3431,6341", .data = &corechips_sl6341_data, }, { .compatible = "usb5986,1198", .data = &bison_intcamera_data, },