[PATCH v3 2/4] arm64: dts: allwinner: a523: add IR receiver nodes
Chen-Yu Tsai
wens at kernel.org
Thu Jul 23 10:41:13 PDT 2026
On Thu, Jul 23, 2026 at 7:36 AM Justin Suess <utilityemal77 at gmail.com> 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 <andre.przywara at arm.com>
> Signed-off-by: Justin Suess <utilityemal77 at gmail.com>
> ---
> .../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 at 2001000 {
> #reset-cells = <1>;
> };
>
> + ir: ir at 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 at 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 at 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 at 7060000 {
> --
> 2.54.0
>
More information about the linux-arm-kernel
mailing list