Search Linux Wireless

Re: [PATCH] b43: LP-PHY: Initialize TX power control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 12 August 2009 22:42:40 Gábor Stefanik wrote:
> The HW TX power control init still needs work.
> The SW init is complete according to the specs.

HW PCTL needs a serious amount of work in the common code, too.
For now I would focus to SW PCTL and fix HW PCTL later.

> 
> Signed-off-by: Gábor Stefanik <netrolller.3d@xxxxxxxxx>
> ---
> This depends on both the rev0/1 RC calibration patch and the
> V4 dummy transmission patch I submitted earlier.
> 
> Larry, please check the SPEC TODO/SPEC FIXME comments.
> 
>  drivers/net/wireless/b43/phy_lp.c |  104 ++++++++++++++++++++++++++++++++++---
>  drivers/net/wireless/b43/phy_lp.h |    5 ++
>  2 files changed, 102 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/net/wireless/b43/phy_lp.c b/drivers/net/wireless/b43/phy_lp.c
> index e05981b..6ebaeb2 100644
> --- a/drivers/net/wireless/b43/phy_lp.c
> +++ b/drivers/net/wireless/b43/phy_lp.c
> @@ -1258,18 +1258,108 @@ static void lpphy_calibration(struct b43_wldev *dev)
>  	b43_mac_enable(dev);
>  }
>  
> +static void lpphy_set_tssi_mux(struct b43_wldev *dev, enum tssi_mux_mode mode)
> +{
> +	if (mode != TSSI_MUX_EXT) {
> +		b43_radio_set(dev, B2063_PA_SP1, 0x2);
> +		b43_phy_set(dev, B43_PHY_OFDM(0xF3), 0x1000);
> +		b43_radio_write(dev, B2063_PA_CTL10, 0x51);
> +		if (mode == TSSI_MUX_POSTPA) {
> +			b43_radio_mask(dev, B2063_PA_SP1, 0xFFFE);
> +			b43_phy_mask(dev, B43_LPPHY_AFE_CTL_OVRVAL, 0xFFC7);
> +		} else {
> +			b43_radio_maskset(dev, B2063_PA_SP1, 0xFFFE, 0x1);
> +			b43_phy_maskset(dev, B43_LPPHY_AFE_CTL_OVRVAL,
> +					0xFFC7, 0x20);
> +		}
> +	} else {
> +		//SPEC TODO
> +	}
> +}
> +
> +static void lpphy_tx_pctl_init_hw(struct b43_wldev *dev)
> +{
> +	u16 tmp;
> +	int i;
> +
> +	//SPEC TODO Call LP PHY Clear TX Power offsets
> +	for (i = 0; i < 64; i++) {
> +		if (dev->phy.rev >= 2)
> +			b43_lptab_write(dev, B43_LPTAB32(7, i+1), i);
                                                            ^^^
Please keep in mind to use spaces all the time. It is our coding style and I think
we should stick with it.

> +	tmp = b43_phy_read(dev, B43_LPPHY_TX_PWR_CTL_STAT);
> +	if (tmp & 0x8000)
> +		b43_phy_maskset(dev, B43_LPPHY_TX_PWR_CTL_IDLETSSI,
> +				0xFFC0, (tmp & 0xFF) - 32);

Curly brackets for multiline indents, please.


-- 
Greetings, Michael.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux