diff options
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r-- | pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix | 69 | ||||
-rw-r--r-- | pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix | 41 | ||||
-rw-r--r-- | pkgs/os-specific/linux/ipu6-drivers/default.nix | 52 | ||||
-rw-r--r-- | pkgs/os-specific/linux/ivsc-driver/default.nix | 43 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/common-config.nix | 2 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-4.14.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-4.19.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-5.10.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-5.15.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-5.4.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-6.1.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-6.2.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-libre.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-testing.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/patches.nix | 9 |
15 files changed, 233 insertions, 19 deletions
diff --git a/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix b/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix new file mode 100644 index 00000000000..b8c9d9d0d43 --- /dev/null +++ b/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix @@ -0,0 +1,69 @@ +{ lib +, stdenv +, fetchFromGitHub + +# Pick one of +# - ipu6 (Tiger Lake) +# - ipu6ep (Alder Lake) +, ipuVersion ? "ipu6" +}: + +stdenv.mkDerivation { + pname = "${ipuVersion}-camera-bin"; + version = "unstable-2022-11-12"; + + src = fetchFromGitHub { + owner = "intel"; + repo = "ipu6-camera-bins"; + rev = "4694ba7ee51652d29ef41e7fde846b83a2a1c53b"; + hash = "sha256-XPT3dbV6Kl1/TEeiQESF4Q4s95hjtiv4VLlqlahQXqE="; + }; + + sourceRoot = "source/${ipuVersion}"; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp --no-preserve=mode --recursive \ + lib \ + include \ + $out/ + + install -D ../LICENSE $out/share/doc + + runHook postInstall + ''; + + postFixup = '' + for pcfile in $out/lib/pkgconfig/*.pc; do + substituteInPlace $pcfile \ + --replace 'exec_prefix=/usr' 'exec_prefix=''${prefix}' \ + --replace 'prefix=/usr' "prefix=$out" \ + --replace 'libdir=/usr/lib' 'libdir=''${prefix}/lib' \ + --replace 'includedir=/usr/include' 'includedir=''${prefix}/include' + done + ''; + + passthru = { + inherit ipuVersion; + }; + + meta = let + generation = { + ipu6 = "Tiger Lake"; + ipu6ep = "Alder Lake"; + }.${ipuVersion}; + in with lib; { + description = "${generation} IPU firmware and proprietary image processing libraries"; + homepage = "https://github.com/intel/ipu6-camera-bins"; + license = licenses.issl; + sourceProvenance = with sourceTypes; [ + binaryFirmware + ]; + maintainers = with maintainers; [ + hexa + ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix b/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix new file mode 100644 index 00000000000..fb2f940ddce --- /dev/null +++ b/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix @@ -0,0 +1,41 @@ +{ lib +, stdenv +, fetchFromGitHub +}: + +stdenv.mkDerivation { + pname = "ivsc-firmware"; + version = "unstable-2022-11-02"; + + src = fetchFromGitHub { + owner = "intel"; + repo = "ivsc-firmware"; + rev = "29c5eff4cdaf83e90ef2dcd2035a9cdff6343430"; + hash = "sha256-GuD1oTnDEs0HslJjXx26DkVQIe0eS+js4UoaTDa77ME="; + }; + + dontBuild = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib/firmware/vsc + cp --no-preserve=mode --recursive ./firmware/* $out/lib/firmware/vsc/ + install -D ./LICENSE $out/share/doc + + runHook postInstall + ''; + + meta = with lib; { + description = "Firmware binaries for the Intel Vision Sensing Controller"; + homepage = "https://github.com/intel/ivsc-firmware"; + license = licenses.issl; + sourceProvenance = with sourceTypes; [ + binaryFirmware + ]; + maintainers = with maintainers; [ + hexa + ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/os-specific/linux/ipu6-drivers/default.nix b/pkgs/os-specific/linux/ipu6-drivers/default.nix new file mode 100644 index 00000000000..155e384a119 --- /dev/null +++ b/pkgs/os-specific/linux/ipu6-drivers/default.nix @@ -0,0 +1,52 @@ +{ lib +, stdenv +, fetchFromGitHub +, ivsc-driver +, kernel +}: + +stdenv.mkDerivation rec { + pname = "ipu6-drivers"; + version = "unstable-2023-01-17"; + + src = fetchFromGitHub { + owner = "intel"; + repo = pname; + rev = "f83b0747b297cc42325668aaf69471d89253b88e"; + hash = "sha256-yl2ZtJUTh1/qmTA8USd+FBCUAY5qNdh4bSvFRPImQNI="; + }; + + postPatch = '' + cp --no-preserve=mode --recursive --verbose \ + ${ivsc-driver.src}/backport-include \ + ${ivsc-driver.src}/drivers \ + ${ivsc-driver.src}/include \ + . + ''; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + makeFlags = kernel.makeFlags ++ [ + "KERNELRELEASE=${kernel.modDirVersion}" + "KERNEL_SRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + ]; + + enableParallelBuilding = true; + + preInstall = '' + sed -i -e "s,INSTALL_MOD_DIR=,INSTALL_MOD_PATH=$out INSTALL_MOD_DIR=," Makefile + ''; + + installTargets = [ + "modules_install" + ]; + + meta = { + homepage = "https://github.com/intel/ipu6-drivers"; + description = "IPU6 kernel driver"; + license = lib.licenses.gpl2; + maintainers = with lib.maintainers; [ hexa ]; + platforms = [ "x86_64-linux" ]; + broken = kernel.kernelOlder "5.15"; + }; +} diff --git a/pkgs/os-specific/linux/ivsc-driver/default.nix b/pkgs/os-specific/linux/ivsc-driver/default.nix new file mode 100644 index 00000000000..fbcf6195535 --- /dev/null +++ b/pkgs/os-specific/linux/ivsc-driver/default.nix @@ -0,0 +1,43 @@ +{ lib +, stdenv +, fetchFromGitHub +, kernel +}: + +stdenv.mkDerivation rec { + pname = "ivsc-drivers"; + version = "unstable-2023-01-06"; + + src = fetchFromGitHub { + owner = "intel"; + repo = "ivsc-driver"; + rev = "94ecb88b3ac238d9145ac16230d6e0779bb4fd32"; + hash = "sha256-Q7iyKw4WFSX42E4AtoW/zYRKpknWZSU66V5VPAx6AjA="; + }; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + makeFlags = kernel.makeFlags ++ [ + "KERNELRELEASE=${kernel.modDirVersion}" + "KERNEL_SRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + ]; + + enableParallelBuilding = true; + + preInstall = '' + sed -i -e "s,INSTALL_MOD_DIR=,INSTALL_MOD_PATH=$out INSTALL_MOD_DIR=," Makefile + ''; + + installTargets = [ + "modules_install" + ]; + + meta = { + homepage = "https://github.com/intel/ivsc-drivers"; + description = "Intel Vision Sensing Controller kernel driver"; + license = lib.licenses.gpl2; + maintainers = with lib.maintainers; [ hexa ]; + platforms = [ "x86_64-linux" ]; + broken = kernel.kernelOlder "5.15"; + }; +} diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index bbd743b4dfc..4b1318d9115 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -285,7 +285,7 @@ let video = { DRM_LEGACY = no; - NOUVEAU_LEGACY_CTX_SUPPORT = whenAtLeast "5.2" no; + NOUVEAU_LEGACY_CTX_SUPPORT = whenBetween "5.2" "6.3" no; # Allow specifying custom EDID on the kernel command line DRM_LOAD_EDID_FIRMWARE = yes; diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix index 612665fdfe3..695b3a83dd9 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "4.14.307"; + version = "4.14.308"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "00dp0vj9572ig4zsnmhl2a2v5vx40hnjibyifw24x1q6qdaia72f"; + sha256 = "19lkw0izj0i63grzycvz6pdxvih0q7lml0h30zsxzb4vb7yj0v7i"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix index d07a496046b..5c083d7d530 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.19.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "4.19.275"; + version = "4.19.276"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "02l6f5y1cbjc9997lmcak5j8dllkzr8q47nqscqsyvz2c2hnzsdg"; + sha256 = "1f8lcd47pba4jfycbbrd8vsqpf038x19rf80g3grzpvsgyaq1k1f"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.10.nix b/pkgs/os-specific/linux/kernel/linux-5.10.nix index 53758bd5ec2..7a4ed4be995 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.10.172"; + version = "5.10.173"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1c9757gma0dksd1ch8pljbsmf586bq66gxqpsv53676z8kivl3gj"; + sha256 = "099w115m2b1l99r4pn7ifjg6aqb8rsn888102qj8iv97qxsb901l"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.15.nix b/pkgs/os-specific/linux/kernel/linux-5.15.nix index 482881facd5..fcda80e6875 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.15.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.15.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.15.99"; + version = "5.15.101"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "0ih3pqxv8kwc8awkd7f5cib9zdnmz6hczqfcz62s7bppjchbicwr"; + sha256 = "0bf0s3qw1k0p13f5cnircajfyr3j22yp9jx4l62iarxbn1k20fdr"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix index cb006eddfa7..8ad01e4ae3a 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.4.234"; + version = "5.4.235"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1489jnp4vb8p879hq1nx3xgyzjdwj1zalk3x4vcbnc9f7yrrrixc"; + sha256 = "1yqlvfw15mvmn6fh7gpck799pw4a2sip52ar9ammi0qdp96x1gxq"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-6.1.nix b/pkgs/os-specific/linux/kernel/linux-6.1.nix index 4eb27cb0af9..61b4835849d 100644 --- a/pkgs/os-specific/linux/kernel/linux-6.1.nix +++ b/pkgs/os-specific/linux/kernel/linux-6.1.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "6.1.16"; + version = "6.1.18"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz"; - sha256 = "1id3dn0p724yp3n4wqk6bhs21yjhqihiilkagfh1am8bb1arr156"; + sha256 = "07hlmv00wqi7497c3y6w7494qsxgd97kzy7xa30v0vqfzxgc2al4"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-6.2.nix b/pkgs/os-specific/linux/kernel/linux-6.2.nix index 1fbdb1ff9e5..e2e9e74a0a6 100644 --- a/pkgs/os-specific/linux/kernel/linux-6.2.nix +++ b/pkgs/os-specific/linux/kernel/linux-6.2.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "6.2.3"; + version = "6.2.5"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = versions.pad 3 version; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz"; - sha256 = "091r0rjj5ba50kiq96099w79ayzcdy6qyzgkmw10hxqkzia0nvdk"; + sha256 = "1fg5rq40fi7xkx3pw54538gydygbizg492aqfnh0hn3fry903av5"; }; } // (args.argsOverride or { })) diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix index 7e3ffb4720a..59622c62702 100644 --- a/pkgs/os-specific/linux/kernel/linux-libre.nix +++ b/pkgs/os-specific/linux/kernel/linux-libre.nix @@ -1,8 +1,8 @@ { stdenv, lib, fetchsvn, linux , scripts ? fetchsvn { url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; - rev = "19049"; - sha256 = "0873qyk69p8hr91qjaq5rd9z2i6isd3yq3slh1my5y33gc7d3bj2"; + rev = "19102"; + sha256 = "1w9zl7grws1nzq4zp4mj1v5a6akqwkzy9lf0wwdar68jbxav3fvf"; } , ... }: diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index cef442ad20c..356f811974f 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "6.2-rc6"; + version = "6.3-rc1"; extraMeta.branch = lib.versions.majorMinor version; # modDirVersion needs to be x.y.z, will always add .0 @@ -11,7 +11,7 @@ buildLinux (args // rec { src = fetchurl { url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; - hash = "sha256-rEpJYw5O6OHSwNY8LxlCsw0p9+u9BUjTQ8FsB6+fLbc="; + hash = "sha256-oZhG9dYlRthT4TbRNuJ+/Kw/mRuGTIu2E9Dw5ge+xCo="; }; # Should the testing kernels ever be built on Hydra? diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 5912abf4181..68436fbf97a 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -62,4 +62,13 @@ name = "fix-em-ice-bonding"; patch = ./fix-em-ice-bonding.patch; }; + + # https://lore.kernel.org/linux-wireless/ZAx0TWRBlGfv7pNl@kroah.com/T/#m11e6e0915ab8fa19ce8bc9695ab288c0fe018edf + fix-brcmfmac = { + name = "fix-brcmfmac"; + patch = fetchpatch { + url = "https://lore.kernel.org/linux-wireless/20230311141914.24444-1-marcan@marcan.st/raw"; + sha256 = "sha256-Fjap48Lef8Mi1i0t13/rT2SoYcbO8HJuXhJMn7HK3Ds="; + }; + }; } |