From 9e6276351df6a376b069ebac6f4a47c5e46424b5 Mon Sep 17 00:00:00 2001 From: Kasper Hjort Berthelsen Date: Wed, 21 Feb 2024 13:26:36 +0100 Subject: [PATCH] periph/eeprom: fix off-by-one error in debug statement Since p is incremented DEBUG prints the next value instead of the current I also took the liberty to add debugs to the `write` function --- cpu/stm32/periph/eeprom.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cpu/stm32/periph/eeprom.c b/cpu/stm32/periph/eeprom.c index 1be989de0a..0a2e589024 100644 --- a/cpu/stm32/periph/eeprom.c +++ b/cpu/stm32/periph/eeprom.c @@ -95,7 +95,7 @@ size_t eeprom_read(uint32_t pos, void *data, size_t len) for (size_t i = 0; i < len; i++) { _wait_for_pending_operations(); *p++ = *(__IO uint8_t *)(EEPROM_START_ADDR + pos++); - DEBUG("0x%02X ", *p); + DEBUG("0x%02X ", *(p-1)); } DEBUG("\n"); @@ -110,8 +110,10 @@ size_t eeprom_write(uint32_t pos, const void *data, size_t len) _unlock(); + DEBUG("Writing data to EEPROM at pos %" PRIu32 ": ", pos); for (size_t i = 0; i < len; i++) { _write_byte((EEPROM_START_ADDR + pos++), *p++); + DEBUG("0x%02X ", *(p-1)); } _lock();