nixos-hardware/starfive/visionfive/v2/firmware.nix

27 lines
702 B
Nix

{ callPackage
, writeShellApplication
, stdenv
, mtdutils
}:
rec {
opensbi = callPackage ./opensbi.nix { };
uboot = callPackage ./uboot.nix { inherit opensbi; };
updater-flash = writeShellApplication {
name = "visionfive2-firmware-update-flash";
runtimeInputs = [ mtdutils ];
text = ''
flashcp -v ${uboot}/u-boot-spl.bin.normal.out /dev/mtd0
flashcp -v ${uboot}/u-boot.itb /dev/mtd2
'';
};
updater-sd = writeShellApplication {
name = "visionfive2-firmware-update-sd";
runtimeInputs = [ ];
text = ''
dd if=${uboot}/u-boot-spl.bin.normal.out of=/dev/mmcblk0p1 conv=fsync
dd if=${uboot}/u-boot.itb of=/dev/mmcblk0p2 conv=fsync
'';
};
}