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>
This commit is contained in:
Andy Shevchenko 2021-11-25 23:31:56 +02:00 committed by Greg Kroah-Hartman
parent c329fe5347
commit fb422f4477

View File

@ -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;
}