From d32fc02ec691caa18a94a2259b430bbdf1a013c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= Date: Tue, 11 Nov 2025 17:09:32 +0100 Subject: [PATCH] efuse: Correct block sizes for ESP32-C2, ESP32-C3, and ESP32-S3 --- CHANGELOG.md | 1 + espflash/src/target/efuse/esp32c2.rs | 2 +- espflash/src/target/efuse/esp32c3.rs | 2 +- espflash/src/target/efuse/esp32s3.rs | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1857a3f1..c8574782 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Corrected eFuse BLOCK0 definitions for ESP32-C2, ESP32-C3, and ESP32-S3 (#961) +- Corrected eFuse block sizes for ESP32-C2, ESP32-C3, and ESP32-S3 (#964) ### Removed diff --git a/espflash/src/target/efuse/esp32c2.rs b/espflash/src/target/efuse/esp32c2.rs index 12a19be5..66288379 100644 --- a/espflash/src/target/efuse/esp32c2.rs +++ b/espflash/src/target/efuse/esp32c2.rs @@ -10,7 +10,7 @@ use super::EfuseField; /// Total size in bytes of each block -pub(crate) const BLOCK_SIZES: &[u32] = &[8, 11, 32, 32]; +pub(crate) const BLOCK_SIZES: &[u32] = &[12, 12, 32, 32]; /// Disable programming of individual eFuses pub const WR_DIS: EfuseField = EfuseField::new(0, 0, 0, 8); diff --git a/espflash/src/target/efuse/esp32c3.rs b/espflash/src/target/efuse/esp32c3.rs index 3e570423..7eb77c80 100644 --- a/espflash/src/target/efuse/esp32c3.rs +++ b/espflash/src/target/efuse/esp32c3.rs @@ -10,7 +10,7 @@ use super::EfuseField; /// Total size in bytes of each block -pub(crate) const BLOCK_SIZES: &[u32] = &[23, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32]; +pub(crate) const BLOCK_SIZES: &[u32] = &[24, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32]; /// Disable programming of individual eFuses pub const WR_DIS: EfuseField = EfuseField::new(0, 0, 0, 32); diff --git a/espflash/src/target/efuse/esp32s3.rs b/espflash/src/target/efuse/esp32s3.rs index 1050a6b3..d9725d7e 100644 --- a/espflash/src/target/efuse/esp32s3.rs +++ b/espflash/src/target/efuse/esp32s3.rs @@ -10,7 +10,7 @@ use super::EfuseField; /// Total size in bytes of each block -pub(crate) const BLOCK_SIZES: &[u32] = &[23, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32]; +pub(crate) const BLOCK_SIZES: &[u32] = &[24, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32]; /// Disable programming of individual eFuses pub const WR_DIS: EfuseField = EfuseField::new(0, 0, 0, 32);