Skip to content

Commit de87088

Browse files
committed
use device->read/write instead of using m24c32_read/write directory
1 parent 501c3c4 commit de87088

File tree

3 files changed

+13
-20
lines changed

3 files changed

+13
-20
lines changed

middleware/src/eeprom_alloc.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,16 @@ static eeprom_status_t _update_eeprom_alloc_table(eeprom_directory_t *directory,
2525
uint16_t id)
2626
{
2727
uint16_t data_index = byte_index(id);
28-
m24c32_t *device = directory->device;
2928
uint16_t addr = ALLOC_TABLE_BEGIN + data_index;
3029
uint8_t *data = directory->alloc_table + data_index;
3130

32-
return m24c32_write(device, addr, data, 1);
31+
return directory->device->write(addr, data, 1);
3332
}
3433

3534
eeprom_status_t _init_alloc_table(eeprom_directory_t *directory)
3635
{
37-
m24c32_t *device = directory->device;
38-
39-
return m24c32_read(device, ALLOC_TABLE_BEGIN, directory->alloc_table,
40-
ALLOC_TABLE_SIZE);
36+
return directory->device->read(
37+
ALLOC_TABLE_BEGIN, directory->alloc_table, ALLOC_TABLE_SIZE);
4138
}
4239

4340
void _print_alloc_table(eeprom_directory_t *directory)

middleware/src/eeprom_directory.c

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ static uint16_t *_get_ids(eeprom_directory_t *directory, const uint8_t *key)
1616
static eeprom_status_t _set_key(eeprom_directory_t *directory,
1717
const uint8_t *key, uint16_t *ids)
1818
{
19-
m24c32_t *device = directory->device;
2019
directory_key_map_t *key_map = directory->key_map;
2120

2221
for (int i = 0; i < KEY_MAP_COUNT; i++) {
@@ -25,9 +24,9 @@ static eeprom_status_t _set_key(eeprom_directory_t *directory,
2524
memcpy(key_map[i].ids, ids, 8);
2625

2726
uint16_t addr = KEY_MAP_BEGIN + i * KEY_MAP_STRUCT_SIZE;
28-
return m24c32_write(device, addr,
29-
(uint8_t *)&key_map[i],
30-
KEY_MAP_STRUCT_SIZE);
27+
return directory->device->write(addr,
28+
(uint8_t *)&key_map[i],
29+
KEY_MAP_STRUCT_SIZE);
3130
}
3231
}
3332
return EEPROM_ERROR_ALLOCATION;
@@ -36,7 +35,6 @@ static eeprom_status_t _set_key(eeprom_directory_t *directory,
3635
static eeprom_status_t _delete_key(eeprom_directory_t *directory,
3736
const uint8_t *key)
3837
{
39-
m24c32_t *device = directory->device;
4038
directory_key_map_t *key_map = directory->key_map;
4139

4240
for (int i = 0; i < KEY_MAP_COUNT; i++) {
@@ -45,9 +43,9 @@ static eeprom_status_t _delete_key(eeprom_directory_t *directory,
4543
memset(&key_map[i], 0, KEY_MAP_STRUCT_SIZE);
4644

4745
uint16_t addr = KEY_MAP_BEGIN + i * KEY_MAP_STRUCT_SIZE;
48-
return m24c32_write(device, addr,
49-
(uint8_t *)&key_map[i],
50-
KEY_MAP_STRUCT_SIZE);
46+
return directory->device->write(addr,
47+
(uint8_t *)&key_map[i],
48+
KEY_MAP_STRUCT_SIZE);
5149
}
5250
}
5351
return EEPROM_ERROR_NOT_FOUND;

middleware/src/eeprom_storage.c

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,14 @@ static uint16_t _get_addr_for_data(const uint16_t id)
2121

2222
eeprom_status_t _init_storage(eeprom_directory_t *directory)
2323
{
24-
m24c32_t *device = directory->device;
2524
directory_key_map_t *key_map = directory->key_map;
2625
uint8_t *data = malloc(KEY_MAP_SIZE);
2726
if (data == NULL) {
2827
return EEPROM_ERROR_ALLOCATION;
2928
}
3029

3130
eeprom_status_t res =
32-
m24c32_read(device, KEY_MAP_BEGIN, data, KEY_MAP_SIZE);
31+
directory->device->read(KEY_MAP_BEGIN, data, KEY_MAP_SIZE);
3332
if (res != EEPROM_OK) {
3433
free(data);
3534
return res;
@@ -82,8 +81,7 @@ eeprom_status_t _get_data(eeprom_directory_t *directory, const uint16_t *ids,
8281
uint8_t *data_ptr = *out + BLOCK_SIZE * i;
8382
eeprom_status_t res;
8483

85-
res = m24c32_read(directory->device, addr, data_ptr,
86-
BLOCK_SIZE);
84+
res = directory->device->read(addr, data_ptr, BLOCK_SIZE);
8785
if (res != EEPROM_OK) {
8886
free(*out);
8987
*out = NULL;
@@ -122,8 +120,8 @@ eeprom_status_t _put_data(eeprom_directory_t *directory, const uint16_t *ids,
122120
}
123121

124122
// Write the entire block (BLOCK_SIZE bytes) to EEPROM
125-
eeprom_status_t res = m24c32_write(directory->device, addr,
126-
block_buffer, BLOCK_SIZE);
123+
eeprom_status_t res = directory->device->write(
124+
addr, block_buffer, BLOCK_SIZE);
127125
if (res != EEPROM_OK) {
128126
free(block_buffer);
129127
return res;

0 commit comments

Comments
 (0)