Re: [PATCH v3 2/4] arm64: dts: allwinner: a523: add IR receiver nodes
Chen-Yu Tsai <[email protected]> Fri, 24 Jul 2026 01:41:13 +0800
| Newsgroups | dev.linux.lists.linux-sunxi,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-media |
|---|---|
| Message-ID | <CAGb2v666_Kf8+zMukQ1CFydK61P-v-=gPg4Bqmr-QaL45i6Fyg@mail.gmail.com> |
On Thu, Jul 23, 2026 at 7:36 AM Justin Suess <[email protected]> wrote: > > The A523 has two CIR receivers, both compatible with the A31 CIR: one > in the CPUX domain, clocked from the main CCU, and one in the RTC > power domain, clocked from the R-CCU. > > Add nodes for both instances, disabled by default. Since the RX signal > of each instance can be routed to more than one pin, boards with an IR > receiver are expected to add the pinctrl properties next to where they > enable the node. Keep the PL11 pin description in the dtsi, as boards > commonly use that pin for the RTC domain instance. > > Reviewed-by: Andre Przywara <[email protected]> > Signed-off-by: Justin Suess <[email protected]> > --- > .../arm64/boot/dts/allwinner/sun55i-a523.dtsi | 28 +++++++++++++++++++ > 1 file changed, 28 insertions(+) > > diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi b/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi > index ca6a16807049..c2de662140ce 100644 > --- a/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi > +++ b/arch/arm64/boot/dts/allwinner/sun55i-a523.dtsi > @@ -327,6 +327,17 @@ ccu: clock-controller@2001000 { > #reset-cells = <1>; > }; > > + ir: ir@2005000 { > + compatible = "allwinner,sun55i-a523-ir", > + "allwinner,sun6i-a31-ir"; > + reg = <0x02005000 0x400>; > + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&ccu CLK_BUS_IR_RX>, <&ccu CLK_IR_RX>; > + clock-names = "apb", "ir"; > + resets = <&ccu RST_BUS_IR_RX>; > + status = "disabled"; > + }; > + > ledc: led-controller@2008000 { > compatible = "allwinner,sun55i-a523-ledc", > "allwinner,sun50i-a100-ledc"; > @@ -927,6 +938,23 @@ r_i2c_pins: r-i2c-pins { > allwinner,pinmux = <2>; > function = "r_i2c0"; > }; > + Please add /omit-if-no-ref/. > + r_ir_rx_pin: r-ir-rx-pin { There are two pin mux possibilities for r-ir-rx. Please name it accordingly, like "r-ir-rx-pl-pin". > + pins = "PL11"; > + allwinner,pinmux = <2>; > + function = "s_cir_rx"; > + }; > + }; > + > + r_ir: ir@7040000 { > + compatible = "allwinner,sun55i-a523-ir", > + "allwinner,sun6i-a31-ir"; > + reg = <0x07040000 0x400>; > + interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&r_ccu CLK_BUS_R_IR_RX>, <&r_ccu CLK_R_IR_RX>; > + clock-names = "apb", "ir"; > + resets = <&r_ccu RST_BUS_R_IR_RX>; > + status = "disabled"; > }; > > pck600: power-controller@7060000 { > -- > 2.54.0 >