summaryrefslogtreecommitdiff
path: root/lib/systems
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2026-02-02 12:10:28 +0000
committerGitHub <noreply@github.com>2026-02-02 12:10:28 +0000
commit95c8d1ec1e51571a37a484eaa4e7ab7af6c5aa7f (patch)
tree127dd7a764162367ca4013439224f5ea7068788d /lib/systems
parentMerge master into staging-nixos (diff)
parentlinux: Build-in i2c-powermac on ppc64 systems (diff)
downloadnixpkgs-95c8d1ec1e51571a37a484eaa4e7ab7af6c5aa7f.tar.gz
lib/systems/platforms: Add ppc64; linux: Add 64-bit POWER settings, strip vmlinux kernels (#447752)
Diffstat (limited to 'lib/systems')
-rw-r--r--lib/systems/platforms.nix26
1 files changed, 15 insertions, 11 deletions
diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix
index c0b893fdf361..d34eed4c38b9 100644
--- a/lib/systems/platforms.nix
+++ b/lib/systems/platforms.nix
@@ -22,6 +22,10 @@ rec {
linux-kernel.autoModules = false;
};
+ ##
+ ## POWER
+ ##
+
powernv = {
linux-kernel = {
name = "PowerNV";
@@ -29,16 +33,16 @@ rec {
baseConfig = "powernv_defconfig";
target = "vmlinux";
autoModules = true;
- # avoid driver/FS trouble arising from unusual page size
- extraConfig = ''
- PPC_64K_PAGES n
- PPC_4K_PAGES y
- IPV6 y
+ };
+ };
- ATA_BMDMA y
- ATA_SFF y
- VIRTIO_MENU y
- '';
+ ppc64 = {
+ linux-kernel = {
+ name = "powerpc64";
+
+ baseConfig = "ppc64_defconfig";
+ target = "vmlinux";
+ autoModules = true;
};
};
@@ -625,8 +629,8 @@ rec {
else if platform.parsed.cpu == lib.systems.parse.cpuTypes.mipsel then
(import ./examples.nix { inherit lib; }).mipsel-linux-gnu
- else if platform.parsed.cpu == lib.systems.parse.cpuTypes.powerpc64le then
- powernv
+ else if platform.isPower64 then
+ if platform.isLittleEndian then powernv else ppc64
else if platform.isLoongArch64 then
loongarch64-multiplatform