Re: [PATCH 14/40] rt2x00: rt2800lib: add MAC register initialization for RT3883

2017-01-14 Thread kbuild test robot
Hi Gabor,

[auto build test ERROR on wireless-drivers-next/master]
[also build test ERROR on next-20170113]
[cannot apply to v4.10-rc3]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:
https://github.com/0day-ci/linux/commits/Daniel-Golle/rt2x00-patches-form-OpenWrt-org/20170115-102250
base:   
https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git 
master
config: x86_64-allyesdebian (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64 

Note: the 
linux-review/Daniel-Golle/rt2x00-patches-form-OpenWrt-org/20170115-102250 HEAD 
849367246e2b54e086e272ee2bd32b9983bc30fb builds fine.
  It only hurts bisectibility.

All errors (new ones prefixed by >>):

   drivers/net/wireless/ralink/rt2x00/rt2800lib.c: In function 
'rt2800_config_channel_rf3853':
   drivers/net/wireless/ralink/rt2x00/rt2800lib.c:2734:2: error: implicit 
declaration of function 'rt2800_adjust_freq_offset' 
[-Werror=implicit-function-declaration]
 rt2800_adjust_freq_offset(rt2x00dev);
 ^
   drivers/net/wireless/ralink/rt2x00/rt2800lib.c: In function 
'rt2800_init_registers':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:5027:36: error: 
>> 'TX_TXBF_CFG_0' undeclared (first use in this function)
  rt2800_register_write(rt2x00dev, TX_TXBF_CFG_0, 0x8000fc21);
   ^
   drivers/net/wireless/ralink/rt2x00/rt2800lib.c:5027:36: note: each 
undeclared identifier is reported only once for each function it appears in
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:5028:36: error: 
>> 'TX_TXBF_CFG_3' undeclared (first use in this function)
  rt2800_register_write(rt2x00dev, TX_TXBF_CFG_3, 0x9c40);
   ^
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:5224:36: error: 
>> 'TX_FBK_CFG_3S_0' undeclared (first use in this function)
  rt2800_register_write(rt2x00dev, TX_FBK_CFG_3S_0, 0x12111008);
   ^~~
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:5225:36: error: 
>> 'TX_FBK_CFG_3S_1' undeclared (first use in this function)
  rt2800_register_write(rt2x00dev, TX_FBK_CFG_3S_1, 0x16151413);
   ^~~
   cc1: some warnings being treated as errors

vim +/TX_TXBF_CFG_0 +5027 drivers/net/wireless/ralink/rt2x00/rt2800lib.c

  50210x);
  5022  }
  5023  } else if (rt2x00_rt(rt2x00dev, RT3883)) {
  5024  rt2800_register_write(rt2x00dev, TX_SW_CFG0, 
0x0402);
  5025  rt2800_register_write(rt2x00dev, TX_SW_CFG1, 
0x);
  5026  rt2800_register_write(rt2x00dev, TX_SW_CFG2, 
0x0004);
> 5027  rt2800_register_write(rt2x00dev, TX_TXBF_CFG_0, 
> 0x8000fc21);
> 5028  rt2800_register_write(rt2x00dev, TX_TXBF_CFG_3, 
> 0x9c40);
  5029  } else if (rt2x00_rt(rt2x00dev, RT5390) ||
  5030 rt2x00_rt(rt2x00dev, RT5392)) {
  5031  rt2800_register_write(rt2x00dev, TX_SW_CFG0, 
0x0404);
  5032  rt2800_register_write(rt2x00dev, TX_SW_CFG1, 
0x00080606);
  5033  rt2800_register_write(rt2x00dev, TX_SW_CFG2, 
0x);
  5034  } else if (rt2x00_rt(rt2x00dev, RT5592)) {
  5035  rt2800_register_write(rt2x00dev, TX_SW_CFG0, 
0x0404);
  5036  rt2800_register_write(rt2x00dev, TX_SW_CFG1, 
0x);
  5037  rt2800_register_write(rt2x00dev, TX_SW_CFG2, 
0x);
  5038  } else {
  5039  rt2800_register_write(rt2x00dev, TX_SW_CFG0, 
0x);
  5040  rt2800_register_write(rt2x00dev, TX_SW_CFG1, 
0x00080606);
  5041  }
  5042  
  5043  rt2800_register_read(rt2x00dev, TX_LINK_CFG, );
  5044  rt2x00_set_field32(, TX_LINK_CFG_REMOTE_MFB_LIFETIME, 32);
  5045  rt2x00_set_field32(, TX_LINK_CFG_MFB_ENABLE, 0);
  5046  rt2x00_set_field32(, TX_LINK_CFG_REMOTE_UMFS_ENABLE, 0);
  5047  rt2x00_set_field32(, TX_LINK_CFG_TX_MRQ_EN, 0);
  5048  rt2x00_set_field32(, TX_LINK_CFG_TX_RDG_EN, 0);
  5049  rt2x00_set_field32(, TX_LINK_CFG_TX_CF_ACK_EN, 1);
  5050  rt2x00_set_field32(, TX_LINK_CFG_REMOTE_MFB, 0);
  5051  rt2x00_set_field32(, TX_LINK_CFG_REMOTE_MFS, 0);
  5052  rt2800_register_write(rt2x00dev, TX_LINK_CFG, reg);
  5053  
  5054  rt2800_register_read(rt2x00dev, TX_TIMEOUT_CFG, );
  5055  rt2x00_set_field32(, TX_TIMEOUT_CFG_MPDU_LIFETIME, 9);
  5056  rt2x00_set_field32(, TX_TIMEOUT_CFG_RX_ACK_TIMEOUT, 32);
  5057  rt2x00_set_field32(, TX_TIMEOUT_CFG_TX_OP_TIMEOUT, 10);
  5058  

[PATCH 14/40] rt2x00: rt2800lib: add MAC register initialization for RT3883

2017-01-13 Thread Daniel Golle
From: Gabor Juhos 

Signed-off-by: Gabor Juhos 
---
 drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 16 +++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c 
b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index 7c5061d5328d..cf9a8cfd4fbc 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -5020,6 +5020,12 @@ static int rt2800_init_registers(struct rt2x00_dev 
*rt2x00dev)
rt2800_register_write(rt2x00dev, TX_SW_CFG2,
  0x);
}
+   } else if (rt2x00_rt(rt2x00dev, RT3883)) {
+   rt2800_register_write(rt2x00dev, TX_SW_CFG0, 0x0402);
+   rt2800_register_write(rt2x00dev, TX_SW_CFG1, 0x);
+   rt2800_register_write(rt2x00dev, TX_SW_CFG2, 0x0004);
+   rt2800_register_write(rt2x00dev, TX_TXBF_CFG_0, 0x8000fc21);
+   rt2800_register_write(rt2x00dev, TX_TXBF_CFG_3, 0x9c40);
} else if (rt2x00_rt(rt2x00dev, RT5390) ||
   rt2x00_rt(rt2x00dev, RT5392)) {
rt2800_register_write(rt2x00dev, TX_SW_CFG0, 0x0404);
@@ -5053,7 +5059,10 @@ static int rt2800_init_registers(struct rt2x00_dev 
*rt2x00dev)
 
rt2800_register_read(rt2x00dev, MAX_LEN_CFG, );
rt2x00_set_field32(, MAX_LEN_CFG_MAX_MPDU, AGGREGATION_SIZE);
-   if (rt2x00_rt_rev_gte(rt2x00dev, RT2872, REV_RT2872E) ||
+   if (rt2x00_rt(rt2x00dev, RT3883)) {
+   drv_data->max_psdu = 3;
+   rt2x00_set_field32(, MAX_LEN_CFG_MAX_PSDU, 3);
+   } else if (rt2x00_rt_rev_gte(rt2x00dev, RT2872, REV_RT2872E) ||
rt2x00_rt(rt2x00dev, RT2883) ||
rt2x00_rt_rev_lt(rt2x00dev, RT3070, REV_RT3070E)) {
drv_data->max_psdu = 2;
@@ -5211,6 +5220,11 @@ static int rt2800_init_registers(struct rt2x00_dev 
*rt2x00dev)
reg = rt2x00_rt(rt2x00dev, RT5592) ? 0x0082 : 0x0002;
rt2800_register_write(rt2x00dev, TXOP_HLDR_ET, reg);
 
+   if (rt2x00_rt(rt2x00dev, RT3883)) {
+   rt2800_register_write(rt2x00dev, TX_FBK_CFG_3S_0, 0x12111008);
+   rt2800_register_write(rt2x00dev, TX_FBK_CFG_3S_1, 0x16151413);
+   }
+
rt2800_register_read(rt2x00dev, TX_RTS_CFG, );
rt2x00_set_field32(, TX_RTS_CFG_AUTO_RTS_RETRY_LIMIT, 32);
rt2x00_set_field32(, TX_RTS_CFG_RTS_THRES,
-- 
2.11.0