On 20/07/2021 04:21, Katherine Cox-Buday wrote: > I think this is because the EEPROM on the card is set as global. What > am I missing? Do you know how Linux intend for people to notify the > stack that this is an OK thing to do? I know projects like OpenWRT > carry patches to the driver, but I keep thinking surely this is not > the only way. https://github.com/pcengines/apu2-documentation/issues/189 tracks this issue for PC Engines, which retails wireless cards whose EEPROM uses a global region. My poor understanding is that Linux does not offer a way for end users to override the EEPROM, per "It should be reasonably impossible for a user to fail to comply with local regulations either unwittingly or by accident."[0] It looks like the two supported ways to set regulatory domain are: * a card vendor/retailer that performs certification, and flashes the EEPROM. * a system integrator (e.g. off-the-shelf wireless routers, mobile phones, etc.) that performs certification and sets CONFIG_CFG80211_CERTIFICATION_ONUS. Linux does offer a way to indicate your current region via CRDA[1], but this is for the "travelling in another country" usecase, and acts to restrict the driver to intersection(EEPROM, country). 0. https://wireless.wiki.kernel.org/en/developers/regulatory/statement 1. https://wireless.wiki.kernel.org/en/developers/regulatory