diff options
author | Thomas Kerber <tk@drwx.org> | 2019-08-17 17:42:22 +0100 |
---|---|---|
committer | Thomas Kerber <tk@drwx.org> | 2019-09-17 04:05:16 +0100 |
commit | cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0 (patch) | |
tree | bf311377d69ed13987867bdc75ba1be92a3f9e71 /pkgs/os-specific/linux | |
parent | 7f523f4d7e1f6eea06094e59ab6f55730ec0eb2e (diff) | |
download | nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.tar nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.tar.gz nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.tar.bz2 nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.tar.lz nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.tar.xz nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.tar.zst nixlib-cc5baf2d8671d2f2dd9e00fc8bbc96d769ec27e0.zip |
Various: Add support for raspberry pi 4.
Diffstat (limited to 'pkgs/os-specific/linux')
4 files changed, 30 insertions, 20 deletions
diff --git a/pkgs/os-specific/linux/device-tree/raspberrypi.nix b/pkgs/os-specific/linux/device-tree/raspberrypi.nix index a77200a68f7d..5e99e870ac83 100644 --- a/pkgs/os-specific/linux/device-tree/raspberrypi.nix +++ b/pkgs/os-specific/linux/device-tree/raspberrypi.nix @@ -11,7 +11,7 @@ stdenvNoCC.mkDerivation { cp ${raspberrypifw}/share/raspberrypi/boot/bcm*.dtb . - cp bcm2708-rpi-0-w.dtb bcm2835-rpi-zero-w.dtb + cp bcm2708-rpi-zero-w.dtb bcm2835-rpi-zero-w.dtb cp bcm2708-rpi-b.dtb bcm2835-rpi-a.dtb cp bcm2708-rpi-b.dtb bcm2835-rpi-b.dtb cp bcm2708-rpi-b.dtb bcm2835-rpi-b-rev2.dtb @@ -23,6 +23,7 @@ stdenvNoCC.mkDerivation { cp bcm2710-rpi-3-b.dtb bcm2837-rpi-3-b.dtb cp bcm2710-rpi-3-b-plus.dtb bcm2837-rpi-3-b-plus.dtb cp bcm2710-rpi-cm3.dtb bcm2837-rpi-cm3.dtb + cp bcm2711-rpi-4-b.dtb bcm2838-rpi-4-b.dtb ''; passthru = { diff --git a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix index e9ee91a2de7b..392ddda6f573 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix @@ -2,22 +2,22 @@ stdenv.mkDerivation { pname = "raspberrypi-wireless-firmware"; - version = "2018-08-20"; + version = "2019-08-16"; srcs = [ (fetchFromGitHub { name = "bluez-firmware"; owner = "RPi-Distro"; repo = "bluez-firmware"; - rev = "ade2bae1aaaebede09abb8fb546f767a0e4c7804"; - sha256 = "07gm76gxp5anv6paryvxcp34a86fkny8kdlzqhzcpfczzglkp6ag"; + rev = "96eefffcccc725425fd83be5e0704a5c32b79e54"; + sha256 = "05h57gcxhb2c84h99cyxxx4mzi6kd5fm8pjqkz3nq5vs3nv8cqhr"; }) (fetchFromGitHub { name = "firmware-nonfree"; owner = "RPi-Distro"; repo = "firmware-nonfree"; - rev = "b518de45ced519e8f7a499f4778100173402ae43"; - sha256 = "1d5026ic9awji6c67irpwsxpxgsc0dhn11d3abkxi2vvra1pir4g"; + rev = "130cb86fa30cafbd575d38865fa546350d4c5f9c"; + sha256 = "0jmhgbpldzz8n8lncpzwfl5ym8zgss05y952rfpwcf9v5c7vgabx"; }) ]; @@ -41,7 +41,7 @@ stdenv.mkDerivation { outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "1s5gb00v42s5izbaw8irs1fwvhh7z9wl07czc0nkw6p91871ivb7"; + outputHash = "1r4alf1fbj6vkkf54d0anm47ymb6gn2ykl4a2hhd34b0hnf1dnhn"; meta = with stdenv.lib; { description = "Firmware for builtin Wifi/Bluetooth devices in the Raspberry Pi 3 and Zero W"; diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix index ebd69d1fe12b..98cf56f799ef 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "raspberrypi-firmware"; - version = "1.20190620+1"; + version = "1.20190819"; src = fetchFromGitHub { owner = "raspberrypi"; repo = "firmware"; rev = version; - sha256 = "0gbqlkr50qlmbpwr0n61pb58w0k3sfjfirh2y683rlkp5rlq7mrf"; + sha256 = "0qzpc092qg748i5s23xa1jk6qpga9wn0441r2awsz0apkysqx5fj"; }; installPhase = '' diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix index 1b4700a2e392..0ec879268e9b 100644 --- a/pkgs/os-specific/linux/kernel/linux-rpi.nix +++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix @@ -1,8 +1,8 @@ -{ stdenv, lib, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: +{ stdenv, lib, buildPackages, fetchFromGitHub, perl, buildLinux, rpiVersion, ... } @ args: let - modDirVersion = "4.14.98"; - tag = "1.20190215"; + modDirVersion = "4.19.71"; + tag = "1.20190906"; in lib.overrideDerivation (buildLinux (args // { version = "${modDirVersion}-${tag}"; @@ -11,25 +11,33 @@ lib.overrideDerivation (buildLinux (args // { src = fetchFromGitHub { owner = "raspberrypi"; repo = "linux"; - rev = "raspberrypi-kernel_${tag}-1"; - sha256 = "1gc4x7p82m2v1jhahhyl7qfdkflj71ly6p0fpc1vf9sk13hbwgj2"; + rev = "9532eb3c84d8d952ef28da3d135683ac01adc9b8"; + sha256 = "0168wz8kkdzbyha41iqlgn1z1kcy4smg89rgxkgadzq78y7fglpl"; }; defconfig = { - armv6l-linux = "bcmrpi_defconfig"; - armv7l-linux = "bcm2709_defconfig"; - aarch64-linux = "bcmrpi3_defconfig"; - }.${stdenv.hostPlatform.system} or (throw "linux_rpi not supported on '${stdenv.hostPlatform.system}'"); + "1" = "bcmrpi_defconfig"; + "2" = "bcm2709_defconfig"; + "3" = "bcmrpi3_defconfig"; + "4" = "bcm2711_defconfig"; + }.${toString rpiVersion}; features = { efiBootStub = false; } // (args.features or {}); - extraMeta.hydraPlatforms = [ "aarch64-linux" ]; -} // (args.argsOverride or {}))) (oldAttrs: { + extraMeta = if (rpiVersion < 3) then { + platforms = with lib.platforms; [ arm ]; + hydraPlatforms = []; + } else { + platforms = with lib.platforms; [ arm aarch64 ]; + hydraPlatforms = [ "aarch64-linux" ]; + }; +})) (oldAttrs: { postConfigure = '' # The v7 defconfig has this set to '-v7' which screws up our modDirVersion. sed -i $buildRoot/.config -e 's/^CONFIG_LOCALVERSION=.*/CONFIG_LOCALVERSION=""/' + sed -i $buildRoot/include/config/auto.conf -e 's/^CONFIG_LOCALVERSION=.*/CONFIG_LOCALVERSION=""/' ''; # Make copies of the DTBs named after the upstream names so that U-Boot finds them. @@ -56,5 +64,6 @@ lib.overrideDerivation (buildLinux (args // { copyDTB bcm2710-rpi-3-b.dtb bcm2837-rpi-3-b.dtb copyDTB bcm2710-rpi-3-b-plus.dtb bcm2837-rpi-3-b-plus.dtb copyDTB bcm2710-rpi-cm3.dtb bcm2837-rpi-cm3.dtb + copyDTB bcm2711-rpi-4-b.dtb bcm2838-rpi-4-b.dtb ''; }) |