Hi Julian Thank you for the quick reply and the link on 27.11.2012 10:55, Julian Calaby wrote: > Hi Erich, > ... > > It's not being completely overridden and it is working as designed. > > Firstly, the default country code for all Atheros chips is the USA. > This is most likely because that's where the company is based. > > Secondly, your choice, China, is not being overridden. As the card is > saying that it's configured for the USA, and you're saying that it's > in China, the regulatory framework is using the intersection of the US > and Chinese rules to govern it's output, thereby ensuring that the > operation of the card complies with all the information it has about > it's location. > > This has been explained in more detail in this thread: > > http://www.spinics.net/lists/linux-wireless/msg92420.html > > If you want to have the complete set of frequencies as specified by > the Chinese rules, you will need to obtain a card which has been > configured for Chinese operation. Actually the country code CH should stand for Switzerland and I am surprised a default for the US should be hard coded into the driver regdmn = ath_regd_get_eepromRD(reg); reg->country_code = ath_regd_get_default_country(regdmn); if (reg->country_code == CTRY_DEFAULT && regdmn == CTRY_DEFAULT) { printk(KERN_DEBUG "ath: EEPROM indicates default " "country code should be used\n"); reg->country_code = CTRY_UNITED_STATES; } if (reg->country_code == CTRY_DEFAULT) { country = NULL; } else { printk(KERN_DEBUG "ath: doing EEPROM country->regdmn " "map search\n"); country = ath_regd_find_country(reg->country_code); if (country == NULL) { printk(KERN_DEBUG "ath: no valid country maps found for " "country code: 0x%0x\n", reg->country_code); return -EINVAL; } else { regdmn = country->regDmnEnum; printk(KERN_DEBUG "ath: country maps to " "regdmn code: 0x%0x\n", regdmn); } } Anyway, I am located in Switzerland and I saw similar threads from a few people on the net. Today's mobile society demands that equipment can be reconfigured freely to accommodate the local regulatory limits. This can be achieved at will with an open card, which just gets crippled by the hard coded limits set here. So under the worst thinkable circumstances this code won't work for my environment as, for example, the intersection of the world regdomain and the US regdomain would AFAIK cut away channels 12 and 13, which are perfectly legal at my domicile and are used by some AP's. I could (and will probably have to) recompile the driver using another regdomain file, but this is not really satisfactory either. IMHO the regdomain should be chosen as seen fit and not imposed by hard coded limits in the driver. Thanks Erich
Attachment:
smime.p7s
Description: S/MIME Kryptografische Unterschrift