All of lore.kernel.org
 help / color / mirror / Atom feed
* [ath9k-devel] AR5416 calibration / chainmask configuration bug?
@ 2011-01-27  9:46 Adrian Chadd
  2011-01-31 12:53 ` Mohammed Shafi
  0 siblings, 1 reply; 4+ messages in thread
From: Adrian Chadd @ 2011-01-27  9:46 UTC (permalink / raw)
  To: ath9k-devel

Hi,

In ar5008_phy.c:ar5008_hw_init_chain_masks(), some special case
happens for AR5416 v1.0 when the chainmask is configured for two
chains.

But the comparison seems bogus - it's checking if
hw_version.macVersion == AR_SREV_REVISION_5416_10; it's comparing the
revision rather than the MAC version. And since
AR_SREV_REVISION_5416_10 is defined as 0, the macVersion would have to
be 0 for that to trigger.

So what would the right comparison be? Should it be for AR5416 v1.0 ?
Or any AR5416 revision?

Thanks,



Adrian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [ath9k-devel] AR5416 calibration / chainmask configuration bug?
  2011-01-27  9:46 [ath9k-devel] AR5416 calibration / chainmask configuration bug? Adrian Chadd
@ 2011-01-31 12:53 ` Mohammed Shafi
  2011-02-01  3:49   ` Adrian Chadd
  0 siblings, 1 reply; 4+ messages in thread
From: Mohammed Shafi @ 2011-01-31 12:53 UTC (permalink / raw)
  To: ath9k-devel

On Thu, Jan 27, 2011 at 3:16 PM, Adrian Chadd <adrian@freebsd.org> wrote:
> Hi,
>
> In ar5008_phy.c:ar5008_hw_init_chain_masks(), some special case
> happens for AR5416 v1.0 when the chainmask is configured for two
> chains.

As per the reference hw code it's a workaround for that particular
version to meet calibration failure and later it seems we will obtain
the correct mask and this only happens for this particular chip.

>
> But the comparison seems bogus - it's checking if
> hw_version.macVersion == AR_SREV_REVISION_5416_10; it's comparing the
> revision rather than the MAC version. And since
> AR_SREV_REVISION_5416_10 is defined as 0, the macVersion would have to
> be 0 for that to trigger.
>
> So what would the right comparison be? Should it be for AR5416 v1.0 ?
> Or any AR5416 revision?
>
> Thanks,
>
>
>
> Adrian
> _______________________________________________
> ath9k-devel mailing list
> ath9k-devel at lists.ath9k.org
> https://lists.ath9k.org/mailman/listinfo/ath9k-devel
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [ath9k-devel] AR5416 calibration / chainmask configuration bug?
  2011-01-31 12:53 ` Mohammed Shafi
@ 2011-02-01  3:49   ` Adrian Chadd
  2011-02-01 12:13     ` Mohammed Shafi
  0 siblings, 1 reply; 4+ messages in thread
From: Adrian Chadd @ 2011-02-01  3:49 UTC (permalink / raw)
  To: ath9k-devel

On 31 January 2011 20:53, Mohammed Shafi <shafi.wireless@gmail.com> wrote:
> On Thu, Jan 27, 2011 at 3:16 PM, Adrian Chadd <adrian@freebsd.org> wrote:
>> Hi,
>>
>> In ar5008_phy.c:ar5008_hw_init_chain_masks(), some special case
>> happens for AR5416 v1.0 when the chainmask is configured for two
>> chains.
>
> As per the reference hw code it's a workaround for that particular
> version to meet calibration failure and later it seems we will obtain
> the correct mask and this only happens for this particular chip.

I gathered that, but then:

>> But the comparison seems bogus - it's checking if
>> hw_version.macVersion == AR_SREV_REVISION_5416_10; it's comparing the
>> revision rather than the MAC version. And since
>> AR_SREV_REVISION_5416_10 is defined as 0, the macVersion would have to
>> be 0 for that to trigger.
>>
>> So what would the right comparison be? Should it be for AR5416 v1.0 ?
>> Or any AR5416 revision?

This is the bit I was asking about.

Ie, is the AR5416 1.0 identifying itself as macVersion == 0? Or would
it be identifying it as the AR5416 PCI/PCIE MAC version, but with a
Revision of 0?


Adrian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [ath9k-devel] AR5416 calibration / chainmask configuration bug?
  2011-02-01  3:49   ` Adrian Chadd
@ 2011-02-01 12:13     ` Mohammed Shafi
  0 siblings, 0 replies; 4+ messages in thread
From: Mohammed Shafi @ 2011-02-01 12:13 UTC (permalink / raw)
  To: ath9k-devel

On Tue, Feb 1, 2011 at 9:19 AM, Adrian Chadd <adrian@freebsd.org> wrote:
> On 31 January 2011 20:53, Mohammed Shafi <shafi.wireless@gmail.com> wrote:
>> On Thu, Jan 27, 2011 at 3:16 PM, Adrian Chadd <adrian@freebsd.org> wrote:
>>> Hi,
>>>
>>> In ar5008_phy.c:ar5008_hw_init_chain_masks(), some special case
>>> happens for AR5416 v1.0 when the chainmask is configured for two
>>> chains.
>>
>> As per the reference hw code it's a workaround for that particular
>> version to meet calibration failure and later it seems we will obtain
>> the correct mask and this only happens for this particular chip.
>
> I gathered that, but then:
>
>>> But the comparison seems bogus - it's checking if
>>> hw_version.macVersion == AR_SREV_REVISION_5416_10; it's comparing the
>>> revision rather than the MAC version. And since
>>> AR_SREV_REVISION_5416_10 is defined as 0, the macVersion would have to
>>> be 0 for that to trigger.
>>>
>>> So what would the right comparison be? Should it be for AR5416 v1.0 ?
>>> Or any AR5416 revision?
>
> This is the bit I was asking about.
>
> Ie, is the AR5416 1.0 identifying itself as macVersion == 0? Or would
> it be identifying it as the AR5416 PCI/PCIE MAC version, but with a
> Revision of 0?

Yes the check does not looks correct it is comparing the mac Version
with the sub-version.
But in the reference Hardware code also same thing is done and I think
they had done it purposefully so chain mask of 0x7 is set.probably the
macVersion might be equal to '0'
However I am not sure of this and If you find issues because of this
please mail us.

>
>
> Adrian
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-02-01 12:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-27  9:46 [ath9k-devel] AR5416 calibration / chainmask configuration bug? Adrian Chadd
2011-01-31 12:53 ` Mohammed Shafi
2011-02-01  3:49   ` Adrian Chadd
2011-02-01 12:13     ` Mohammed Shafi

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.