[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220826050942.20067-1-samuel@sholland.org>
Date: Fri, 26 Aug 2022 00:09:36 -0500
From: Samuel Holland <samuel@...lland.org>
To: Pavel Machek <pavel@....cz>, Chen-Yu Tsai <wens@...e.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
linux-leds@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-sunxi@...ts.linux.dev, linux-riscv@...ts.infradead.org,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
devicetree@...r.kernel.org, Rob Herring <robh+dt@...nel.org>,
Samuel Holland <samuel@...lland.org>
Subject: [PATCH v5 0/6] leds: Allwinner A100 LED controller support
This series adds bindings and a driver for the RGB LED controller found
in some Allwinner SoCs, starting with A100. The hardware in the R329 and
D1 SoCs appears to be identical.
Patch 3 is included because the LED controller binding requires the DMA
properties. That patch was sent previously[1], but never got merged.
Patches 5-6 depend on the D1 devicetree series[2], but the rest of this
series can be merged without them.
This driver was tested on the D1 Nezha board.
[1]: https://lore.kernel.org/linux-arm-kernel/20201110040553.1381-7-frank@allwinnertech.com/
[2]: https://lore.kernel.org/linux-riscv/20220815050815.22340-1-samuel@sholland.org/
Changes in v5:
- A100 contains the original implementation, so use that as the base
compatible string, and rename the binding to match
- Add "unevaluatedProperties: false" to the child multi-led binding
- Rename the driver R329 -> A100, since that is the actual original
implementation
Changes in v4:
- Use "default" instead of "maxItems" for timing properties
- Depend on LEDS_CLASS_MULTICOLOR
Changes in v3:
- Removed quotes from enumeration values
- Added vendor prefix to timing/format properties
- Renamed "format" property to "pixel-format" for clarity
- Dropped "vled-supply" as it is unrelated to the controller hardware
- Added vendor prefix to timing/format properties
- Renamed "format" property to "pixel-format" for clarity
- Dropped "vled-supply" as it is unrelated to the controller hardware
- Changed "writesl" to "iowrite32_rep" so the driver builds on hppa
Changes in v2:
- Fixed typo leading to duplicate t1h-ns property
- Removed "items" layer in definition of dmas/dma-names
- Replaced uint32 type reference with maxItems in timing properties
- Renamed from sunxi-ledc to sun50i-r329-ledc
- Added missing "static" to functions/globals as reported by 0day bot
Samuel Holland (5):
dt-bindings: leds: Add Allwinner A100 LED controller
leds: sun50i-a100: New driver for the A100 LED controller
arm64: dts: allwinner: a100: Add LED controller node
riscv: dts: allwinner: d1: Add LED controller node
riscv: dts: allwinner: d1: Add RGB LEDs to boards
Yangtao Li (1):
arm64: dts: allwinner: a100: Add device node for DMA controller
.../leds/allwinner,sun50i-a100-ledc.yaml | 139 +++++
.../arm64/boot/dts/allwinner/sun50i-a100.dtsi | 26 +
.../allwinner/sun20i-d1-lichee-rv-dock.dts | 12 +
.../boot/dts/allwinner/sun20i-d1-nezha.dts | 13 +
arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi | 21 +
drivers/leds/Kconfig | 9 +
drivers/leds/Makefile | 1 +
drivers/leds/leds-sun50i-a100.c | 554 ++++++++++++++++++
8 files changed, 775 insertions(+)
create mode 100644 Documentation/devicetree/bindings/leds/allwinner,sun50i-a100-ledc.yaml
create mode 100644 drivers/leds/leds-sun50i-a100.c
--
2.35.1
Powered by blists - more mailing lists