Message ID | 20190502140634.4529-1-marek.vasut@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Simon Horman |
Headers | show |
Series | ARM: dts: r8a779x: Configure PMIC IRQ pinmux | expand |
Hi Marek, On Thu, May 2, 2019 at 4:06 PM <marek.vasut@gmail.com> wrote: > From: Marek Vasut <marek.vasut+renesas@gmail.com> > > The PMIC IRQ line pin multiplexing configuration is missing from the DTs. > Since the line is configured correctly by default, the system works fine. > However, add the IRQ line pin multiplexing configuration for completeness. > > Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Thanks for your patch! > --- a/arch/arm/boot/dts/r8a7790-lager.dts > +++ b/arch/arm/boot/dts/r8a7790-lager.dts > @@ -423,6 +423,8 @@ > */ > i2cpwr: i2c-13 { > compatible = "i2c-demux-pinctrl"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pmic_irq_pins>; > i2c-parent = <&iic3>, <&i2c3>; > i2c-bus-name = "i2c-pwr"; > #address-cells = <1>; > @@ -615,6 +617,11 @@ > function = "iic3"; > }; > > + pmic_irq_pins: pmicirq { > + groups = "intc_irq2"; > + function = "intc"; > + }; Please insert according to alphabetical sort order. Oh, we don't have the R-Car Gen2 entries sorted yet. Nevermind... > --- a/arch/arm/boot/dts/r8a7792-blanche.dts > +++ b/arch/arm/boot/dts/r8a7792-blanche.dts > @@ -234,6 +234,11 @@ > groups = "du1_rgb666", "du1_sync", "du1_disp"; > function = "du1"; > }; > + > + pmic_irq_pins: pmicirq { > + groups = "intc_irq2"; > + function = "intc"; > + }; > }; > > &rwdt { > @@ -309,6 +314,8 @@ > }; > > &iic3 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pmic_irq_pins>; Given Blanche has a single device connected to irq2, I think it makes sense to move the pinctrl properties to the pmic node below. With that fixed: Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Gr{oetje,eeting}s, Geert
On 5/3/19 2:36 PM, Geert Uytterhoeven wrote: Hi, [...] >> &rwdt { >> @@ -309,6 +314,8 @@ >> }; >> >> &iic3 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pmic_irq_pins>; > > Given Blanche has a single device connected to irq2, I think it makes > sense to move the pinctrl properties to the pmic node below. It makes blanche somehow inconsistent with the other boards, but if you insist ... ? > With that fixed: > Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> > > Gr{oetje,eeting}s, > > Geert >
Hi Marek, On Fri, May 3, 2019 at 5:18 PM Marek Vasut <marek.vasut@gmail.com> wrote: > On 5/3/19 2:36 PM, Geert Uytterhoeven wrote: > >> &rwdt { > >> @@ -309,6 +314,8 @@ > >> }; > >> > >> &iic3 { > >> + pinctrl-names = "default"; > >> + pinctrl-0 = <&pmic_irq_pins>; > > > > Given Blanche has a single device connected to irq2, I think it makes > > sense to move the pinctrl properties to the pmic node below. > > It makes blanche somehow inconsistent with the other boards, but if you > insist ... ? Typically the pinctrl properties are part of the device node that uses them. For the other boards, that's not possible, as they are shared by all PMIC nodes. Hence the other boards are the exceptions, actually ;-) Note that for multi-PMIC boards, adding the pinctrl properties to a single PMIC node won't work, as that would break: 1. The case where the driver for that PMIC is not compiled in, 2. The R-Car Gen2 regulator quirk. Gr{oetje,eeting}s, Geert
On 5/3/19 8:13 PM, Geert Uytterhoeven wrote: > Hi Marek, Hi, > On Fri, May 3, 2019 at 5:18 PM Marek Vasut <marek.vasut@gmail.com> wrote: >> On 5/3/19 2:36 PM, Geert Uytterhoeven wrote: >>>> &rwdt { >>>> @@ -309,6 +314,8 @@ >>>> }; >>>> >>>> &iic3 { >>>> + pinctrl-names = "default"; >>>> + pinctrl-0 = <&pmic_irq_pins>; >>> >>> Given Blanche has a single device connected to irq2, I think it makes >>> sense to move the pinctrl properties to the pmic node below. >> >> It makes blanche somehow inconsistent with the other boards, but if you >> insist ... ? > > Typically the pinctrl properties are part of the device node that uses them. > For the other boards, that's not possible, as they are shared by all PMIC > nodes. Hence the other boards are the exceptions, actually ;-) > > Note that for multi-PMIC boards, adding the pinctrl properties to a single > PMIC node won't work, as that would break: > 1. The case where the driver for that PMIC is not compiled in, > 2. The R-Car Gen2 regulator quirk. Well it wouldn't work because it's shared by two PMICs and thus two driver instances in the first place.
diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts index 7b9508e83d46..d637b9727808 100644 --- a/arch/arm/boot/dts/r8a7790-lager.dts +++ b/arch/arm/boot/dts/r8a7790-lager.dts @@ -423,6 +423,8 @@ */ i2cpwr: i2c-13 { compatible = "i2c-demux-pinctrl"; + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins>; i2c-parent = <&iic3>, <&i2c3>; i2c-bus-name = "i2c-pwr"; #address-cells = <1>; @@ -615,6 +617,11 @@ function = "iic3"; }; + pmic_irq_pins: pmicirq { + groups = "intc_irq2"; + function = "intc"; + }; + hsusb_pins: hsusb { groups = "usb0_ovc_vbus"; function = "usb0"; diff --git a/arch/arm/boot/dts/r8a7790-stout.dts b/arch/arm/boot/dts/r8a7790-stout.dts index 7a7d3b84d1a6..ad68e6034b43 100644 --- a/arch/arm/boot/dts/r8a7790-stout.dts +++ b/arch/arm/boot/dts/r8a7790-stout.dts @@ -179,6 +179,11 @@ function = "iic3"; }; + pmic_irq_pins: pmicirq { + groups = "intc_irq2"; + function = "intc"; + }; + usb0_pins: usb0 { groups = "usb0"; function = "usb0"; @@ -317,7 +322,7 @@ &iic3 { pinctrl-names = "default"; - pinctrl-0 = <&iic3_pins>; + pinctrl-0 = <&iic3_pins &pmic_irq_pins>; status = "okay"; pmic@58 { diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts index e6580aa0cea3..a116bfc11f0b 100644 --- a/arch/arm/boot/dts/r8a7791-koelsch.dts +++ b/arch/arm/boot/dts/r8a7791-koelsch.dts @@ -540,6 +540,11 @@ function = "intc"; }; + pmic_irq_pins: pmicirq { + groups = "intc_irq2"; + function = "intc"; + }; + sdhi0_pins: sd0 { groups = "sdhi0_data4", "sdhi0_ctrl"; function = "sdhi0"; @@ -776,6 +781,8 @@ }; &i2c6 { + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins>; status = "okay"; clock-frequency = <100000>; diff --git a/arch/arm/boot/dts/r8a7791-porter.dts b/arch/arm/boot/dts/r8a7791-porter.dts index fefdf8238bbe..e08d257f5d0c 100644 --- a/arch/arm/boot/dts/r8a7791-porter.dts +++ b/arch/arm/boot/dts/r8a7791-porter.dts @@ -228,6 +228,11 @@ function = "intc"; }; + pmic_irq_pins: pmicirq { + groups = "intc_irq2"; + function = "intc"; + }; + sdhi0_pins: sd0 { groups = "sdhi0_data4", "sdhi0_ctrl"; function = "sdhi0"; @@ -373,6 +378,8 @@ }; &i2c6 { + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins>; status = "okay"; clock-frequency = <100000>; diff --git a/arch/arm/boot/dts/r8a7792-blanche.dts b/arch/arm/boot/dts/r8a7792-blanche.dts index b6fa80c3b07e..7b0d17ee87fb 100644 --- a/arch/arm/boot/dts/r8a7792-blanche.dts +++ b/arch/arm/boot/dts/r8a7792-blanche.dts @@ -234,6 +234,11 @@ groups = "du1_rgb666", "du1_sync", "du1_disp"; function = "du1"; }; + + pmic_irq_pins: pmicirq { + groups = "intc_irq2"; + function = "intc"; + }; }; &rwdt { @@ -309,6 +314,8 @@ }; &iic3 { + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins>; status = "okay"; pmic@58 { diff --git a/arch/arm/boot/dts/r8a7793-gose.dts b/arch/arm/boot/dts/r8a7793-gose.dts index f51601af89a2..9984ebf06695 100644 --- a/arch/arm/boot/dts/r8a7793-gose.dts +++ b/arch/arm/boot/dts/r8a7793-gose.dts @@ -514,6 +514,11 @@ function = "intc"; }; + pmic_irq_pins: pmicirq { + groups = "intc_irq2"; + function = "intc"; + }; + sdhi0_pins: sd0 { groups = "sdhi0_data4", "sdhi0_ctrl"; function = "sdhi0"; @@ -711,6 +716,8 @@ }; &i2c6 { + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins>; status = "okay"; clock-frequency = <100000>;