aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2800lib.c
diff options
context:
space:
mode:
authorStanislaw Gruszka <stf_xl@wp.pl>2013-05-18 08:03:38 -0400
committerJohn W. Linville <linville@tuxdriver.com>2013-05-24 13:18:15 -0400
commit3c20a1229dce70b16f7e0f444d23f9b16e15a7e2 (patch)
treea5b1e23e3f0a8cacc55357f455ae76b048a63ae8 /drivers/net/wireless/rt2x00/rt2800lib.c
parent885f2414361709f53ed5566e66f3bd88c9ebe2b5 (diff)
rt2800: initialize BBP_R84 on all subroutines (except 5592)
Signed-off-by: Stanislaw Gruszka <stf_xl@wp.pl> Acked-by: Helmut Schaa <helmut.schaa@googlemail.com> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2800lib.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2800lib.c28
1 files changed, 19 insertions, 9 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
index 79a95a44e575..2f14ede9e959 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -3971,6 +3971,8 @@ static void rt2800_init_bbp_305x_soc(struct rt2x00_dev *rt2x00dev)
3971 rt2800_bbp_write(rt2x00dev, 82, 0x62); 3971 rt2800_bbp_write(rt2x00dev, 82, 0x62);
3972 3972
3973 rt2800_bbp_write(rt2x00dev, 83, 0x6a); 3973 rt2800_bbp_write(rt2x00dev, 83, 0x6a);
3974
3975 rt2800_bbp_write(rt2x00dev, 84, 0x99);
3974} 3976}
3975 3977
3976static void rt2800_init_bbp_28xx(struct rt2x00_dev *rt2x00dev) 3978static void rt2800_init_bbp_28xx(struct rt2x00_dev *rt2x00dev)
@@ -3993,6 +3995,11 @@ static void rt2800_init_bbp_28xx(struct rt2x00_dev *rt2x00dev)
3993 rt2800_bbp_write(rt2x00dev, 82, 0x62); 3995 rt2800_bbp_write(rt2x00dev, 82, 0x62);
3994 3996
3995 rt2800_bbp_write(rt2x00dev, 83, 0x6a); 3997 rt2800_bbp_write(rt2x00dev, 83, 0x6a);
3998
3999 if (rt2x00_rt_rev(rt2x00dev, RT2860, REV_RT2860D))
4000 rt2800_bbp_write(rt2x00dev, 84, 0x19);
4001 else
4002 rt2800_bbp_write(rt2x00dev, 84, 0x99);
3996} 4003}
3997 4004
3998static void rt2800_init_bbp_30xx(struct rt2x00_dev *rt2x00dev) 4005static void rt2800_init_bbp_30xx(struct rt2x00_dev *rt2x00dev)
@@ -4012,6 +4019,8 @@ static void rt2800_init_bbp_30xx(struct rt2x00_dev *rt2x00dev)
4012 rt2800_bbp_write(rt2x00dev, 82, 0x62); 4019 rt2800_bbp_write(rt2x00dev, 82, 0x62);
4013 4020
4014 rt2800_bbp_write(rt2x00dev, 83, 0x6a); 4021 rt2800_bbp_write(rt2x00dev, 83, 0x6a);
4022
4023 rt2800_bbp_write(rt2x00dev, 84, 0x99);
4015} 4024}
4016 4025
4017static void rt2800_init_bbp_3290(struct rt2x00_dev *rt2x00dev) 4026static void rt2800_init_bbp_3290(struct rt2x00_dev *rt2x00dev)
@@ -4042,6 +4051,8 @@ static void rt2800_init_bbp_3290(struct rt2x00_dev *rt2x00dev)
4042 rt2800_bbp_write(rt2x00dev, 82, 0x62); 4051 rt2800_bbp_write(rt2x00dev, 82, 0x62);
4043 4052
4044 rt2800_bbp_write(rt2x00dev, 83, 0x7a); 4053 rt2800_bbp_write(rt2x00dev, 83, 0x7a);
4054
4055 rt2800_bbp_write(rt2x00dev, 84, 0x9a);
4045} 4056}
4046 4057
4047static void rt2800_init_bbp_3352(struct rt2x00_dev *rt2x00dev) 4058static void rt2800_init_bbp_3352(struct rt2x00_dev *rt2x00dev)
@@ -4074,6 +4085,8 @@ static void rt2800_init_bbp_3352(struct rt2x00_dev *rt2x00dev)
4074 rt2800_bbp_write(rt2x00dev, 82, 0x62); 4085 rt2800_bbp_write(rt2x00dev, 82, 0x62);
4075 4086
4076 rt2800_bbp_write(rt2x00dev, 83, 0x6a); 4087 rt2800_bbp_write(rt2x00dev, 83, 0x6a);
4088
4089 rt2800_bbp_write(rt2x00dev, 84, 0x99);
4077} 4090}
4078 4091
4079static void rt2800_init_bbp_3390(struct rt2x00_dev *rt2x00dev) 4092static void rt2800_init_bbp_3390(struct rt2x00_dev *rt2x00dev)
@@ -4093,6 +4106,8 @@ static void rt2800_init_bbp_3390(struct rt2x00_dev *rt2x00dev)
4093 rt2800_bbp_write(rt2x00dev, 82, 0x62); 4106 rt2800_bbp_write(rt2x00dev, 82, 0x62);
4094 4107
4095 rt2800_bbp_write(rt2x00dev, 83, 0x6a); 4108 rt2800_bbp_write(rt2x00dev, 83, 0x6a);
4109
4110 rt2800_bbp_write(rt2x00dev, 84, 0x99);
4096} 4111}
4097 4112
4098static void rt2800_init_bbp_3572(struct rt2x00_dev *rt2x00dev) 4113static void rt2800_init_bbp_3572(struct rt2x00_dev *rt2x00dev)
@@ -4114,6 +4129,8 @@ static void rt2800_init_bbp_3572(struct rt2x00_dev *rt2x00dev)
4114 rt2800_bbp_write(rt2x00dev, 82, 0x62); 4129 rt2800_bbp_write(rt2x00dev, 82, 0x62);
4115 4130
4116 rt2800_bbp_write(rt2x00dev, 83, 0x6a); 4131 rt2800_bbp_write(rt2x00dev, 83, 0x6a);
4132
4133 rt2800_bbp_write(rt2x00dev, 84, 0x99);
4117} 4134}
4118 4135
4119static void rt2800_init_bbp_53xx(struct rt2x00_dev *rt2x00dev) 4136static void rt2800_init_bbp_53xx(struct rt2x00_dev *rt2x00dev)
@@ -4143,6 +4160,8 @@ static void rt2800_init_bbp_53xx(struct rt2x00_dev *rt2x00dev)
4143 rt2800_bbp_write(rt2x00dev, 82, 0x62); 4160 rt2800_bbp_write(rt2x00dev, 82, 0x62);
4144 4161
4145 rt2800_bbp_write(rt2x00dev, 83, 0x7a); 4162 rt2800_bbp_write(rt2x00dev, 83, 0x7a);
4163
4164 rt2800_bbp_write(rt2x00dev, 84, 0x9a);
4146} 4165}
4147 4166
4148static void rt2800_init_bbp_5592(struct rt2x00_dev *rt2x00dev) 4167static void rt2800_init_bbp_5592(struct rt2x00_dev *rt2x00dev)
@@ -4261,15 +4280,6 @@ static void rt2800_init_bbp(struct rt2x00_dev *rt2x00dev)
4261 return; 4280 return;
4262 } 4281 }
4263 4282
4264 if (rt2x00_rt_rev(rt2x00dev, RT2860, REV_RT2860D))
4265 rt2800_bbp_write(rt2x00dev, 84, 0x19);
4266 else if (rt2x00_rt(rt2x00dev, RT3290) ||
4267 rt2x00_rt(rt2x00dev, RT5390) ||
4268 rt2x00_rt(rt2x00dev, RT5392))
4269 rt2800_bbp_write(rt2x00dev, 84, 0x9a);
4270 else
4271 rt2800_bbp_write(rt2x00dev, 84, 0x99);
4272
4273 if (rt2x00_rt(rt2x00dev, RT3290) || 4283 if (rt2x00_rt(rt2x00dev, RT3290) ||
4274 rt2x00_rt(rt2x00dev, RT3352) || 4284 rt2x00_rt(rt2x00dev, RT3352) ||
4275 rt2x00_rt(rt2x00dev, RT5390) || 4285 rt2x00_rt(rt2x00dev, RT5390) ||