forked from dan/liminix
convert tftp.loadAddress from string to int
This commit is contained in:
parent
0131686661
commit
185117843b
|
@ -38,7 +38,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
module = {pkgs, config, lib, ... }:
|
||||
module = {pkgs, config, lib, lim, ... }:
|
||||
let firmware = pkgs.stdenv.mkDerivation {
|
||||
name = "wlan-firmware";
|
||||
phases = ["installPhase"];
|
||||
|
@ -143,7 +143,7 @@
|
|||
};
|
||||
boot = {
|
||||
commandLine = [ "console=ttyS0,115200" ];
|
||||
tftp.loadAddress = "0x4007ff28";
|
||||
tftp.loadAddress = lim.parseInt "0x4007ff28";
|
||||
imageFormat = "fit";
|
||||
};
|
||||
filesystem =
|
||||
|
|
|
@ -144,7 +144,7 @@
|
|||
};
|
||||
};
|
||||
boot.tftp = {
|
||||
loadAddress = "0x00A00000";
|
||||
loadAddress = lim.parseInt "0x00A00000";
|
||||
};
|
||||
kernel = {
|
||||
src = pkgs.pkgsBuildBuild.fetchurl {
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
|
||||
'';
|
||||
|
||||
module = { pkgs, config, lib, ...}:
|
||||
module = { pkgs, config, lib, lim, ...}:
|
||||
let
|
||||
inherit (pkgs.liminix.networking) interface;
|
||||
inherit (pkgs) openwrt;
|
||||
|
@ -120,7 +120,7 @@
|
|||
};
|
||||
};
|
||||
boot.tftp = {
|
||||
loadAddress = "0x00A00000";
|
||||
loadAddress = lim.parseInt "0x00A00000";
|
||||
};
|
||||
|
||||
kernel = {
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
'';
|
||||
|
||||
module = { pkgs, config, lib, ...}:
|
||||
module = { pkgs, config, lib, lim, ...}:
|
||||
let
|
||||
inherit (pkgs.liminix.networking) interface;
|
||||
inherit (pkgs.liminix.services) oneshot;
|
||||
|
@ -116,7 +116,7 @@
|
|||
boot.tftp = {
|
||||
# 20MB seems to give enough room to uncompress the kernel
|
||||
# without anything getting trodden on. 10MB was too small
|
||||
loadAddress = "0x1400000";
|
||||
loadAddress = lim.parseInt "0x1400000";
|
||||
};
|
||||
|
||||
kernel = {
|
||||
|
|
|
@ -58,7 +58,7 @@ in {
|
|||
};
|
||||
tftp = {
|
||||
loadAddress = mkOption {
|
||||
type = types.str;
|
||||
type = types.ints.unsigned;
|
||||
description = ''
|
||||
RAM address at which to load data when transferring via
|
||||
TFTP. This is not the address of the flash storage,
|
||||
|
|
|
@ -106,9 +106,9 @@ in {
|
|||
cat > $out << EOF
|
||||
setenv serverip ${tftp.serverip}
|
||||
setenv ipaddr ${tftp.ipaddr}
|
||||
tftp 0x$(printf %x ${tftp.loadAddress}) result/firmware.bin
|
||||
tftp 0x${toHexString tftp.loadAddress} result/firmware.bin
|
||||
erase 0x$(printf %x ${flash.address}) +${flash.size}
|
||||
cp.b 0x$(printf %x ${tftp.loadAddress}) 0x$(printf %x ${flash.address}) \''${filesize}
|
||||
cp.b 0x${toHexString tftp.loadAddress} 0x$(printf %x ${flash.address}) \''${filesize}
|
||||
echo command line was ${builtins.toJSON (concatStringsSep " " config.boot.commandLine)}
|
||||
EOF
|
||||
'';
|
||||
|
|
Loading…
Reference in New Issue