mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
esp_ringbuf: Added functions to linker.lf file which can be placed in Flash
This commit adds symbols from the ringbuf.c file which can be placed in Flash in order to free up IRAM space.
This commit is contained in:
parent
126a1b2631
commit
dac48f2a40
@ -11,14 +11,15 @@ menu "ESP Ringbuf"
|
|||||||
|
|
||||||
config RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH
|
config RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH
|
||||||
bool "Place ISR ringbuf functions into flash"
|
bool "Place ISR ringbuf functions into flash"
|
||||||
|
depends on RINGBUF_PLACE_FUNCTIONS_INTO_FLASH
|
||||||
default n
|
default n
|
||||||
help
|
help
|
||||||
Place non-ISR ringbuf functions (like xRingbufferSendFromISR/xRingbufferReceiveFromISR) into flash.
|
Place ISR ringbuf functions (like xRingbufferSendFromISR/xRingbufferReceiveFromISR) into flash.
|
||||||
This frees up IRAM, but the functions can no longer be called when the cache is disabled
|
This frees up IRAM, but the functions can no longer be called when the cache is disabled
|
||||||
or from an IRAM interrupt context.
|
or from an IRAM interrupt context.
|
||||||
|
|
||||||
This option is not compatible with ESP-IDF drivers which is configured to run the ISR from an IRAM context,
|
This option is not compatible with ESP-IDF drivers which are configured to
|
||||||
e.g. CONFIG_UART_ISR_IN_IRAM.
|
run the ISR from an IRAM context, e.g. CONFIG_UART_ISR_IN_IRAM.
|
||||||
|
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
@ -8,17 +8,25 @@ entries:
|
|||||||
ringbuf: prvGetCurMaxSizeByteBuf (default)
|
ringbuf: prvGetCurMaxSizeByteBuf (default)
|
||||||
ringbuf: prvInitializeNewRingbuffer (default)
|
ringbuf: prvInitializeNewRingbuffer (default)
|
||||||
ringbuf: prvReceiveGeneric (default)
|
ringbuf: prvReceiveGeneric (default)
|
||||||
|
ringbuf: prvSendAcquireGeneric (default)
|
||||||
|
ringbuf: prvGetFreeSize (default)
|
||||||
ringbuf: vRingbufferDelete (default)
|
ringbuf: vRingbufferDelete (default)
|
||||||
ringbuf: vRingbufferGetInfo (default)
|
ringbuf: vRingbufferGetInfo (default)
|
||||||
ringbuf: vRingbufferReturnItem (default)
|
ringbuf: vRingbufferReturnItem (default)
|
||||||
ringbuf: xRingbufferAddToQueueSetRead (default)
|
ringbuf: xRingbufferAddToQueueSetRead (default)
|
||||||
ringbuf: xRingbufferCreate (default)
|
ringbuf: xRingbufferCreate (default)
|
||||||
ringbuf: xRingbufferCreateStatic (default)
|
ringbuf: xRingbufferCreateStatic (default)
|
||||||
|
ringbuf: xRingbufferCreateNoSplit (default)
|
||||||
ringbuf: xRingbufferReceive (default)
|
ringbuf: xRingbufferReceive (default)
|
||||||
ringbuf: xRingbufferReceiveSplit (default)
|
ringbuf: xRingbufferReceiveSplit (default)
|
||||||
ringbuf: xRingbufferReceiveUpTo (default)
|
ringbuf: xRingbufferReceiveUpTo (default)
|
||||||
ringbuf: xRingbufferRemoveFromQueueSetRead (default)
|
ringbuf: xRingbufferRemoveFromQueueSetRead (default)
|
||||||
ringbuf: xRingbufferSend (default)
|
ringbuf: xRingbufferSend (default)
|
||||||
|
ringbuf: xRingbufferSendAcquire (default)
|
||||||
|
ringbuf: xRingbufferSendComplete (default)
|
||||||
|
ringbuf: xRingbufferPrintInfo (default)
|
||||||
|
ringbuf: xRingbufferGetMaxItemSize (default)
|
||||||
|
ringbuf: xRingbufferGetCurFreeSize (default)
|
||||||
|
|
||||||
if RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH = y:
|
if RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH = y:
|
||||||
ringbuf: prvReturnItemByteBuf (default)
|
ringbuf: prvReturnItemByteBuf (default)
|
||||||
@ -31,7 +39,9 @@ entries:
|
|||||||
ringbuf: prvAcquireItemNoSplit (default)
|
ringbuf: prvAcquireItemNoSplit (default)
|
||||||
ringbuf: prvCheckItemFitsByteBuffer (default)
|
ringbuf: prvCheckItemFitsByteBuffer (default)
|
||||||
ringbuf: prvCheckItemFitsDefault (default)
|
ringbuf: prvCheckItemFitsDefault (default)
|
||||||
|
ringbuf: prvCheckItemAvail (default)
|
||||||
ringbuf: prvSendItemDoneNoSplit (default)
|
ringbuf: prvSendItemDoneNoSplit (default)
|
||||||
|
ringbuf: prvReceiveGenericFromISR (default)
|
||||||
ringbuf: xRingbufferSendFromISR (default)
|
ringbuf: xRingbufferSendFromISR (default)
|
||||||
ringbuf: xRingbufferReceiveFromISR (default)
|
ringbuf: xRingbufferReceiveFromISR (default)
|
||||||
ringbuf: xRingbufferReceiveSplitFromISR (default)
|
ringbuf: xRingbufferReceiveSplitFromISR (default)
|
||||||
|
Loading…
Reference in New Issue
Block a user