Repository navigation
Sync master (0.2.33) into develop - #351
Merged
Merged
Conversation
…a write reports NACK (m5stack#339)
When the first descriptor of a DMA queue is in external RAM and too short to align, execDMAQueue sends it through the CPU. For 65 to 1023 bytes that non-DMA writeBytes copied the data into the flip buffer, and a getDMABuffer() buffer queued after it could be that same buffer, so its contents were overwritten before the DMA read them. Send the head in pieces of at most 64 bytes, which always take the register path. Each piece is first copied to a local word buffer, because the register copy rounds the length up to whole words and would otherwise read past the end of the source. Reproduced on ESP32-S3 with octal PSRAM: queue a 70 or 80 byte PSRAM buffer starting 4 or 6 bytes past a 64-byte boundary, then two getDMABuffer() buffers. Before this change the first getDMABuffer() buffer arrived corrupted every time; after it the readback matches.
… a DMA transfer Port of the develop change to the master layout: the write-back moves ahead of the CPU-written head on every PSRAM-DMA target, and the ESP32-P4 write-back after the descriptor setup is skipped when the buffer is already clean.
The backlight is driven directly by LDO3 (1.8V + 0.1V * N) and does not light below 2.5V (N = 7), so brightness values 1..71 produced a dark screen and 1..4 wrote voltages that can never light it. Map 1..255 onto N = 7..15 instead; 0 still turns LDO3 off and 255 is unchanged (3.3V).
Enabling BUS_OUT_EN into an empty BUS_OUT on a weak USB supply pulls an AXP2101 DCDC under its threshold and the PMIC powers the board off before the display comes up. Pulse BUS_OUT_EN with growing on-time first (the sequence of M5Unified::setExtOutput()), verify the final enable, and only warn on failure.
Release 0.2.33
# Conflicts: # src/M5GFX.cpp # src/lgfx/v1/platforms/esp32/Bus_SPI.inl
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merges the 0.2.33 release (master) back into develop. Conflicts were resolved on the develop side; the only net change against develop is the version bump (4 files). Please merge with "Create a merge commit" (not squash / rebase) so that master stays an ancestor of develop.