From 9296fc8d4a170de54e91bcd86761d6667f469be8 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Wed, 14 Jan 2026 19:40:21 -1000 Subject: [PATCH] limit scope --- esphome/core/hash_base.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/esphome/core/hash_base.h b/esphome/core/hash_base.h index e549c3a5159..f48093b63e3 100644 --- a/esphome/core/hash_base.h +++ b/esphome/core/hash_base.h @@ -44,9 +44,10 @@ class HashBase { virtual size_t get_size() const = 0; protected: -// ESP32-S2/S3 hardware SHA uses DMA that requires 32-byte aligned buffers. -// Other platforms either don't have hardware SHA or don't require alignment. -#if defined(USE_ESP32_VARIANT_ESP32S2) || defined(USE_ESP32_VARIANT_ESP32S3) +// ESP32 variants with DMA-based hardware SHA (all except original ESP32) require 32-byte aligned buffers. +// Original ESP32 uses a different hardware SHA implementation without DMA alignment requirements. +// Other platforms (ESP8266, RP2040, LibreTiny) use software SHA and don't need alignment. +#if defined(USE_ESP32) && !defined(USE_ESP32_VARIANT_ESP32) alignas(32) #endif uint8_t digest_[32]; // Storage sized for max(MD5=16, SHA256=32) bytes