From 62c3d0c3603e673ac4a338450db27fd3356468ac Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Mon, 28 Oct 2024 00:15:13 +0100 Subject: [PATCH] Add OTP read raw. Signed-off-by: Pol Henarejos --- src/fs/otp.c | 7 ++++++- src/fs/otp.h | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/fs/otp.c b/src/fs/otp.c index 6984e0b..07c765c 100644 --- a/src/fs/otp.c +++ b/src/fs/otp.c @@ -51,7 +51,7 @@ int otp_write_data(uint16_t row, uint8_t *data, uint16_t len) { return otp_write_data_mode(row, data, len, true); } -static int otp_write_data_raw(uint16_t row, uint8_t *data, uint16_t len) { +int otp_write_data_raw(uint16_t row, uint8_t *data, uint16_t len) { return otp_write_data_mode(row, data, len, false); } @@ -60,6 +60,11 @@ uint8_t* otp_buffer(uint16_t row) { return (uint8_t *)p; } +uint8_t* otp_buffer_raw(uint16_t row) { + volatile uint32_t *p = ((uint32_t *)(OTP_DATA_RAW_BASE + (row*4))); + return (uint8_t *)p; +} + bool is_empty_otp_buffer(uint16_t row, uint16_t len) { return is_empty_buffer(otp_buffer(row), len); } diff --git a/src/fs/otp.h b/src/fs/otp.h index 4833d60..67cf751 100644 --- a/src/fs/otp.h +++ b/src/fs/otp.h @@ -26,8 +26,10 @@ #define OTP_KEY_1 OTP_TEST_ROW extern uint8_t* otp_buffer(uint16_t row); +extern uint8_t* otp_buffer_raw(uint16_t row); extern bool is_empty_otp_buffer(uint16_t row, uint16_t len); extern int otp_write_data(uint16_t row, uint8_t *data, uint16_t len); +extern int otp_write_data_raw(uint16_t row, uint8_t *data, uint16_t len); #elif defined(ESP_PLATFORM)