set erase block size to something that works for jffs2

This commit is contained in:
Daniel Barlow 2023-04-10 20:39:26 +01:00
parent 4638092d3d
commit 0a2881914b
3 changed files with 6 additions and 1 deletions

View file

@ -87,6 +87,7 @@
flash = { flash = {
address = "0x9F060000"; address = "0x9F060000";
size ="0xfa0000"; size ="0xfa0000";
eraseBlockSize = "65536";
}; };
rootDevice = "1f05"; rootDevice = "1f05";
dts = { dts = {
@ -163,12 +164,15 @@
AR8216_PHY = "y"; # eth1 is behind a switch AR8216_PHY = "y"; # eth1 is behind a switch
MTD_SPI_NOR = "y"; MTD_SPI_NOR = "y";
MTD_SPI_NOR_USE_4K_SECTORS = "n"; # jffs2 needs min 8k erase block
SPI_ATH79 = "y"; # these are copied from OpenWrt. SPI_ATH79 = "y"; # these are copied from OpenWrt.
SPI_MASTER= "y"; # At least one of them is necessary SPI_MASTER= "y"; # At least one of them is necessary
SPI_MEM= "y"; SPI_MEM= "y";
SPI_AR934X= "y"; SPI_AR934X= "y";
SPI_BITBANG= "y"; SPI_BITBANG= "y";
SPI_GPIO= "y"; SPI_GPIO= "y";
GPIO_ATH79 = "y"; GPIO_ATH79 = "y";
GPIOLIB = "y"; GPIOLIB = "y";
EXPERT="y"; EXPERT="y";

View file

@ -24,6 +24,7 @@ in {
# for wireless devices, etc # for wireless devices, etc
address = mkOption { type = types.str; }; address = mkOption { type = types.str; };
size = mkOption { type = types.str; }; size = mkOption { type = types.str; };
eraseBlockSize = mkOption { type = types.str; };
}; };
loadAddress = mkOption { default = null; }; loadAddress = mkOption { default = null; };
entryPoint = mkOption { }; entryPoint = mkOption { };

View file

@ -33,7 +33,7 @@ in
}} }}
cp $pkgClosure/registration nix-path-registration cp $pkgClosure/registration nix-path-registration
grafts=$(sed < $pkgClosure/store-paths 's/^\(.*\)$/--graft \1:\1/g') grafts=$(sed < $pkgClosure/store-paths 's/^\(.*\)$/--graft \1:\1/g')
mkfs.jffs2 ${endian} --pad --root $TMPDIR/empty --output $out $grafts mkfs.jffs2 ${endian} -e ${config.hardware.flash.eraseBlockSize} --pad --root $TMPDIR/empty --output $out $grafts
''; '';
jffs2boot = jffs2boot =
let o = config.outputs; in let o = config.outputs; in