Compare commits

...

5 commits

Author SHA1 Message Date
Karolis Stasaitis 7c5eb686dc
Merge 5051632234 into 52113c4f5c 2025-11-06 23:25:41 +01:00
Jörg Thalheim 52113c4f5c
Merge pull request #1668 from concatime/fix/rename-modules
Rename some modules to their correct names
2025-11-06 21:07:11 +00:00
Issam E. Maghni fc4c7c6ec7 meta: rename module to pcie-brcmstb
https://github.com/torvalds/linux/blob/v6.17/drivers/pci/controller/Makefile#L37
2025-11-06 15:05:04 -05:00
Issam E. Maghni 744975050f meta: rename module to usb-storage
https://github.com/torvalds/linux/blob/v6.17/drivers/usb/storage/Kconfig#L23-L24
> To compile this driver as a module, choose M here: the
> module will be called usb-storage.
2025-11-06 15:05:04 -05:00
Karolis Stasaitis 5051632234 intel/compute-stick/stck1a: init 2025-10-18 14:29:24 +02:00
12 changed files with 103 additions and 8 deletions

View file

@ -235,6 +235,7 @@ See code for all available configurations.
| [HP Probook 460G11](hp/probook/460g11) | `<nixos-hardware/hp/probook/460g11>` | `hp-probook-46011` | | [HP Probook 460G11](hp/probook/460g11) | `<nixos-hardware/hp/probook/460g11>` | `hp-probook-46011` |
| [Huawei Matebook X Pro (2020)](huawei/machc-wa) | `<nixos-hardware/huawei/machc-wa>` | `huawei-machc-wa` | | [Huawei Matebook X Pro (2020)](huawei/machc-wa) | `<nixos-hardware/huawei/machc-wa>` | `huawei-machc-wa` |
| [i.MX8QuadMax Multisensory Enablement Kit](nxp/imx8qm-mek/) | `<nixos-hardware/nxp/imx8qm-mek>` | `nxp-imx8qm-mek` | | [i.MX8QuadMax Multisensory Enablement Kit](nxp/imx8qm-mek/) | `<nixos-hardware/nxp/imx8qm-mek>` | `nxp-imx8qm-mek` |
| [Intel Compute Stick STCK1A](intel/compute-stick/stck1a/) | `<nixos-hardware/intel/compute-stick/stck1a>` | `intel-compute-stick-stck1a` |
| [Intel NUC 5i5RYB](intel/nuc/5i5ryb/) | `<nixos-hardware/intel/nuc/5i5ryb>` | `intel-nuc-5i5ryb` | | [Intel NUC 5i5RYB](intel/nuc/5i5ryb/) | `<nixos-hardware/intel/nuc/5i5ryb>` | `intel-nuc-5i5ryb` |
| [Intel NUC 8i7BEH](intel/nuc/8i7beh/) | `<nixos-hardware/intel/nuc/8i7beh>` | `intel-nuc-8i7beh` | | [Intel NUC 8i7BEH](intel/nuc/8i7beh/) | `<nixos-hardware/intel/nuc/8i7beh>` | `intel-nuc-8i7beh` |
| [Kobol Helios4](kobol/helios4) | `<nixos-hardware/kobol/helios4>` | `kobol-helios-4` | | [Kobol Helios4](kobol/helios4) | `<nixos-hardware/kobol/helios4>` | `kobol-helios-4` |

View file

@ -15,7 +15,7 @@
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = [
"xhci_pci" "xhci_pci"
"ahci" "ahci"
"usb_storage" "usb-storage"
"sd_mod" "sd_mod"
"rtsx_pci_sdmmc" "rtsx_pci_sdmmc"
]; ];

View file

@ -199,6 +199,7 @@
hp-laptop-14s-dq2024nf = import ./hp/laptop/14s-dq2024nf; hp-laptop-14s-dq2024nf = import ./hp/laptop/14s-dq2024nf;
huawei-machc-wa = import ./huawei/machc-wa; huawei-machc-wa = import ./huawei/machc-wa;
hp-notebook-14-df0023 = import ./hp/notebook/14-df0023; hp-notebook-14-df0023 = import ./hp/notebook/14-df0023;
intel-compute-stick-stck1a = import ./intel/compute-stick/stck1a;
intel-nuc-5i5ryb = import ./intel/nuc/5i5ryb; intel-nuc-5i5ryb = import ./intel/nuc/5i5ryb;
intel-nuc-8i7beh = import ./intel/nuc/8i7beh; intel-nuc-8i7beh = import ./intel/nuc/8i7beh;
lenovo-ideacentre-k330 = import ./lenovo/ideacentre/k330; lenovo-ideacentre-k330 = import ./lenovo/ideacentre/k330;

View file

@ -13,7 +13,7 @@
"xhci_pci" "xhci_pci"
"ahci" "ahci"
"nvme" "nvme"
"usb_storage" "usb-storage"
"sd_mod" "sd_mod"
"rtsx_pci_sdmmc" "rtsx_pci_sdmmc"
]; ];

View file

@ -0,0 +1,8 @@
# Intel Compute Stick (STCK1A)
## Supported Devices
* STCK1A32WFC
* STCK1A32WFCR
* STCK1A32WFCL
* STCK1A8LFC

View file

@ -0,0 +1,8 @@
{ lib, pkgs, ... }:
{
imports = [
../../../common/cpu/intel/bay-trail
./sd-slot-fix.nix
];
}

View file

@ -0,0 +1,29 @@
DefinitionBlock ("sd-slot-cd-gpio-fix.aml", "SSDT", 5, "NIXOS", "SDHDFIX", 0x00000001)
{
External (\_SB.SDHD, DeviceObj)
Scope (\_SB.SDHD)
{
Name (_DSD, Package ()
{
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package ()
{
/*
* The sdhci-acpi driver expects a cd (card-detect) GPIO
* from the first Gpio/GpioInt entry in the device's _CRS.
*
* Unfortunately, the first entry is a GpioInt, which the driver
* cannot use for card detection (it only supports plain Gpio).
*
* As a result, the driver fails to detect the SD card.
*
* This SSDT patch explicitly directs the driver to use
* the second Gpio resource (index 1), which is the correct
* Gpio entry for card detection.
*/
Package () { "gpios", Package () { ^SDHD, 1, 0, 0 } },
}
})
}
}

View file

@ -0,0 +1,48 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.hardware.intel.compute-stick.stck1a.sd-slot-fix;
sd-slot-fix-overlay-initrd = pkgs.stdenv.mkDerivation {
name = "sd-slot-fix-overlay-initrd";
src = ./dsl;
phases = [
"unpackPhase"
"installPhase"
];
nativeBuildInputs = with pkgs; [
acpica-tools
cpio
];
installPhase = ''
mkdir -p kernel/firmware/acpi
iasl -sa sd-slot-cd-gpio-fix.dsl
cp sd-slot-cd-gpio-fix.aml kernel/firmware/acpi/
find kernel | cpio -H newc --create > $out
'';
};
in
{
options.hardware = {
intel.compute-stick.stck1a.sd-slot-fix = {
enable = lib.mkEnableOption ''
fix for the Intel Compute Stick STCK1A SD slot.
'';
};
};
config = lib.mkIf cfg.enable {
boot.initrd.prepend = [
(toString sd-slot-fix-overlay-initrd)
];
};
}

View file

@ -14,7 +14,7 @@ lib.mkIf config.hardware.librem5.customInitrdModules {
"tps6598x" "tps6598x"
"xhci_hcd" "xhci_hcd"
"usbcore" "usbcore"
"usb_storage" "usb-storage"
"uas" "uas"
"xhci_plat_hcd" "xhci_plat_hcd"
]; ];
@ -56,7 +56,7 @@ lib.mkIf config.hardware.librem5.customInitrdModules {
"tps6598x" "tps6598x"
"xhci_hcd" "xhci_hcd"
"usbcore" "usbcore"
"usb_storage" "usb-storage"
"uas" "uas"
"xhci_plat_hcd" "xhci_plat_hcd"
]; ];

View file

@ -9,7 +9,7 @@
kernelPackages = lib.mkDefault pkgs.linuxKernel.packages.linux_rpi3; kernelPackages = lib.mkDefault pkgs.linuxKernel.packages.linux_rpi3;
initrd.availableKernelModules = [ initrd.availableKernelModules = [
"usbhid" "usbhid"
"usb_storage" "usb-storage"
]; ];
}; };

View file

@ -31,9 +31,9 @@
kernelPackages = lib.mkDefault pkgs.linuxKernel.packages.linux_rpi4; kernelPackages = lib.mkDefault pkgs.linuxKernel.packages.linux_rpi4;
initrd.availableKernelModules = [ initrd.availableKernelModules = [
"usbhid" "usbhid"
"usb_storage" "usb-storage"
"vc4" "vc4"
"pcie_brcmstb" # required for the pcie bus to work "pcie-brcmstb" # required for the pcie bus to work
"reset-raspberrypi" # required for vl805 firmware to load "reset-raspberrypi" # required for vl805 firmware to load
] ]
++ lib.optional config.boot.initrd.network.enable "genet"; ++ lib.optional config.boot.initrd.network.enable "genet";

View file

@ -16,7 +16,7 @@ in
initrd.availableKernelModules = [ initrd.availableKernelModules = [
"nvme" "nvme"
"usbhid" "usbhid"
"usb_storage" "usb-storage"
]; ];
}; };