forked from DGNum/liminix
mac80211: support ath9k pci variant
if you ask for "ath9k" you get AHB, but if you ask for "atk9k_pci" now you get PCI. Note that the kernel module name is the same in both cases.
This commit is contained in:
parent
a8f98ccfe7
commit
e35b61b68c
1 changed files with 22 additions and 14 deletions
|
@ -25,47 +25,52 @@ let
|
||||||
inherit (liminix.services) oneshot longrun;
|
inherit (liminix.services) oneshot longrun;
|
||||||
inherit (lib.lists) foldl;
|
inherit (lib.lists) foldl;
|
||||||
configs = {
|
configs = {
|
||||||
ath9k = {
|
ath9k.kconfig = {
|
||||||
WLAN_VENDOR_ATH = "y";
|
WLAN_VENDOR_ATH = "y";
|
||||||
ATH_COMMON = "m";
|
ATH_COMMON = "m";
|
||||||
ATH9K = "m";
|
ATH9K = "m";
|
||||||
ATH9K_AHB = "y";
|
ATH9K_AHB = "y";
|
||||||
# ATH9K_DEBUGFS = "y";
|
|
||||||
# ATH_DEBUG = "y";
|
|
||||||
BACKPORTED_ATH9K_AHB = "y";
|
BACKPORTED_ATH9K_AHB = "y";
|
||||||
};
|
};
|
||||||
ath10k_pci = {
|
ath9k_pci = {
|
||||||
|
module = "ath9k";
|
||||||
|
kconfig = {
|
||||||
|
WLAN_VENDOR_ATH = "y";
|
||||||
|
ATH_COMMON = "m";
|
||||||
|
ATH9K = "m";
|
||||||
|
ATH9K_PCI = "y";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ath10k_pci.kconfig = {
|
||||||
WLAN_VENDOR_ATH = "y";
|
WLAN_VENDOR_ATH = "y";
|
||||||
ATH_COMMON = "m";
|
ATH_COMMON = "m";
|
||||||
ATH10K = "m";
|
ATH10K = "m";
|
||||||
# BACKPORTED_ATH10K_AHB = "y";
|
|
||||||
# ATH10K_AHB = "y";
|
|
||||||
ATH10K_PCI = "y";
|
ATH10K_PCI = "y";
|
||||||
ATH10K_DEBUG = "y";
|
ATH10K_DEBUG = "y";
|
||||||
};
|
};
|
||||||
rt2800soc = {
|
rt2800soc.kconfig = {
|
||||||
WLAN_VENDOR_RALINK = "y";
|
WLAN_VENDOR_RALINK = "y";
|
||||||
RT2800SOC = "m";
|
RT2800SOC = "m";
|
||||||
RT2X00 = "m";
|
RT2X00 = "m";
|
||||||
};
|
};
|
||||||
mt7603e = { # XXX find a better name for this
|
mt7603e.kconfig = { # XXX find a better name for this
|
||||||
WLAN_VENDOR_RALINK = "y";
|
WLAN_VENDOR_RALINK = "y";
|
||||||
WLAN_VENDOR_MEDIATEK = "y";
|
WLAN_VENDOR_MEDIATEK = "y";
|
||||||
MT7603E = "y";
|
MT7603E = "y";
|
||||||
};
|
};
|
||||||
|
|
||||||
mt7915e = {
|
mt7915e.kconfig = {
|
||||||
MT7915E = "m";
|
MT7915E = "m";
|
||||||
};
|
};
|
||||||
mt7615e = {
|
mt7615e.kconfig = {
|
||||||
MT7615E = "m";
|
MT7615E = "m";
|
||||||
MT7622_WMAC = "y";
|
MT7622_WMAC = "y";
|
||||||
};
|
};
|
||||||
mac80211_hwsim = {
|
mac80211_hwsim.kconfig = {
|
||||||
MAC80211_HWSIM = "y";
|
MAC80211_HWSIM = "y";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
kconfig = (foldl (config: d: (config // configs.${d})) {
|
kconfig = (foldl (config: d: (config // configs.${d}.kconfig)) {
|
||||||
WLAN = "y";
|
WLAN = "y";
|
||||||
CFG80211 = "m";
|
CFG80211 = "m";
|
||||||
MAC80211 = "m";
|
MAC80211 = "m";
|
||||||
|
@ -82,7 +87,6 @@ let
|
||||||
CFG80211_CRDA_SUPPORT = "n";
|
CFG80211_CRDA_SUPPORT = "n";
|
||||||
|
|
||||||
MAC80211_MESH = "y";
|
MAC80211_MESH = "y";
|
||||||
|
|
||||||
} drivers) // extraConfig;
|
} drivers) // extraConfig;
|
||||||
|
|
||||||
writeConfig = name : config: writeText name
|
writeConfig = name : config: writeText name
|
||||||
|
@ -162,7 +166,11 @@ let
|
||||||
find . -name \*.ko | cpio --make-directories -p $out/lib/modules/0.0
|
find . -name \*.ko | cpio --make-directories -p $out/lib/modules/0.0
|
||||||
depmod -b $out -v 0.0
|
depmod -b $out -v 0.0
|
||||||
touch $out/load.sh
|
touch $out/load.sh
|
||||||
for i in ${lib.concatStringsSep " " drivers}; do
|
for i in ${lib.concatStringsSep " "
|
||||||
|
(map
|
||||||
|
(d: let c = { module = d; } // configs.${d} ;
|
||||||
|
in c.module)
|
||||||
|
drivers)}; do
|
||||||
modprobe -S 0.0 -d $out --show-depends $i >> $out/load.sh
|
modprobe -S 0.0 -d $out --show-depends $i >> $out/load.sh
|
||||||
done
|
done
|
||||||
tac < $out/load.sh | sed 's/^insmod/rmmod/g' > $out/unload.sh
|
tac < $out/load.sh | sed 's/^insmod/rmmod/g' > $out/unload.sh
|
||||||
|
|
Loading…
Reference in a new issue