Search Linux Wireless

Re: ath/regd.c: regdomain 0x8000 fails to retrieve a regulatory domain pair

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

 



On Thu, May 21, 2009 at 04:22:01PM -0700, Joerg Albert wrote:
> On 05/21/2009 07:16 PM, Luis R. Rodriguez wrote:
> 
> > Joerg, can you please try this patch, its just informative and I would
> > like to see the output. A regulatory domain in the EEPROM set to 0x8000
> > should be cought, as you indicated, in this code:
> >
> >         if (reg->country_code == CTRY_DEFAULT &&
> >             regdmn == CTRY_DEFAULT)
> >                 reg->country_code = CTRY_UNITED_STATES;
> >
> > The debug prints should help.
>  > ...
> With the patch I get:
> 
> usb 1-5: firmware: requesting ar9170-2.fw
> ath: EEPROM indicates we should expect a country code
> ath: No regulatory domain pair found, cannot continue
> ar9170usb: probe of 1-5:1.0 failed with error -22
> 
> IMHO the in the above if-statement regdmn == 0x8000 (as read from
> the EEPROM by ath_regd_get_eepromRD), but CTRY_DEFAULT is defined as
> zero, so reg->country_code isn't set.
> Shouldn't we say "regdmn == (CTRY_DEFAULT|COUNTRY_ERD_FLAG)",because
> without the ERD flag set we cannot compare a regdomain with a
> country code?

I agree, regdmn is set from calling ath_regd_get_eepromRD() which
returns:

	reg->current_rd & ~WORLDWIDE_ROAMING_FLAG

This is:

	reg->current_rd & ~0x4000

And _not_ 

	reg->current_rd & ~COUNTRY_ERD_FLAG

which would be:

	reg->current_rd & ~0x8000

This _does_ explain why you end up where you do, and we don't
let the driver continue. However, it does seem that 0x8000 is in fact
not a valid regulatory domain code which should be used. Problem
with using CTRY_UNITED_STATES or 0x64 (or another custom atheros
world regulatory domain) for this case is non properly calibrated
data may be used, specifically for the CTL indexes. We'll check on
this internally, regardless we need a solution for you.

  Luis
--
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