All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felix Fietkau <nbd@openwrt.org>
To: ath9k-devel@lists.ath9k.org
Subject: [ath9k-devel] [PATCH 1/3] ath9k: use consistent value for REDUCE_SCALED_POWER_BY_THREE_CHAIN
Date: Sun, 15 Apr 2012 19:26:47 +0200	[thread overview]
Message-ID: <4F8B04D7.4080605@openwrt.org> (raw)
In-Reply-To: <4F8B03A3.6030804@openwrt.org>

On 2012-04-15 7:21 PM, Gabor Juhos wrote:
> Hi Felix,
> 
> Thank you for the comments.
> 
>> On 2012-04-14 10:01 PM, Gabor Juhos wrote:
>>> The REDUCE_SCALED_POWER_BY_THREE_CHAIN symbol is
>>> defined in different eeprom files, and the value
>>> varies between the different files.
>>>
>>> In eeprom_def.c and in ar9003_eeprom.c the value
>>> of the symbol is 9, however the comments in these
>>> files indicates the value should be 10*log10(3)*2
>>> which is 9.54242509439325. Replace the the value
>>> to 10 in these files.
>>>
>>> Also add comments to eeprom_9287.c.
>>>
>>> Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
>> I think we should keep the value 9.
>> If I understand the logic behind the power increase through chain
>> combining properly, this value only describes the worst-case (wrt.
>> regulatory compliance) upper limit of tx power, whereas in practice the
>> measured combined power output will be much lower than that due to
>> signal/phase differences.
>> Regulatory compliance is already properly tested on all devices with the
>> truncated value 9, so I don't think that we need to be even more
>> conservative and round up here.
> 
> Ok, I will rework the patch.
> 
> Apart from the inconsistency between the REDUCE_SCALED_POWER_BY_THREE_CHAIN
> values, there is another thing which confuses me.
> 
> In the 'ath9k_hw_set_*_power_cal_table' functions the driver uses the
> REDUCE_SCALED_POWER_BY_THREE_CHAIN constant to reduce the power values.
> In the 'ath9k_hw_update_regulatory_maxpower' function it uses the
> INCREASE_MAXPOW_BY_THREE_CHAIN constant to compensate the reduction. However the
> two constants are different. I might be wrong, but in my opinion the driver
> should use the same constant in both functions.
I just checked with Atheros sources, and it seems I was wrong about
sticking with the value 9.
It appears that Atheros changed it to 10 at some point, and ath9k
contains a mix of the old and the new version. Consistently using the
value 10 for 3 chains for both increase and reduction seems to be the
right thing to do.

- Felix

WARNING: multiple messages have this Message-ID (diff)
From: Felix Fietkau <nbd@openwrt.org>
To: Gabor Juhos <juhosg@openwrt.org>
Cc: "John W. Linville" <linville@tuxdriver.com>,
	linux-wireless@vger.kernel.org,
	"ath9k-devel@lists.ath9k.org" <ath9k-devel@venema.h4ckr.net>
Subject: Re: [PATCH 1/3] ath9k: use consistent value for REDUCE_SCALED_POWER_BY_THREE_CHAIN
Date: Sun, 15 Apr 2012 19:26:47 +0200	[thread overview]
Message-ID: <4F8B04D7.4080605@openwrt.org> (raw)
In-Reply-To: <4F8B03A3.6030804@openwrt.org>

On 2012-04-15 7:21 PM, Gabor Juhos wrote:
> Hi Felix,
> 
> Thank you for the comments.
> 
>> On 2012-04-14 10:01 PM, Gabor Juhos wrote:
>>> The REDUCE_SCALED_POWER_BY_THREE_CHAIN symbol is
>>> defined in different eeprom files, and the value
>>> varies between the different files.
>>>
>>> In eeprom_def.c and in ar9003_eeprom.c the value
>>> of the symbol is 9, however the comments in these
>>> files indicates the value should be 10*log10(3)*2
>>> which is 9.54242509439325. Replace the the value
>>> to 10 in these files.
>>>
>>> Also add comments to eeprom_9287.c.
>>>
>>> Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
>> I think we should keep the value 9.
>> If I understand the logic behind the power increase through chain
>> combining properly, this value only describes the worst-case (wrt.
>> regulatory compliance) upper limit of tx power, whereas in practice the
>> measured combined power output will be much lower than that due to
>> signal/phase differences.
>> Regulatory compliance is already properly tested on all devices with the
>> truncated value 9, so I don't think that we need to be even more
>> conservative and round up here.
> 
> Ok, I will rework the patch.
> 
> Apart from the inconsistency between the REDUCE_SCALED_POWER_BY_THREE_CHAIN
> values, there is another thing which confuses me.
> 
> In the 'ath9k_hw_set_*_power_cal_table' functions the driver uses the
> REDUCE_SCALED_POWER_BY_THREE_CHAIN constant to reduce the power values.
> In the 'ath9k_hw_update_regulatory_maxpower' function it uses the
> INCREASE_MAXPOW_BY_THREE_CHAIN constant to compensate the reduction. However the
> two constants are different. I might be wrong, but in my opinion the driver
> should use the same constant in both functions.
I just checked with Atheros sources, and it seems I was wrong about
sticking with the value 9.
It appears that Atheros changed it to 10 at some point, and ath9k
contains a mix of the old and the new version. Consistently using the
value 10 for 3 chains for both increase and reduction seems to be the
right thing to do.

- Felix

  reply	other threads:[~2012-04-15 17:26 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-14 20:01 [ath9k-devel] [PATCH 1/3] ath9k: use consistent value for REDUCE_SCALED_POWER_BY_THREE_CHAIN Gabor Juhos
2012-04-14 20:01 ` Gabor Juhos
2012-04-14 20:01 ` [ath9k-devel] [PATCH 2/3] ath9k: introduce ath9k_hw_get_scaled_power helper Gabor Juhos
2012-04-14 20:01   ` Gabor Juhos
2012-04-14 20:01 ` [ath9k-devel] [PATCH 3/3] ath9k: simplify ath9k_hw_get_scaled_power function Gabor Juhos
2012-04-14 20:01   ` Gabor Juhos
2012-04-14 22:11 ` [ath9k-devel] [PATCH 1/3] ath9k: use consistent value for REDUCE_SCALED_POWER_BY_THREE_CHAIN Daniel Halperin
2012-04-14 22:11   ` Daniel Halperin
2012-04-15 17:21   ` [ath9k-devel] " Gabor Juhos
2012-04-15 17:21     ` Gabor Juhos
2012-04-15 10:31 ` [ath9k-devel] " Felix Fietkau
2012-04-15 10:31   ` Felix Fietkau
2012-04-15 17:21   ` [ath9k-devel] " Gabor Juhos
2012-04-15 17:21     ` Gabor Juhos
2012-04-15 17:26     ` Felix Fietkau [this message]
2012-04-15 17:26       ` Felix Fietkau
2012-04-15 17:50       ` [ath9k-devel] " Gabor Juhos
2012-04-15 17:50         ` Gabor Juhos

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F8B04D7.4080605@openwrt.org \
    --to=nbd@openwrt.org \
    --cc=ath9k-devel@lists.ath9k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.