brcm47xx: remove support for kernel version 3.3
[openwrt.git] / target / linux / brcm47xx / patches-3.6 / 193-MIPS-BCM47xx-read-out-full-board-data.patch
1 --- a/arch/mips/bcm47xx/sprom.c
2 +++ b/arch/mips/bcm47xx/sprom.c
3 @@ -164,10 +164,6 @@ static void nvram_read_alpha2(const char
4  static void bcm47xx_fill_sprom_r1234589(struct ssb_sprom *sprom,
5                                         const char *prefix)
6  {
7 -       nvram_read_u16(prefix, NULL, "boardrev", &sprom->board_rev, 0);
8 -       if (!sprom->board_rev)
9 -               nvram_read_u16(NULL, NULL, "boardrev", &sprom->board_rev, 0);
10 -       nvram_read_u16(prefix, NULL, "boardnum", &sprom->board_num, 0);
11         nvram_read_u8(prefix, NULL, "ledbh0", &sprom->gpio0, 0xff);
12         nvram_read_u8(prefix, NULL, "ledbh1", &sprom->gpio1, 0xff);
13         nvram_read_u8(prefix, NULL, "ledbh2", &sprom->gpio2, 0xff);
14 @@ -214,13 +210,6 @@ static void bcm47xx_fill_sprom_r2389(str
15         nvram_read_u8(prefix, NULL, "pa1himaxpwr", &sprom->maxpwr_ah, 0);
16  }
17  
18 -static void bcm47xx_fill_sprom_r2(struct ssb_sprom *sprom, const char *prefix)
19 -{
20 -       nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
21 -                        &sprom->boardflags_hi);
22 -       nvram_read_u16(prefix, NULL, "boardtype", &sprom->board_type, 0);
23 -}
24 -
25  static void bcm47xx_fill_sprom_r389(struct ssb_sprom *sprom, const char *prefix)
26  {
27         nvram_read_u8(prefix, NULL, "bxa2g", &sprom->bxa2g, 0);
28 @@ -241,9 +230,6 @@ static void bcm47xx_fill_sprom_r389(stru
29  
30  static void bcm47xx_fill_sprom_r3(struct ssb_sprom *sprom, const char *prefix)
31  {
32 -       nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
33 -                        &sprom->boardflags_hi);
34 -       nvram_read_u16(prefix, NULL, "boardtype", &sprom->board_type, 0);
35         nvram_read_u8(prefix, NULL, "regrev", &sprom->regrev, 0);
36         nvram_read_leddc(prefix, "leddc", &sprom->leddc_on_time,
37                          &sprom->leddc_off_time);
38 @@ -252,11 +238,6 @@ static void bcm47xx_fill_sprom_r3(struct
39  static void bcm47xx_fill_sprom_r4589(struct ssb_sprom *sprom,
40                                      const char *prefix)
41  {
42 -       nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
43 -                        &sprom->boardflags_hi);
44 -       nvram_read_u32_2(prefix, "boardflags2", &sprom->boardflags2_lo,
45 -                        &sprom->boardflags2_hi);
46 -       nvram_read_u16(prefix, NULL, "boardtype", &sprom->board_type, 0);
47         nvram_read_u8(prefix, NULL, "regrev", &sprom->regrev, 0);
48         nvram_read_s8(prefix, NULL, "ag2", &sprom->antenna_gain.a2, 0);
49         nvram_read_s8(prefix, NULL, "ag3", &sprom->antenna_gain.a3, 0);
50 @@ -555,9 +536,23 @@ void bcm47xx_fill_sprom_ethernet(struct
51         nvram_read_macaddr(prefix, "il0macaddr", &sprom->il0mac);
52  }
53  
54 +static void bcm47xx_fill_board_data(struct ssb_sprom *sprom, const char *prefix)
55 +{
56 +       nvram_read_u16(prefix, NULL, "boardrev", &sprom->board_rev, 0);
57 +       if (!sprom->board_rev)
58 +               nvram_read_u16(NULL, NULL, "boardrev", &sprom->board_rev, 0);
59 +       nvram_read_u16(prefix, NULL, "boardnum", &sprom->board_num, 0);
60 +       nvram_read_u16(prefix, NULL, "boardtype", &sprom->board_type, 0);
61 +       nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
62 +                        &sprom->boardflags_hi);
63 +       nvram_read_u32_2(prefix, "boardflags2", &sprom->boardflags2_lo,
64 +                        &sprom->boardflags2_hi);
65 +}
66 +
67  void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix)
68  {
69         bcm47xx_fill_sprom_ethernet(sprom, prefix);
70 +       bcm47xx_fill_board_data(sprom, prefix);
71  
72         nvram_read_u8(prefix, NULL, "sromrev", &sprom->revision, 0);
73  
74 @@ -571,7 +566,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom
75                 bcm47xx_fill_sprom_r1234589(sprom, prefix);
76                 bcm47xx_fill_sprom_r12389(sprom, prefix);
77                 bcm47xx_fill_sprom_r2389(sprom, prefix);
78 -               bcm47xx_fill_sprom_r2(sprom, prefix);
79                 break;
80         case 3:
81                 bcm47xx_fill_sprom_r1234589(sprom, prefix);