summaryrefslogtreecommitdiff
path: root/drivers/misc/eeprom/at25.c
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2021-11-26 00:31:56 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-12-03 16:26:15 +0300
commitfb422f44778df10d2f37c69fbfeeddd40aedae10 (patch)
treed966ccff92d95d028031a41e028977ae24481c50 /drivers/misc/eeprom/at25.c
parentc329fe53474ac424cd5eb77c2b6b1fb3fc136d7b (diff)
downloadlinux-fb422f44778df10d2f37c69fbfeeddd40aedae10.tar.xz
misc: at25: Check new property ("address-width") first
As it's done elsewhere in at25_fw_to_chip() check new property ("address-width") first. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20211125213203.86693-4-andriy.shevchenko@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/eeprom/at25.c')
-rw-r--r--drivers/misc/eeprom/at25.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/misc/eeprom/at25.c b/drivers/misc/eeprom/at25.c
index 027840c73fc8..86f5433d0278 100644
--- a/drivers/misc/eeprom/at25.c
+++ b/drivers/misc/eeprom/at25.c
@@ -327,13 +327,15 @@ static int at25_fw_to_chip(struct device *dev, struct spi_eeprom *chip)
}
chip->page_size = val;
- err = device_property_read_u32(dev, "at25,addr-mode", &val);
+ err = device_property_read_u32(dev, "address-width", &val);
if (err) {
- err = device_property_read_u32(dev, "address-width", &val);
+ err = device_property_read_u32(dev, "at25,addr-mode", &val);
if (err) {
dev_err(dev, "Error: missing \"address-width\" property\n");
return err;
}
+ chip->flags = (u16)val;
+ } else {
switch (val) {
case 9:
chip->flags |= EE_INSTR_BIT3_IS_ADDR;
@@ -355,8 +357,6 @@ static int at25_fw_to_chip(struct device *dev, struct spi_eeprom *chip)
}
if (device_property_present(dev, "read-only"))
chip->flags |= EE_READONLY;
- } else {
- chip->flags = (u16)val;
}
return 0;
}