| # Copyright (c) 2019, Linaro Limited |
| # Copyright (c) 2019, Nordic Semiconductor ASA |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| description: | |
| Worldsemi WS2812 (and compatible) LED controller |
| |
| Driver bindings for daisy chains of WS2812 (and compatible devices |
| like SK6812) LED controllers. |
| |
| The PWM protocol is described here: |
| https://wp.josh.com/2014/05/13/ws2812-neopixels-are-not-so-finicky-once-you-get-to-know-them/ |
| |
| A 0 bit's pulse width is between 200 and 500 ns. A 1 bit's is |
| at least 550 ns, with 700 ns or so typical. Pixel order is GRB. |
| |
| You can connect the device to either a GPIO on your SoC, or a SPI |
| MOSI line. Use the worldsemi,ws2812-spi.yaml or |
| worldsemi,ws2812-gpio.yaml bindings instead of this file after |
| making your choice. |
| |
| properties: |
| chain-length: |
| type: int |
| required: true |
| description: | |
| The number of devices in the daisy-chain. |
| |
| has-white-channel: |
| type: boolean |
| description: | |
| If true, the device has a white channel. This is not supported |
| by the led_strip.h API, so the white data on the wire will be |
| zero if set. |