MIPS: BCM47XX: Add LEDs and buttons for Asus RTN-10U
authorFlorian Fainelli <f.fainelli@gmail.com>
Fri, 7 Jan 2022 03:51:39 +0000 (19:51 -0800)
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>
Sun, 9 Jan 2022 14:41:50 +0000 (15:41 +0100)
Add the definitions for the buttons and LEDs used on the Asus RTN-10U
router.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
arch/mips/bcm47xx/buttons.c
arch/mips/bcm47xx/leds.c

index 25b4cc3aecd224d6396158e58c0097d5b8e348c2..baf0a7d58d270ed2fd5820f6660d9eaf9968dbaf 100644 (file)
 
 /* Asus */
 
+static const struct gpio_keys_button
+bcm47xx_buttons_asus_rtn10u[] __initconst = {
+       BCM47XX_GPIO_KEY(20, KEY_WPS_BUTTON),
+       BCM47XX_GPIO_KEY(21, KEY_RESTART),
+};
+
 static const struct gpio_keys_button
 bcm47xx_buttons_asus_rtn12[] __initconst = {
        BCM47XX_GPIO_KEY(0, KEY_WPS_BUTTON),
@@ -490,6 +496,9 @@ int __init bcm47xx_buttons_register(void)
        int err;
 
        switch (board) {
+       case BCM47XX_BOARD_ASUS_RTN10U:
+               err = bcm47xx_copy_bdata(bcm47xx_buttons_asus_rtn10u);
+               break;
        case BCM47XX_BOARD_ASUS_RTN12:
                err = bcm47xx_copy_bdata(bcm47xx_buttons_asus_rtn12);
                break;
index 649bb03c9bb727c971c4b1d98c726b54aa8d779f..4648a302a3c0621873b2a98d5699b61a37b79b17 100644 (file)
 
 /* Asus */
 
+static const struct gpio_led
+bcm47xx_leds_asus_rtn10u[] __initconst = {
+       BCM47XX_GPIO_LED(5, "green", "wlan", 0, LEDS_GPIO_DEFSTATE_OFF),
+       BCM47XX_GPIO_LED(6, "green", "power", 1, LEDS_GPIO_DEFSTATE_ON),
+       BCM47XX_GPIO_LED(7, "green", "wps", 0, LEDS_GPIO_DEFSTATE_OFF),
+       BCM47XX_GPIO_LED(8, "green", "usb", 0, LEDS_GPIO_DEFSTATE_OFF),
+};
+
 static const struct gpio_led
 bcm47xx_leds_asus_rtn12[] __initconst = {
        BCM47XX_GPIO_LED(2, "unk", "power", 1, LEDS_GPIO_DEFSTATE_ON),
@@ -563,6 +571,9 @@ void __init bcm47xx_leds_register(void)
        enum bcm47xx_board board = bcm47xx_board_get();
 
        switch (board) {
+       case BCM47XX_BOARD_ASUS_RTN10U:
+               bcm47xx_set_pdata(bcm47xx_leds_asus_rtn10u);
+               break;
        case BCM47XX_BOARD_ASUS_RTN12:
                bcm47xx_set_pdata(bcm47xx_leds_asus_rtn12);
                break;