[PATCH v2 9/9] arm64: dts: renesas: ebisu: Describe PCIe/USB3.0 clock generator
Geert Uytterhoeven
geert at linux-m68k.org
Wed Jan 21 05:48:02 PST 2026
Hi Marek,
On Sun, 18 Jan 2026 at 14:51, Marek Vasut
<marek.vasut+renesas at mailbox.org> wrote:
> Describe the 9FGV0841 PCIe and USB3.0 clock generator present on Ebisu
> board. The clock generator supplies 100 MHz differential clock for both
> PCIe slot and BT/WLAN expansion port, as well as for the USB 3.0 PHY.
>
> This configuration is valid for SW49 in OFF position, which means the
> PCIe signals are routed to the PCIe slot and U11 9FGV0841 PCIe clock
> generator output 3 supplies clock to the PCIe slot.
>
> In case the SW49 is set to ON position, which means the PCIe signals
> are routed to the EX BT/WLAN expansion port, and U11 9FGV0841 PCIe
> clock generator output 4 supplies clock to the port and &pciec0_rp
> clocks should be changed to "clocks = <&pcie_usb_clk 4>;". Once the
> BT/WLAN port is tested, this can be implemented using a DTO. Until
> then, assume SW49 is set to OFF position.
>
> Signed-off-by: Marek Vasut <marek.vasut+renesas at mailbox.org>
Thanks for your patch!
> --- a/arch/arm64/boot/dts/renesas/ebisu.dtsi
> +++ b/arch/arm64/boot/dts/renesas/ebisu.dtsi
> @@ -53,6 +53,12 @@ backlight: backlight {
> power-supply = <®_12p0v>;
> };
>
> + pcie_usb_refclk: clk-x7 {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <25000000>;
> + };
> +
> cvbs-in {
> compatible = "composite-video-connector";
> label = "CVBS IN";
> @@ -439,6 +445,13 @@ adv7511_out: endpoint {
> };
> };
>
> + pcie_usb_clk: clk at 68 {
> + compatible = "renesas,9fgv0841";
> + reg = <0x68>;
> + clocks = <&pcie_usb_refclk>;
> + #clock-cells = <1>;
> + };
During boot, the rs9 prints a warning:
clk-renesas-pcie-9series 0-0068: No cache defaults, reading back from HW
which probably shouldn't be printed at the warning level?
> +
> video-receiver at 70 {
> compatible = "adi,adv7482";
> reg = <0x70>;
> @@ -871,7 +902,19 @@ &usb2_phy0 {
> status = "okay";
> };
>
> +&usb3_phy0 {
> + clocks = <&pcie_usb_clk 6>;
> + status = "okay";
> +};
This does not work, probing fails with:
usb_phy_generic usb-phy: dummy supplies not allowed for exclusive
requests (id=vbus)
Adding a fixed regulator that serves as vbus-supply like in commit
fec2d8fcdedaeeb0 ("arm64: dts: freescale: imx93-phyboard-nash: Add USB
vbus regulators") fixes that issue (and my USB3.0 FLASH driver is
detected, yeah!), but a more accurate description would be better.
> +
> +&usb3s0_clk {
> + clock-frequency = <100000000>;
> + status = "disabled";
> +};
> +
> &usb3_peri0 {
> + phys = <&usb3_phy0>;
> + phy-names = "usb";
> companion = <&xhci0>;
> status = "okay";
> };
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
More information about the linux-arm-kernel
mailing list