Re: [PATCH 1/9] rtlwifi: btcoex: Add 8822b1ant coex files

2018-04-04 Thread Pkshih
On Wed, 2018-04-04 at 20:41 +0800, Pkshih wrote:
> On Wed, 2018-04-04 at 02:43 +, Larry Finger wrote:
> > On 03/28/2018 02:27 AM, pks...@realtek.com wrote:
> > > From: Ping-Ke Shih 
> > > 
> > > This file supports 8822be WiFi module with two physical antenna that
> > > means one antenna will share with BT.
> > > 
> > > Signed-off-by: Ping-Ke Shih 
> > > ---
> > >   .../realtek/rtlwifi/btcoexist/halbtc8822b1ant.c| 5303 
> > >
> > >   .../realtek/rtlwifi/btcoexist/halbtc8822b1ant.h|  413 ++
> > >   2 files changed, 5716 insertions(+)
> > >   create mode 100644 
> > >drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c
> > >   create mode 100644 
> > >drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.h
> > 
> > --snip--
> > 
> > > +/*anttenna control by bb mac bt antdiv pta to write 0x4c 0xcb4,0xcbd*/
> > > +
> > > +static
> > > +void hallbtc882b1ant_set_ant_switch(struct btc_coexist *btcoexist,
> > > + bool force_exec, u8 ctrl_type,
> > > + u8 pos_type)
> > > +{
> > > + struct rtl_priv *rtlpriv = btcoexist->adapter;
> > > + bool switch_polatiry_inverse = false;
> > > + u8 regval_0xcbd = 0, regval_0x64;
> > > + u32 u32tmp1 = 0, u32tmp2 = 0, u32tmp3 = 0;
> > > +
> > > + /* Ext switch buffer mux */
> > > + btcoexist->btc_write_1byte(btcoexist, 0x974, 0xff);
> > > + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x1991, 0x3, 0x0);
> > > + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xcbe, 0x8, 0x0);
> > > +
> > > + if (!rfe_type->ext_ant_switch_exist)
> > > + return;
> > > +
> > > + coex_dm->cur_ext_ant_switch_status = (ctrl_type << 8) + pos_type;
> > > +
> > > + if (!force_exec) {
> > > + if (coex_dm->pre_ext_ant_switch_status ==
> > > + coex_dm->cur_ext_ant_switch_status)
> > > + return;
> > > + }
> > > +
> > > + coex_dm->pre_ext_ant_switch_status = coex_dm->cur_ext_ant_switch_status;
> > > +
> > > + /* swap control polarity if use different switch control polarity*/
> > > + /* Normal switch polarity for SPDT,
> > > +  * 0xcbd[1:0] = 2b'01 => Ant to BTG, WLA
> > > +  * 0xcbd[1:0] = 2b'10 => Ant to WLG
> > > +  */
> > > + switch_polatiry_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1 ?
> > > +    ~switch_polatiry_inverse :
> > > +    switch_polatiry_inverse);
> > 
> > gcc 7.3.1 reports the following:
> > 
> >    CC [M]  drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.o
> > drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c: In 
> > function 
> > ‘hallbtc882b1ant_set_ant_switch’:
> > drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c:2193:9: 
> > warning: ‘~’ on a boolean expression [-Wbool-operation]
> >   ~switch_polatiry_inverse :
> >   ^
> > drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c:2193:9: 
> > note: 
> > did you mean to use logical not?
> >   ~switch_polatiry_inverse :
> >   ^
> > 
> > For a boolean, you should use !bool, not -bool. In addition, it would be 
> > better 
> > to use switch_polarity_inverse, not switch_polatiry_inverse. The same 
> > "typo" 
> > happens in other places in this file. I suggest
> > 
> > sed -i 's/polatiry_inverse/polarity_inverse/g' \
> > drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c.
> > 
> 
> I'll fix the typo, and declare the variable switch_polarity_inverse without
> initial value, then assign value true or false in the line mentioned in above
> warning. It looks like:
>   bool switch_polatiry_inverse;
>   ...
>   switch_polarity_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1 
> ?
>      true : false);
> 

Fix the last expression again:

switch_polarity_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1);




Re: [PATCH 1/9] rtlwifi: btcoex: Add 8822b1ant coex files

2018-04-04 Thread Pkshih
On Wed, 2018-04-04 at 02:43 +, Larry Finger wrote:
> On 03/28/2018 02:27 AM, pks...@realtek.com wrote:
> > From: Ping-Ke Shih 
> > 
> > This file supports 8822be WiFi module with two physical antenna that
> > means one antenna will share with BT.
> > 
> > Signed-off-by: Ping-Ke Shih 
> > ---
> >   .../realtek/rtlwifi/btcoexist/halbtc8822b1ant.c| 5303 
> >
> >   .../realtek/rtlwifi/btcoexist/halbtc8822b1ant.h|  413 ++
> >   2 files changed, 5716 insertions(+)
> >   create mode 100644 
> >drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c
> >   create mode 100644 
> >drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.h
> 
> --snip--
> 
> > +/*anttenna control by bb mac bt antdiv pta to write 0x4c 0xcb4,0xcbd*/
> > +
> > +static
> > +void hallbtc882b1ant_set_ant_switch(struct btc_coexist *btcoexist,
> > +   bool force_exec, u8 ctrl_type,
> > +   u8 pos_type)
> > +{
> > +   struct rtl_priv *rtlpriv = btcoexist->adapter;
> > +   bool switch_polatiry_inverse = false;
> > +   u8 regval_0xcbd = 0, regval_0x64;
> > +   u32 u32tmp1 = 0, u32tmp2 = 0, u32tmp3 = 0;
> > +
> > +   /* Ext switch buffer mux */
> > +   btcoexist->btc_write_1byte(btcoexist, 0x974, 0xff);
> > +   btcoexist->btc_write_1byte_bitmask(btcoexist, 0x1991, 0x3, 0x0);
> > +   btcoexist->btc_write_1byte_bitmask(btcoexist, 0xcbe, 0x8, 0x0);
> > +
> > +   if (!rfe_type->ext_ant_switch_exist)
> > +   return;
> > +
> > +   coex_dm->cur_ext_ant_switch_status = (ctrl_type << 8) + pos_type;
> > +
> > +   if (!force_exec) {
> > +   if (coex_dm->pre_ext_ant_switch_status ==
> > +   coex_dm->cur_ext_ant_switch_status)
> > +   return;
> > +   }
> > +
> > +   coex_dm->pre_ext_ant_switch_status = coex_dm->cur_ext_ant_switch_status;
> > +
> > +   /* swap control polarity if use different switch control polarity*/
> > +   /* Normal switch polarity for SPDT,
> > +    * 0xcbd[1:0] = 2b'01 => Ant to BTG, WLA
> > +    * 0xcbd[1:0] = 2b'10 => Ant to WLG
> > +    */
> > +   switch_polatiry_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1 ?
> > +      ~switch_polatiry_inverse :
> > +      switch_polatiry_inverse);
> 
> gcc 7.3.1 reports the following:
> 
>    CC [M]  drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.o
> drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c: In function 
> ‘hallbtc882b1ant_set_ant_switch’:
> drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c:2193:9: 
> warning: ‘~’ on a boolean expression [-Wbool-operation]
>   ~switch_polatiry_inverse :
>   ^
> drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c:2193:9: 
> note: 
> did you mean to use logical not?
>   ~switch_polatiry_inverse :
>   ^
> 
> For a boolean, you should use !bool, not -bool. In addition, it would be 
> better 
> to use switch_polarity_inverse, not switch_polatiry_inverse. The same "typo" 
> happens in other places in this file. I suggest
> 
> sed -i 's/polatiry_inverse/polarity_inverse/g' \
> drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c.
> 

I'll fix the typo, and declare the variable switch_polarity_inverse without
initial value, then assign value true or false in the line mentioned in above
warning. It looks like:
bool switch_polatiry_inverse;
...
switch_polarity_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1 ?


   true : false);


PK


Re: [PATCH 1/9] rtlwifi: btcoex: Add 8822b1ant coex files

2018-04-03 Thread Larry Finger

On 03/28/2018 02:27 AM, pks...@realtek.com wrote:

From: Ping-Ke Shih 

This file supports 8822be WiFi module with two physical antenna that
means one antenna will share with BT.

Signed-off-by: Ping-Ke Shih 
---
  .../realtek/rtlwifi/btcoexist/halbtc8822b1ant.c| 5303 
  .../realtek/rtlwifi/btcoexist/halbtc8822b1ant.h|  413 ++
  2 files changed, 5716 insertions(+)
  create mode 100644 
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c
  create mode 100644 
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.h


--snip--


+/*anttenna control by bb mac bt antdiv pta to write 0x4c 0xcb4,0xcbd*/
+
+static
+void hallbtc882b1ant_set_ant_switch(struct btc_coexist *btcoexist,
+   bool force_exec, u8 ctrl_type,
+   u8 pos_type)
+{
+   struct rtl_priv *rtlpriv = btcoexist->adapter;
+   bool switch_polatiry_inverse = false;
+   u8 regval_0xcbd = 0, regval_0x64;
+   u32 u32tmp1 = 0, u32tmp2 = 0, u32tmp3 = 0;
+
+   /* Ext switch buffer mux */
+   btcoexist->btc_write_1byte(btcoexist, 0x974, 0xff);
+   btcoexist->btc_write_1byte_bitmask(btcoexist, 0x1991, 0x3, 0x0);
+   btcoexist->btc_write_1byte_bitmask(btcoexist, 0xcbe, 0x8, 0x0);
+
+   if (!rfe_type->ext_ant_switch_exist)
+   return;
+
+   coex_dm->cur_ext_ant_switch_status = (ctrl_type << 8) + pos_type;
+
+   if (!force_exec) {
+   if (coex_dm->pre_ext_ant_switch_status ==
+   coex_dm->cur_ext_ant_switch_status)
+   return;
+   }
+
+   coex_dm->pre_ext_ant_switch_status = coex_dm->cur_ext_ant_switch_status;
+
+   /* swap control polarity if use different switch control polarity*/
+   /* Normal switch polarity for SPDT,
+* 0xcbd[1:0] = 2b'01 => Ant to BTG, WLA
+* 0xcbd[1:0] = 2b'10 => Ant to WLG
+*/
+   switch_polatiry_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1 ?
+  ~switch_polatiry_inverse :
+  switch_polatiry_inverse);


gcc 7.3.1 reports the following:

  CC [M]  drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.o
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c: In function 
‘hallbtc882b1ant_set_ant_switch’:
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c:2193:9: 
warning: ‘~’ on a boolean expression [-Wbool-operation]

 ~switch_polatiry_inverse :
 ^
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c:2193:9: note: 
did you mean to use logical not?

 ~switch_polatiry_inverse :
 ^

For a boolean, you should use !bool, not -bool. In addition, it would be better 
to use switch_polarity_inverse, not switch_polatiry_inverse. The same "typo" 
happens in other places in this file. I suggest


sed -i 's/polatiry_inverse/polarity_inverse/g' \
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8822b1ant.c.


+
+   switch (pos_type) {


Larry