For FRAM devices the page size is usually equal to the device size. Some available devices are greater than 64kB, so a 32 bit variable must be used. The same change has to be done for the Linux driver. I'll try to upstream this as soon as possible. Signed-off-by: Christian Eggers <ceggers@xxxxxxx> --- drivers/eeprom/at25.c | 2 +- include/spi/eeprom.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/eeprom/at25.c b/drivers/eeprom/at25.c index 1c9ef1232..56168c216 100644 --- a/drivers/eeprom/at25.c +++ b/drivers/eeprom/at25.c @@ -259,7 +259,7 @@ static int at25_np_to_chip(struct device_d *dev, if (of_property_read_u32(np, "pagesize", &val) == 0 || of_property_read_u32(np, "at25,page-size", &val) == 0) { - chip->page_size = (u16)val; + chip->page_size = val; } else { dev_err(dev, "Error: missing \"pagesize\" property\n"); return -ENODEV; diff --git a/include/spi/eeprom.h b/include/spi/eeprom.h index 15495e59f..137718f02 100644 --- a/include/spi/eeprom.h +++ b/include/spi/eeprom.h @@ -10,7 +10,7 @@ */ struct spi_eeprom { char name[10]; - u16 page_size; /* for writes */ + u32 page_size; /* for writes */ u16 flags; #define EE_ADDR1 0x0001 /* 8 bit addrs */ #define EE_ADDR2 0x0002 /* 16 bit addrs */ -- Christian Eggers Embedded software developer Arnold & Richter Cine Technik GmbH & Co. Betriebs KG Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRA 57918 Persoenlich haftender Gesellschafter: Arnold & Richter Cine Technik GmbH Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRB 54477 Geschaeftsfuehrer: Dr. Michael Neuhaeuser; Stephan Schenk; Walter Trauninger; Markus Zeiler _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox