Add fdt override

This commit is contained in:
asonix 2023-03-03 14:22:40 -06:00
parent a38b12202c
commit 1a7684f6d3

View file

@ -19,7 +19,7 @@
asonix-key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3+mNUlokSKZQNXJAuGm2LCHelKuElWLJArzIYZQYEPbrFaE+J8VtfNbMMD1qVI21ksfcqvFQW4aiP4+BFDxTOGW0uBmUHWKxkyyU39y2yhnsa+svwwIooc+Iwkxw0atzSMEBb94UaZlq9cKMSnG9RGeRFqfYnW2s49wpU79wk6zEFUuOHCMKn4R7zqkPac7IyjxZeKlspY3fOasNH4zyrkbhEOlvrwEOdRNTRNCWWzDcinIVZjfmErHlSynshx9yLnCGkLBxHSxgI2TVyR3RlQ3aGbHtB3QN5X7/T/dwXJFJ11P1Q2bC3XP3hHCogDqXcPvDTFSQEM/mZuFcKNbsn asonix@asonix-tower";
trusted-public-keys = "firestar:spmMw07mO3cxflq5g2GazhE7ddgEoz6QLwaiCnyz/fg=";
customized = uBoot: ({ pkgs, lib, ... }: {
customized = { uBoot, fdt }: ({ pkgs, lib, ... }: {
nixpkgs.overlays = [
(final: super: {
zfs = super.zfs.overrideAttrs (_: {
@ -31,6 +31,7 @@
time.timeZone = "UTC";
rockchip.uBoot = uBoot;
hardware.deviceTree.name = fdt;
boot.kernelPackages = pkgs.linuxPackages_6_2;
boot.kernelParams = [ "console=ttyS2,1500000n8" "rootwait" "root=LABEL=NIXOS_SD" "rw" ];
system.stateVersion = "23.11";
@ -54,13 +55,13 @@
};
});
osConfig = (uBoot: nixpkgs.lib.nixosSystem {
osConfig = ({ uBoot, fdt }: nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
modules = [
rockchip.nixosModules.sdImageRockchip
# inputs.rockchip.nixosModules.dtOverlayQuartz64ASATA
(nixpkgs + "/nixos/modules/installer/cd-dvd/channel.nix")
(customized uBoot)
(customized { inherit uBoot fdt; })
];
specialArgs = {
inherit inputs;
@ -70,9 +71,9 @@
with rockchip.uBoot;
flake-utils.lib.eachDefaultSystem (system: {
packages = builtins.foldl'
(acc: { board, uBoot }:
(acc: { board, uBoot, fdt }:
let
image = (osConfig uBoot).config.system.build.sdImage;
image = (osConfig { inherit uBoot fdt; }).config.system.build.sdImage;
in
acc // {
"${board}" = image;
@ -82,22 +83,27 @@
{
board = "Quartz64A";
uBoot = uBootQuartz64A;
fdt = "rockchip/rk3566-quartz64-a.dtb";
}
{
board = "Quartz64B";
uBoot = uBootQuartz64B;
fdt = "rockchip/rk3566-quartz64-b.dtb";
}
{
board = "SoQuartzBlade";
uBoot = uBootSoQuartzBlade;
fdt = "rockchip/rk3566-soquartz-blade.dtb";
}
{
board = "SoQuartzCM4IO";
uBoot = uBootSoQuartzCM4IO;
fdt = "rockchip/rk3566-soquartz-cm4.dtb";
}
{
board = "SoQuartzModelA";
uBoot = uBootSoQuartzModelA;
fdt = "rockchip/rk3566-soquartz-model-a.dtb";
}
];
});