summary refs log tree commit diff
path: root/pkgs/os-specific/linux/firmware/raspberrypi
diff options
context:
space:
mode:
authorSamuel Dionne-Riel <samuel@dionne-riel.com>2020-09-12 22:07:21 -0400
committerMilan <me@pbb.lc>2020-12-31 18:20:49 +0100
commit7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5 (patch)
treec0e1f1046775abff1f436664b438c127c574dbda /pkgs/os-specific/linux/firmware/raspberrypi
parent2cd9d5bc2515f7f8f60a57ea5cb18a67eea2e754 (diff)
downloadnixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.tar
nixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.tar.gz
nixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.tar.bz2
nixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.tar.lz
nixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.tar.xz
nixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.tar.zst
nixpkgs-7f23d3e5195df40c77f1cdaabd3dc1a235cfddd5.zip
raspberrypi-armstubs: init at 2020-10-08
Diffstat (limited to 'pkgs/os-specific/linux/firmware/raspberrypi')
-rw-r--r--pkgs/os-specific/linux/firmware/raspberrypi/armstubs.nix51
1 files changed, 51 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/armstubs.nix b/pkgs/os-specific/linux/firmware/raspberrypi/armstubs.nix
new file mode 100644
index 00000000000..2f2d0081fff
--- /dev/null
+++ b/pkgs/os-specific/linux/firmware/raspberrypi/armstubs.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchFromGitHub, cmake, pkgconfig }:
+
+let
+  inherit (stdenv.lib) optionals;
+in
+stdenv.mkDerivation {
+  pname = "raspberrypi-armstubs";
+  version = "2020-10-08";
+
+  src = fetchFromGitHub {
+    owner = "raspberrypi";
+    repo = "tools";
+    rev = "fc0e73c13865450e95edd046200e42a6e52d8256";
+    sha256 = "1g6ikpjcrm5x0rk5aiwjdd8grf997qkvgamcrdxy6k9ln746h25s";
+  };
+
+  NIX_CFLAGS_COMPILE = [
+    "-march=armv8-a+crc"
+  ];
+
+  preConfigure = ''
+    cd armstubs
+  '';
+
+  makeFlags = [
+    "CC8=${stdenv.cc.targetPrefix}cc"
+    "LD8=${stdenv.cc.targetPrefix}ld"
+    "OBJCOPY8=${stdenv.cc.targetPrefix}objcopy"
+    "OBJDUMP8=${stdenv.cc.targetPrefix}objdump"
+    "CC=${stdenv.cc.targetPrefix}cc"
+    "LD=${stdenv.cc.targetPrefix}ld"
+    "OBJCOPY=${stdenv.cc.targetPrefix}objcopy"
+    "OBJDUMP=${stdenv.cc.targetPrefix}objdump"
+  ]
+  ++ optionals (stdenv.isAarch64) [ "armstub8.bin" "armstub8-gic.bin" ]
+  ++ optionals (stdenv.isAarch32) [ "armstub7.bin" "armstub8-32.bin" "armstub8-32-gic.bin" ]
+  ;
+
+  installPhase = ''
+    mkdir -vp $out/
+    cp -v *.bin $out/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Firmware related ARM stubs for the Raspberry Pi";
+    homepage = https://github.com/raspberrypi/tools;
+    license = licenses.bsd3;
+    platforms = [ "armv6l-linux" "armv7l-linux" "aarch64-linux" ];
+    maintainers = with maintainers; [ samueldr ];
+  };
+}