fix(rmt): fix the state of the simple encoder with mem full

Closes https://github.com/espressif/esp-idf/issues/17244
This commit is contained in:
Chen Jichang
2025-08-06 18:18:27 +08:00
parent 0e2511d3b4
commit 1e9d7e5a96

View File

@@ -372,7 +372,8 @@ static size_t IRAM_ATTR rmt_encode_simple(rmt_encoder_t *encoder, rmt_channel_ha
// reset internal index if encoding session has finished // reset internal index if encoding session has finished
simple_encoder->last_symbol_index = 0; simple_encoder->last_symbol_index = 0;
state |= RMT_ENCODING_COMPLETE; state |= RMT_ENCODING_COMPLETE;
} else { }
if (tx_chan->mem_off >= tx_chan->mem_end) {
// no more free memory, the caller should yield // no more free memory, the caller should yield
state |= RMT_ENCODING_MEM_FULL; state |= RMT_ENCODING_MEM_FULL;
} }