Re: [PATCH v3 2/4] rt2x00: remove confusing AGC register

2018-10-09 Thread Stanislaw Gruszka
On Tue, Oct 09, 2018 at 03:07:15PM +0200, Daniel Golle wrote:
> simply add these lines:
> /*
>  * Despite the vendor driver using different values here, use 0x1c
>  * for now. This may have to be changed once TSSI got implemented
>  */

I will add this in sparate patch.

Thanks
Stanislaw


Re: [PATCH v3 2/4] rt2x00: remove confusing AGC register

2018-10-09 Thread Daniel Golle
On Tue, Oct 09, 2018 at 02:47:48PM +0200, Stanislaw Gruszka wrote:
> Hi
> 
> On Tue, Oct 09, 2018 at 02:27:22PM +0200, Daniel Golle wrote:
> > On Tue, Oct 09, 2018 at 01:56:08PM +0200,  Gruszka wrote:
> > > Register 66 was causing issues on RT6352 if set to the same value as
> > > in MTK driver. With 1c reg value device was working fine in both HT20
> > > and HT40 modes.
> > 
> > My guess is that this may change once we add proper TSSI which involes
> > parts of AGC init as well. I suggest to add a comment in the code to
> > reflect that.
> 
> I don't understand what you suggest, could you be more specific ?

simply add these lines:
/*
 * Despite the vendor driver using different values here, use 0x1c
 * for now. This may have to be changed once TSSI got implemented
 */

> 
> > > diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c 
> > > b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> > > index 1a2bf6c49b82..3a04eaef8511 100644
> > > --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> > > +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> > > @@ -3981,11 +3981,7 @@ static void rt2800_config_channel(struct 
> > > rt2x00_dev *rt2x00dev,
> > >   rt2800_bbp_write(rt2x00dev, 196, reg);
> > >  
> > >   /* AGC init */
> > > - if (rt2x00_rt(rt2x00dev, RT6352))
> > > - reg = 0x04;
> > > - else
> > > - reg = rf->channel <= 14 ? 0x1c : 0x24;
> > > -
> > > + reg = rf->channel <= 14 ? 0x1c : 0x24;
> > >   reg += 2 * rt2x00dev->lna_gain;
> > 
> > We can summerize the two lines into
> > reg = 0x1c + (2 * rt2x00dev->lna_gain);
> > which is also what is was before introducing support for MT7620.
> 
> I think you mean
> 
> reg = (rf->channel <= 14 ? 0x1c : 0x24) + 2 * rt2x00dev->lna_gain; 
> 
> to do not break 5GHz support for RT5592.  I can change that in
> separate patch, since this one in not technically wrong.
> 
> Thanks
> Stanislaw
> 


Re: [PATCH v3 2/4] rt2x00: remove confusing AGC register

2018-10-09 Thread Daniel Golle
Hi Stanislaw,

On Tue, Oct 09, 2018 at 01:56:08PM +0200,  Gruszka wrote:
> Register 66 was causing issues on RT6352 if set to the same value as
> in MTK driver. With 1c reg value device was working fine in both HT20
> and HT40 modes.

My guess is that this may change once we add proper TSSI which involes
parts of AGC init as well. I suggest to add a comment in the code to
reflect that.


> 
> Signed-off-by: Tomislav Požega 
> Signed-off-by: Stanislaw Gruszka 
> ---
>  drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 6 +-
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c 
> b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> index 1a2bf6c49b82..3a04eaef8511 100644
> --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> @@ -3981,11 +3981,7 @@ static void rt2800_config_channel(struct rt2x00_dev 
> *rt2x00dev,
>   rt2800_bbp_write(rt2x00dev, 196, reg);
>  
>   /* AGC init */
> - if (rt2x00_rt(rt2x00dev, RT6352))
> - reg = 0x04;
> - else
> - reg = rf->channel <= 14 ? 0x1c : 0x24;
> -
> + reg = rf->channel <= 14 ? 0x1c : 0x24;
>   reg += 2 * rt2x00dev->lna_gain;

We can summerize the two lines into
reg = 0x1c + (2 * rt2x00dev->lna_gain);
which is also what is was before introducing support for MT7620.


>   rt2800_bbp_write_with_rx_chain(rt2x00dev, 66, reg);


Cheers


Daniel


Re: [PATCH v3 2/4] rt2x00: remove confusing AGC register

2018-10-09 Thread Stanislaw Gruszka
Hi

On Tue, Oct 09, 2018 at 02:27:22PM +0200, Daniel Golle wrote:
> On Tue, Oct 09, 2018 at 01:56:08PM +0200,  Gruszka wrote:
> > Register 66 was causing issues on RT6352 if set to the same value as
> > in MTK driver. With 1c reg value device was working fine in both HT20
> > and HT40 modes.
> 
> My guess is that this may change once we add proper TSSI which involes
> parts of AGC init as well. I suggest to add a comment in the code to
> reflect that.

I don't understand what you suggest, could you be more specific ?

> > diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c 
> > b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> > index 1a2bf6c49b82..3a04eaef8511 100644
> > --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> > +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> > @@ -3981,11 +3981,7 @@ static void rt2800_config_channel(struct rt2x00_dev 
> > *rt2x00dev,
> > rt2800_bbp_write(rt2x00dev, 196, reg);
> >  
> > /* AGC init */
> > -   if (rt2x00_rt(rt2x00dev, RT6352))
> > -   reg = 0x04;
> > -   else
> > -   reg = rf->channel <= 14 ? 0x1c : 0x24;
> > -
> > +   reg = rf->channel <= 14 ? 0x1c : 0x24;
> > reg += 2 * rt2x00dev->lna_gain;
> 
> We can summerize the two lines into
>   reg = 0x1c + (2 * rt2x00dev->lna_gain);
> which is also what is was before introducing support for MT7620.

I think you mean

reg = (rf->channel <= 14 ? 0x1c : 0x24) + 2 * rt2x00dev->lna_gain; 

to do not break 5GHz support for RT5592.  I can change that in
separate patch, since this one in not technically wrong.

Thanks
Stanislaw



[PATCH v3 2/4] rt2x00: remove confusing AGC register

2018-10-09 Thread Stanislaw Gruszka
Register 66 was causing issues on RT6352 if set to the same value as
in MTK driver. With 1c reg value device was working fine in both HT20
and HT40 modes.

Signed-off-by: Tomislav Požega 
Signed-off-by: Stanislaw Gruszka 
---
 drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c 
b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
index 1a2bf6c49b82..3a04eaef8511 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
@@ -3981,11 +3981,7 @@ static void rt2800_config_channel(struct rt2x00_dev 
*rt2x00dev,
rt2800_bbp_write(rt2x00dev, 196, reg);
 
/* AGC init */
-   if (rt2x00_rt(rt2x00dev, RT6352))
-   reg = 0x04;
-   else
-   reg = rf->channel <= 14 ? 0x1c : 0x24;
-
+   reg = rf->channel <= 14 ? 0x1c : 0x24;
reg += 2 * rt2x00dev->lna_gain;
rt2800_bbp_write_with_rx_chain(rt2x00dev, 66, reg);
 
-- 
2.7.5