030-v5.17-0002-MIPS-BCM47XX-Add-board-entry-for-Linksys-WRT320N-v1.patch 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. From 3829e4f10a232964cc728c0479c8097922e5e073 Mon Sep 17 00:00:00 2001
  2. From: Florian Fainelli <[email protected]>
  3. Date: Thu, 6 Jan 2022 19:51:38 -0800
  4. Subject: [PATCH] MIPS: BCM47XX: Add board entry for Linksys WRT320N v1
  5. This router is based on a Broadcom BCM4717A1 chipset and supports
  6. 802.11n Wi-Fi. Add a board entry for that router and register LEDs and
  7. buttons accordingly.
  8. Signed-off-by: Florian Fainelli <[email protected]>
  9. Signed-off-by: Thomas Bogendoerfer <[email protected]>
  10. ---
  11. arch/mips/bcm47xx/board.c | 1 +
  12. arch/mips/bcm47xx/buttons.c | 9 +++++++++
  13. arch/mips/bcm47xx/leds.c | 10 ++++++++++
  14. arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | 1 +
  15. 4 files changed, 21 insertions(+)
  16. --- a/arch/mips/bcm47xx/board.c
  17. +++ b/arch/mips/bcm47xx/board.c
  18. @@ -141,6 +141,7 @@ struct bcm47xx_board_type_list2 bcm47xx_
  19. {{BCM47XX_BOARD_LINKSYS_WRT300NV11, "Linksys WRT300N V1.1"}, "WRT300N", "1.1"},
  20. {{BCM47XX_BOARD_LINKSYS_WRT310NV1, "Linksys WRT310N V1"}, "WRT310N", "1.0"},
  21. {{BCM47XX_BOARD_LINKSYS_WRT310NV2, "Linksys WRT310N V2"}, "WRT310N", "2.0"},
  22. + {{BCM47XX_BOARD_LINKSYS_WRT320N_V1, "Linksys WRT320N V1"}, "WRT320N", "1.0"},
  23. {{BCM47XX_BOARD_LINKSYS_WRT54G3GV2, "Linksys WRT54G3GV2-VF"}, "WRT54G3GV2-VF", "1.0"},
  24. {{BCM47XX_BOARD_LINKSYS_WRT610NV1, "Linksys WRT610N V1"}, "WRT610N", "1.0"},
  25. {{BCM47XX_BOARD_LINKSYS_WRT610NV2, "Linksys WRT610N V2"}, "WRT610N", "2.0"},
  26. --- a/arch/mips/bcm47xx/buttons.c
  27. +++ b/arch/mips/bcm47xx/buttons.c
  28. @@ -283,6 +283,12 @@ bcm47xx_buttons_linksys_wrt310n_v2[] __i
  29. };
  30. static const struct gpio_keys_button
  31. +bcm47xx_buttons_linksys_wrt320n_v1[] __initconst = {
  32. + BCM47XX_GPIO_KEY(5, KEY_WPS_BUTTON),
  33. + BCM47XX_GPIO_KEY(8, KEY_RESTART),
  34. +};
  35. +
  36. +static const struct gpio_keys_button
  37. bcm47xx_buttons_linksys_wrt54g3gv2[] __initconst = {
  38. BCM47XX_GPIO_KEY(5, KEY_WIMAX),
  39. BCM47XX_GPIO_KEY(6, KEY_RESTART),
  40. @@ -617,6 +623,9 @@ int __init bcm47xx_buttons_register(void
  41. case BCM47XX_BOARD_LINKSYS_WRT310NV2:
  42. err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt310n_v2);
  43. break;
  44. + case BCM47XX_BOARD_LINKSYS_WRT320N_V1:
  45. + err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt320n_v1);
  46. + break;
  47. case BCM47XX_BOARD_LINKSYS_WRT54G3GV2:
  48. err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt54g3gv2);
  49. break;
  50. --- a/arch/mips/bcm47xx/leds.c
  51. +++ b/arch/mips/bcm47xx/leds.c
  52. @@ -314,6 +314,13 @@ bcm47xx_leds_linksys_wrt310nv1[] __initc
  53. };
  54. static const struct gpio_led
  55. +bcm47xx_leds_linksys_wrt320n_v1[] __initconst = {
  56. + BCM47XX_GPIO_LED(1, "blue", "wlan", 1, LEDS_GPIO_DEFSTATE_OFF),
  57. + BCM47XX_GPIO_LED(2, "blue", "power", 0, LEDS_GPIO_DEFSTATE_ON),
  58. + BCM47XX_GPIO_LED(4, "amber", "wps", 1, LEDS_GPIO_DEFSTATE_OFF),
  59. +};
  60. +
  61. +static const struct gpio_led
  62. bcm47xx_leds_linksys_wrt54g_generic[] __initconst = {
  63. BCM47XX_GPIO_LED(0, "unk", "dmz", 1, LEDS_GPIO_DEFSTATE_OFF),
  64. BCM47XX_GPIO_LED(1, "unk", "power", 0, LEDS_GPIO_DEFSTATE_ON),
  65. @@ -689,6 +696,9 @@ void __init bcm47xx_leds_register(void)
  66. case BCM47XX_BOARD_LINKSYS_WRT310NV1:
  67. bcm47xx_set_pdata(bcm47xx_leds_linksys_wrt310nv1);
  68. break;
  69. + case BCM47XX_BOARD_LINKSYS_WRT320N_V1:
  70. + bcm47xx_set_pdata(bcm47xx_leds_linksys_wrt320n_v1);
  71. + break;
  72. case BCM47XX_BOARD_LINKSYS_WRT54G3GV2:
  73. bcm47xx_set_pdata(bcm47xx_leds_linksys_wrt54g3gv2);
  74. break;
  75. --- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
  76. +++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
  77. @@ -72,6 +72,7 @@ enum bcm47xx_board {
  78. BCM47XX_BOARD_LINKSYS_WRT300NV11,
  79. BCM47XX_BOARD_LINKSYS_WRT310NV1,
  80. BCM47XX_BOARD_LINKSYS_WRT310NV2,
  81. + BCM47XX_BOARD_LINKSYS_WRT320N_V1,
  82. BCM47XX_BOARD_LINKSYS_WRT54G3GV2,
  83. BCM47XX_BOARD_LINKSYS_WRT54G_TYPE_0101,
  84. BCM47XX_BOARD_LINKSYS_WRT54G_TYPE_0467,