board: phytec: common: Define PHYTEC_API2_DATA_LEN

The EEPROM image length for API v2 is fixed to 32 bytes. No need
to use sizeof while this value won't change. This value is
also be required for API v3 to know where the API v3 header starts.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Tested-by: Wadim Egorov <w.egorov@phytec.de>
This commit is contained in:
Daniel Schultz
2024-06-07 14:01:53 -06:00
committed by Tom Rini
parent 0329547377
commit 38b96407f6
2 changed files with 6 additions and 5 deletions
+4 -5
View File
@@ -78,13 +78,12 @@ int phytec_eeprom_data_init(struct phytec_eeprom_data *data,
int ret, i;
unsigned int crc;
u8 *ptr;
const unsigned int payload_size = sizeof(struct phytec_eeprom_payload);
if (!data)
data = &eeprom_data;
ret = phytec_eeprom_read((u8 *)data, bus_num, addr,
payload_size, 0);
PHYTEC_API2_DATA_LEN, 0);
if (ret)
goto err;
@@ -95,11 +94,11 @@ int phytec_eeprom_data_init(struct phytec_eeprom_data *data,
}
ptr = (u8 *)data;
for (i = 0; i < payload_size; ++i)
for (i = 0; i < PHYTEC_API2_DATA_LEN; ++i)
if (ptr[i] != 0x0)
break;
if (i == payload_size) {
if (i == PHYTEC_API2_DATA_LEN) {
pr_err("%s: EEPROM data is all zero. Erased?\n", __func__);
ret = -EINVAL;
goto err;
@@ -111,7 +110,7 @@ int phytec_eeprom_data_init(struct phytec_eeprom_data *data,
return 0;
}
crc = crc8(0, (const unsigned char *)&data->payload, payload_size);
crc = crc8(0, (const unsigned char *)&data->payload, PHYTEC_API2_DATA_LEN);
debug("%s: crc: %x\n", __func__, crc);
if (crc) {
@@ -10,6 +10,8 @@
#define PHYTEC_MAX_OPTIONS 17
#define PHYTEC_EEPROM_INVAL 0xff
#define PHYTEC_API2_DATA_LEN 32
#define PHYTEC_GET_OPTION(option) \
(((option) > '9') ? (option) - 'A' + 10 : (option) - '0')