On Tue, Oct 5, 2021 at 10:02 AM Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > > Hi Kalle, > > On 10/5/21 7:36 AM, Kalle Valo wrote: > > Hans de Goede <hdegoede@xxxxxxxxxx> writes: > > > >> In some cases the EFI-var stored nvram contains "ccode=ALL", "ccode=XV" > >> or "ccode=XT", to specify "worldwide" compatible settings, but these > >> ccode-s do not work properly. "ccode=ALL" causes channels 12 and 13 to > >> not be available, "ccode=XV" / "ccode=XT" may cause all 5GHz channels > >> to not be available. > >> > >> ccode="ALL" and ccode="XV" where already being replaced with ccode="X2" > >> with a bit of special handling for nvram settings coming from an EFI > >> variable. Extend this handling to also deal with nvram settings from > >> EFI variables which contain "ccode=XT", which has similar issues to > >> "ccode=XV". > >> > >> This fixes 5GHz wifi not working on the HP ElitePad 1000 G2. > >> > >> This was also tested on a Lenovo Thinkpad 8 tablet which also uses > >> "ccode=XT" and this causes no adverse effects there. > >> > >> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > > > > To me worldwide compatible settings mean that channels 12 and 13 should > > be disabled, so I'm quite hesitant about this patch. > > The X2 setting puts channel 12 and 13 in passive / listen-only modes > and only starts using them if there is an AP on them. > > AFAIK this is the same with the XT/XV settings. The problem is that the XT > setting results in 5G not being available on some boards even though the > hw supports it. > > Also note that we already use the X2 setting for any EFI supplied nvram > files where ccode=ALL or ccode=XV, this just extends the handling we > already have to also patch ccode=XT. I am not overly excited about this approach that is already in use. AFAIK these worldwide codes are tailored for specific devices/customers based on their RF components. Using it as fallback for other devices in such a generic way could even result in exceeding regulatory limits. However, I do not have a better solution for this. I am surprised to learn there are nvram out there with ccode=ALL as that is for internal use only, but if these devices has SROM than the nvram value is ignored. Hopefully, that is the case although given the fact that changing it to X2 helps suggests otherwise :-( Regards, Arend