ar71xx: fix LED config for DIR-869 A1
authorFlorian Beier <beier.florian@gmail.com>
Wed, 25 Oct 2017 18:12:24 +0000 (20:12 +0200)
committerMathias Kresin <dev@kresin.me>
Fri, 3 Nov 2017 19:04:52 +0000 (20:04 +0100)
commitc4c72a9a42e07bed8f9e9eb214c0debfb5d7ab90
tree89ecff6269bbe08f34eb78b902d6f851ee629689
parentfdc7cc99071de6bd1d6a240d4cd306c57920ccac
ar71xx: fix LED config for DIR-869 A1

This fixes the LED configuration for the D-Link DIR-869 A1. In order to
support the device I probed around using an initramfs image for the
UniFi AC. Pulling GPIO 15 to low enabled the LEDs while high disabled them.
GPIO 16 set to low meant that the color was white while pulling it to high
made the color change to orange. The past code was written based upon these
findings.
However, running a flashed image I now discovered that GPIO 15 controls the
orange LEDs while GPIO 16 controls the white ones and that both are active
when low. This means that the GPIOs were inverted and one active_low was set
wrong which this patch fixes.

Behavior of the LED front after this patch is applied:

cat /sys/devices/platform/leds-gpio/leds/d-link:white:status/brightness
0   -> white LEDs are OFF
255 -> white LEDs are ON

cat /sys/devices/platform/leds-gpio/leds/d-link:orange:status/brightness
0   -> orange LEDs are OFF
255 -> orange LEDs are ON

If the brightness of both is set to 255 the LED front will be white.
If the brightness of both is set to 0 the LED front will be off.

Signed-off-by: Florian Beier <beier.florian@gmail.com>
target/linux/ar71xx/files/arch/mips/ath79/mach-dir-869-a1.c