about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarkus Theil <theil.markus@gmail.com>2023-07-14 11:18:41 +0200
committerMarkus Theil <theil.markus@gmail.com>2023-07-14 11:19:11 +0200
commitf6f0ccd6c9b4aab06997354dd423bca9efc489db (patch)
tree08b1139d64ad3a443fa4c5bc53873cbfc902ed98
parent712d6cf98e420943f14bf112d1ba450c21a4c500 (diff)
lib.systems.bluefield2: init
Add support for Nvidia's Bluefield 2 plattform as a compilation
target. There exists a version with and without crypto support,
while the crypto supported version is the most common one.

Support for the non-crypto version can be easily added in the future,
if needed.

For a datasheet of the hardware, see:

https://www.nvidia.com/content/dam/en-zz/Solutions/Data-Center/documents/datasheet-nvidia-bluefield-2-dpu.pdf

Signed-off-by: Markus Theil <theil.markus@gmail.com>
-rw-r--r--lib/systems/examples.nix4
-rw-r--r--lib/systems/platforms.nix8
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix
index 9ad7c3e422d8e..8d9c09561ddb0 100644
--- a/lib/systems/examples.nix
+++ b/lib/systems/examples.nix
@@ -37,6 +37,10 @@ rec {
     config = "armv6l-unknown-linux-gnueabihf";
   } // platforms.raspberrypi;
 
+  bluefield2 = {
+    config = "aarch64-unknown-linux-gnu";
+  } // platforms.bluefield2;
+
   remarkable1 = {
     config = "armv7l-unknown-linux-gnueabihf";
   } // platforms.zero-gravitas;
diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix
index d574943e47df3..0b6a9f3891da7 100644
--- a/lib/systems/platforms.nix
+++ b/lib/systems/platforms.nix
@@ -209,6 +209,14 @@ rec {
   # Legacy attribute, for compatibility with existing configs only.
   raspberrypi2 = armv7l-hf-multiplatform;
 
+  # Nvidia Bluefield 2 (w. crypto support)
+  bluefield2 = {
+    gcc = {
+      arch = "armv8-a+fp+simd+crc+crypto";
+      cpu = "cortex-a72";
+    };
+  };
+
   zero-gravitas = {
     linux-kernel = {
       name = "zero-gravitas";