Compare commits

...

5 commits

Author SHA1 Message Date
oddib b7e70664db
Merge 821388910a into 52113c4f5c 2025-11-07 08:29:58 -05: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
Oddbjørn Rønnestad 821388910a
added hardware config for galaxybook 2 pro 2025-09-19 17:45:25 +02:00
9 changed files with 96 additions and 8 deletions

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

@ -396,6 +396,7 @@
rock-pi-e = import ./radxa/rock-pi-e; rock-pi-e = import ./radxa/rock-pi-e;
kobol-helios4 = import ./kobol/helios4; kobol-helios4 = import ./kobol/helios4;
samsung-np900x3c = import ./samsung/np900x3c; samsung-np900x3c = import ./samsung/np900x3c;
samsung-galaxybook-2-pro= import ./samsung/galaxybook-2-pro;
slimbook-hero-rpl-rtx = import ./slimbook/hero/rpl-rtx; slimbook-hero-rpl-rtx = import ./slimbook/hero/rpl-rtx;
starfive-visionfive-v1 = import ./starfive/visionfive/v1; starfive-visionfive-v1 = import ./starfive/visionfive/v1;
starfive-visionfive-2 = import ./starfive/visionfive/v2; starfive-visionfive-2 = import ./starfive/visionfive/v2;

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

@ -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"
]; ];
}; };

View file

@ -0,0 +1,48 @@
###
# Kernel module by Joshua Grisham, added features in readme
# https://github.com/joshuagrisham/samsung-galaxybook-extras
# only use it for kernel versions <6.14 default is disabled but you can deactivate with:
# hardware.samsung-galaxybook.enableKmod = false;
{
lib,
pkgs,
config,
...
}: let
kernel_version_compatible = lib.versionOlder config.boot.kernelPackages.kernel.version "6.14";
in {
imports = [
../../common/cpu/intel/alder-lake
../../common/gpu/intel/alder-lake
../../common/pc/ssd
../../common/pc/laptop
];
options.hardware.samsung-galaxybook.enableKmod =
(
lib.mkEnableOption
"Enable the community created Samsung Galaxy Book kernel module that allows for additional features and functionality"
)
// {
default = kernel_version_compatible;
defaultText = "enabled by default on kernel < 6.14";
};
config = lib.mkMerge [
(
lib.mkIf config.hardware.samsung-galaxybook.enableKmod {
boot.extraModulePackages = [
(pkgs.callPackage ./kernel-module.nix {
kernel = config.boot.kernelPackages.kernel;
})
];
}
)
{
boot.kernelModules = ["kvm-intel"];
boot.kernelParams = ["i915.enable_dpcd_backlight=3"];
boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"];
services.fprintd.enable = lib.mkDefault true;
}
];
}

View file

@ -0,0 +1,39 @@
{ stdenv, kernel, fetchFromGitHub, lib }:
stdenv.mkDerivation rec {
pname = "samsung-galaxybook-module";
version = "unstable-2025-01-29";
src = fetchFromGitHub {
owner = "joshuagrisham";
repo = "samsung-galaxybook-extras";
rev = "pre-6.14"; # or specific commit hash
hash = "sha256-srCGcmUI5ZKjndIWhSptG3hVkAo0dvDjJ4NoUkutaIA=";
};
nativeBuildInputs = [ kernel.dev ];
buildInputs = [ kernel ];
KERNEL_VERSION = kernel.modDirVersion;
KERNEL_SRC = "${kernel.dev}/lib/modules/${KERNEL_VERSION}/build";
INSTALL_MOD_PATH = placeholder "out";
buildPhase = ''
runHook preBuild
make -C $KERNEL_SRC M=$PWD modules
runHook postBuild
'';
installPhase = ''
runHook preInstall
make -C $KERNEL_SRC M=$PWD modules_install
runHook postInstall
'';
meta = with lib; {
description = "Kernel module for Samsung Galaxybook devices";
homepage = "https://github.com/joshuagrisham/samsung-galaxybook-extras";
platforms = platforms.linux;
broken = lib.versionAtLeast kernel.version "6.14";
};
}