Message ID | 20230113134639.338908-1-yoshihiro.shimoda.uh@renesas.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | afdc9a248ca34a61725eb29888c01e2649a96c17 |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | [v2] arm64: dts: renesas: r8a779f0: spider-cpu: Enable UFS device | expand |
On Fri, Jan 13, 2023 at 2:46 PM Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> wrote: > Enable UFS device for R-Car S4-8 Spider CPU board. > > Note that the conditions of RC21012 on the Spider are: > - OUT11 (for UFS30_REFCLK_V) is disabled as default. > - OUT11 is controlled by GPIO0 pin. > - The GPIO0 pin is inverted sense (low active) and pull-up enabled. > > To output the clock, pin 4 of TCA9554 on the Spider board needs to > output low level so that using "gpio-gate-clock" for it. > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> > Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> > --- > Changes from v1: > - Add /delete-property/ clock-frequency; in the ufs30_clk. > - Add Tested-by. (Geert-san, thanks!) Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> i.e. will queue in renesas-devel for v6.3. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@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
diff --git a/arch/arm64/boot/dts/renesas/r8a779f0-spider-cpu.dtsi b/arch/arm64/boot/dts/renesas/r8a779f0-spider-cpu.dtsi index 25b34d66061a..adb07dfd63f6 100644 --- a/arch/arm64/boot/dts/renesas/r8a779f0-spider-cpu.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a779f0-spider-cpu.dtsi @@ -5,6 +5,7 @@ * Copyright (C) 2021 Renesas Electronics Corp. */ +#include <dt-bindings/gpio/gpio.h> #include "r8a779f0.dtsi" / { @@ -32,6 +33,12 @@ memory@480000000 { reg = <0x4 0x80000000 0x0 0x80000000>; }; + rc21012_ufs: clk-rc21012-ufs { + compatible = "fixed-clock"; + clock-frequency = <38400000>; + #clock-cells = <0>; + }; + reg_1p8v: regulator-1p8v { compatible = "regulator-fixed"; regulator-name = "fixed-1.8V"; @@ -67,6 +74,21 @@ &hscif0 { status = "okay"; }; +&i2c0 { + pinctrl-0 = <&i2c0_pins>; + pinctrl-names = "default"; + + status = "okay"; + clock-frequency = <400000>; + + gpio_exp_20: gpio@20 { + compatible = "ti,tca9554"; + reg = <0x20>; + gpio-controller; + #gpio-cells = <2>; + }; +}; + &i2c4 { pinctrl-0 = <&i2c4_pins>; pinctrl-names = "default"; @@ -112,6 +134,11 @@ hscif0_pins: hscif0 { function = "hscif0"; }; + i2c0_pins: i2c0 { + groups = "i2c0"; + function = "i2c0"; + }; + i2c4_pins: i2c4 { groups = "i2c4"; function = "i2c4"; @@ -150,3 +177,14 @@ &scif0 { &scif_clk { clock-frequency = <24000000>; }; + +&ufs { + status = "okay"; +}; + +&ufs30_clk { + compatible = "gpio-gate-clock"; + clocks = <&rc21012_ufs>; + enable-gpios = <&gpio_exp_20 4 GPIO_ACTIVE_LOW>; + /delete-property/ clock-frequency; +};