Al 29/03/11 21:21, En/na Felix Fietkau ha escrit:
> On 2011-03-29 6:38 PM, Luca Olivetti wrote:
>> Al 29/03/11 18:30, En/na John Crispin ha escrit:
>>>  On 29/03/11 18:06, Luca Olivetti wrote:
>>>>  Al 29/03/11 10:32, En/na John Crispin ha escrit:
>>>>
>>>>>>  AFAIS, the current in-kernel driver relies on regulatory domain for
>>>>>>  frequency restrictions.
>>>>>>  It could solve your current problem.
>>>>>
>>>>>  yes, the proposed patch rewrites the eep on the fly upon a read and
>>>>>  fakes a ES reg. this is the patch we can accept as is into owrt
>>>>
>>>>  Can or can't?
>>>>
>>>>  Bye
>>>
>>>  cannot
>>
>> Would 0x67 be acceptable?
> What regdomain is programmed into the EEPROM by default?

It is set at 0. The original firmware (which isn't Linux but it seems it's
using a version of ath9k) overrides ir too.
See this extract from the bootlog:


EEPROM : EEP_MAP_DEFAULT !!!!!
Powertable magic: a55a
ar5416CheckEepromDef: Read Magic = 0xA55A
need_swap = True.
EEPROM Endianness is not native.. Changing
regDmn[0] 0
regDmn[1] 1f
change it to 1f1f
[HWLAN] Set HWLAN MAC as LAN MAC ..
ath_getchannels> nchan=22
ath_getchannels> nchan=22
ath_getchannels> nchan=22 match:9
Chan  Freq  RegPwr  HT   CTL CTL_U CTL_L DFS
   1  2412n     20  HT20  1    0    1     N
   2  2417n     20  HT20  1    0    1     N
   3  2422n     20  HT40  1    0    1     N
   4  2427n     20  HT40  1    0    1     N
   5  2432n     20  HT40  1    1    1     N
   6  2437n     20  HT40  1    1    1     N
   7  2442n     20  HT40  1    1    1     N
   8  2447n     20  HT40  1    1    1     N
   9  2452n     20  HT40  1    1    1     N
  10  2457n     20  HT40  1    1    0     N
  11  2462n     20  HT40  1    1    0     N
  12  2467n     20  HT20  1    1    0     N
  13  2472n     20  HT20  1    1    0     N
ath_countrycode : 724


> And what does the driver do with it if you leave out the override?

It will set a default world regdomain (the most restrictive):

static const struct ieee80211_regdomain *ath_default_world_regdomain(void)
{
        /* this is the most restrictive */
        return &ath_world_regdom_64;
}

static const struct
ieee80211_regdomain *ath_world_regdomain(struct ath_regulatory *reg)
{
        switch (reg->regpair->regDmnEnum) {
        case 0x60:
        case 0x61:
        case 0x62:
                return &ath_world_regdom_60_61_62;
        case 0x63:
        case 0x65:
                return &ath_world_regdom_63_65;
        case 0x64:
                return &ath_world_regdom_64;
        case 0x66:
        case 0x69:
                return &ath_world_regdom_66_69;
        case 0x67:
        case 0x68:
        case 0x6A:
                return &ath_world_regdom_67_68_6A;
        default:
                WARN_ON(1);
                return ath_default_world_regdomain();
        }
}


But I was asking if it's not acceptable to set the regdomain to Spain or
if it's not acceptable to change it at all.

Bye
-- 
Luca
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to