about summary refs log tree commit diff
path: root/modules/hardware/t100ha/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/hardware/t100ha/default.nix')
-rw-r--r--modules/hardware/t100ha/default.nix12
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/hardware/t100ha/default.nix b/modules/hardware/t100ha/default.nix
index 3a209777..a1fc746d 100644
--- a/modules/hardware/t100ha/default.nix
+++ b/modules/hardware/t100ha/default.nix
@@ -8,6 +8,15 @@ in {
   options.vuizvui.hardware.t100ha.enable = lib.mkEnableOption desc;
 
   config = lib.mkIf cfg.enable {
+    hardware.firmware = lib.singleton (pkgs.runCommand "brcm43340-firmware" {
+      params = ./brcmfmac43340-sdio.txt;
+      fwbase = "lib/firmware/brcm/brcmfmac43340-sdio";
+      install = "install -vD -m 0644";
+    } ''
+      $install "${pkgs.firmwareLinuxNonfree}/$fwbase.bin" "$out/$fwbase.bin"
+      $install "$params" "$out/$fwbase.txt"
+    '');
+
     boot.kernelPackages = let
       nixpkgs = import ../../../nixpkgs-path.nix;
       t100haKernel = pkgs.linux_4_7.override {
@@ -18,6 +27,9 @@ in {
           { name = "meta-keys";
             patch = ./meta-keys.patch;
           }
+          { name = "sdio";
+            patch = ./sdio.patch;
+          }
         ];
 
         # Missing device drivers: