From 22aaa9fbfeafc7f81c5d12a21ff5fc976186ba47 Mon Sep 17 00:00:00 2001 From: feelfree69 Date: Fri, 8 May 2026 07:13:41 +0200 Subject: [PATCH] Renamed and moved FLASH_PAGE_SIZE; added compile-time check --- httpd/httpd.c | 13 +++++-------- rtl837x_flash.h | 8 ++++++++ 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/httpd/httpd.c b/httpd/httpd.c index f04261b..0642eae 100644 --- a/httpd/httpd.c +++ b/httpd/httpd.c @@ -14,9 +14,6 @@ #define SESSION_ID_LENGTH 12 #define SESSION_TIMEOUT 200 -// SPI FLASH MEMORY PAGE SIZE. -#define FLASHMEM_PAGE_SIZE 0x100 - #define CMARK_S 6 #pragma codeseg BANK1 @@ -329,7 +326,7 @@ uint8_t stream_upload(uint16_t bptr) } crc16(p + bptr); flash_buf[write_len++] = p[bptr++]; - if (write_len >= FLASHMEM_PAGE_SIZE) { + if (write_len >= FLASH_PAGE_SIZE) { dbg_string("len: "); dbg_short(write_len); dbg_char(' '); dbg_string("CRC16: "); dbg_short(crc_value); dbg_char('\n'); if (uptr % FLASH_SECTOR_SIZE == 0) { @@ -337,14 +334,14 @@ uint8_t stream_upload(uint16_t bptr) flash_sector_erase(); } flash_region.addr = uptr; - flash_region.len = FLASHMEM_PAGE_SIZE; + flash_region.len = FLASH_PAGE_SIZE; flash_write_bytes(flash_buf); - uptr += FLASHMEM_PAGE_SIZE; - write_len -= FLASHMEM_PAGE_SIZE; + uptr += FLASH_PAGE_SIZE; + write_len -= FLASH_PAGE_SIZE; // Copy the remaining byte for the next page to the beginning of the buffer. if (write_len > 0) { - memcpy(flash_buf, flash_buf + FLASHMEM_PAGE_SIZE, write_len); + memcpy(flash_buf, flash_buf + FLASH_PAGE_SIZE, write_len); } } bindex = 0; diff --git a/rtl837x_flash.h b/rtl837x_flash.h index ec8bac8..5280258 100644 --- a/rtl837x_flash.h +++ b/rtl837x_flash.h @@ -1,8 +1,16 @@ #ifndef _RTL837X_FLASH_H_ #define _RTL837X_FLASH_H_ +// SPI FLASH MEMORY PAGE SIZE. +#define FLASH_PAGE_SIZE 0x100 +// SPI FLASH MEMORY SECTOR SIZE = ERASE SIZE. #define FLASH_SECTOR_SIZE 0x1000 +#if (FLASH_SECTOR_SIZE % FLASH_PAGE_SIZE) != 0 +#error "FLASH_SECTOR_SIZE must be a multiple of FLASH_PAGE_SIZE" +#endif + + void flash_init(uint8_t enable_dio); void flash_read_uid(void); void flash_write_enable(void);