brcm47xx: add new led and button support
[openwrt.git] / target / linux / brcm47xx / patches-3.10 / 129-MIPS-BCM47XX-add-Belkin-F7Dxxxx-board-detection.patch
1 From 44927df87162ae9beb6e7b934b0e75818b88e350 Mon Sep 17 00:00:00 2001
2 From: Hauke Mehrtens <hauke@hauke-m.de>
3 Date: Thu, 2 Jan 2014 19:10:05 +0100
4 Subject: [PATCH] MIPS: BCM47XX: add Belkin F7Dxxxx board detection
5
6 From: Cody P Schafer <devel@codyps.com>
7
8 Add a few Belkin F7Dxxxx entries, with F7D4401 sourced from online
9 documentation and the "F7D7302" being observed. F7D3301, F7D3302, and
10 F7D4302 are reasonable guesses which are unlikely to cause
11 mis-detection.
12
13 Signed-off-by: Cody P Schafer <devel@codyps.com>
14 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
15 ---
16  arch/mips/bcm47xx/board.c                          |    4 ++++
17  arch/mips/bcm47xx/buttons.c                        |    4 ++++
18  arch/mips/bcm47xx/leds.c                           |    4 ++++
19  arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h |    4 ++++
20  4 files changed, 16 insertions(+)
21
22 --- a/arch/mips/bcm47xx/board.c
23 +++ b/arch/mips/bcm47xx/board.c
24 @@ -71,7 +71,11 @@ struct bcm47xx_board_type_list1 bcm47xx_
25         {{BCM47XX_BOARD_ASUS_WL500W, "Asus WL500W"}, "WL500gW-"},
26         {{BCM47XX_BOARD_ASUS_WL520GC, "Asus WL520GC"}, "WL520GC-"},
27         {{BCM47XX_BOARD_ASUS_WL520GU, "Asus WL520GU"}, "WL520GU-"},
28 +       {{BCM47XX_BOARD_BELKIN_F7D3301, "Belkin F7D3301"}, "F7D3301"},
29 +       {{BCM47XX_BOARD_BELKIN_F7D3302, "Belkin F7D3302"}, "F7D3302"},
30         {{BCM47XX_BOARD_BELKIN_F7D4301, "Belkin F7D4301"}, "F7D4301"},
31 +       {{BCM47XX_BOARD_BELKIN_F7D4302, "Belkin F7D4302"}, "F7D4302"},
32 +       {{BCM47XX_BOARD_BELKIN_F7D4401, "Belkin F7D4401"}, "F7D4401"},
33         { {0}, NULL},
34  };
35  
36 --- a/arch/mips/bcm47xx/buttons.c
37 +++ b/arch/mips/bcm47xx/buttons.c
38 @@ -420,7 +420,11 @@ int __init bcm47xx_buttons_register(void
39                 err = bcm47xx_copy_bdata(bcm47xx_buttons_asus_wlhdd);
40                 break;
41  
42 +       case BCM47XX_BOARD_BELKIN_F7D3301:
43 +       case BCM47XX_BOARD_BELKIN_F7D3302:
44         case BCM47XX_BOARD_BELKIN_F7D4301:
45 +       case BCM47XX_BOARD_BELKIN_F7D4302:
46 +       case BCM47XX_BOARD_BELKIN_F7D4401:
47                 err = bcm47xx_copy_bdata(bcm47xx_buttons_belkin_f7d4301);
48                 break;
49  
50 --- a/arch/mips/bcm47xx/leds.c
51 +++ b/arch/mips/bcm47xx/leds.c
52 @@ -457,7 +457,11 @@ void __init bcm47xx_leds_register(void)
53                 bcm47xx_set_pdata(bcm47xx_leds_asus_wlhdd);
54                 break;
55  
56 +       case BCM47XX_BOARD_BELKIN_F7D3301:
57 +       case BCM47XX_BOARD_BELKIN_F7D3302:
58         case BCM47XX_BOARD_BELKIN_F7D4301:
59 +       case BCM47XX_BOARD_BELKIN_F7D4302:
60 +       case BCM47XX_BOARD_BELKIN_F7D4401:
61                 bcm47xx_set_pdata(bcm47xx_leds_belkin_f7d4301);
62                 break;
63  
64 --- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
65 +++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
66 @@ -27,7 +27,11 @@ enum bcm47xx_board {
67         BCM47XX_BOARD_ASUS_WL700GE,
68         BCM47XX_BOARD_ASUS_WLHDD,
69  
70 +       BCM47XX_BOARD_BELKIN_F7D3301,
71 +       BCM47XX_BOARD_BELKIN_F7D3302,
72         BCM47XX_BOARD_BELKIN_F7D4301,
73 +       BCM47XX_BOARD_BELKIN_F7D4302,
74 +       BCM47XX_BOARD_BELKIN_F7D4401,
75  
76         BCM47XX_BOARD_BUFFALO_WBR2_G54,
77         BCM47XX_BOARD_BUFFALO_WHR2_A54G54,