From af83cd60e1c1bac89eba08936611bb425a73a386 Mon Sep 17 00:00:00 2001 From: Alexey Lapshin Date: Thu, 19 Jan 2023 00:04:06 +0700 Subject: [PATCH] Revert "sdio_slave: workaround the sdio_slave crash issue with release config + GCC11" This reverts commit 19add3fb052922edcdeacf56a8c6845cfe8aa00f. --- components/hal/sdio_slave_hal.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/components/hal/sdio_slave_hal.c b/components/hal/sdio_slave_hal.c index f7a9206a86..166e0361ee 100644 --- a/components/hal/sdio_slave_hal.c +++ b/components/hal/sdio_slave_hal.c @@ -40,7 +40,7 @@ typedef enum { } sdio_ringbuf_pointer_t; static esp_err_t sdio_ringbuf_send(sdio_ringbuf_t *buf, esp_err_t (*copy_callback)(uint8_t *, void *), void *arg); -esp_err_t sdio_ringbuf_recv(sdio_ringbuf_t *buf, uint8_t **start, uint8_t **end, ringbuf_get_all_t get_all); +static inline esp_err_t sdio_ringbuf_recv(sdio_ringbuf_t *buf, uint8_t **start, uint8_t **end, ringbuf_get_all_t get_all); static inline int sdio_ringbuf_return(sdio_ringbuf_t* buf, uint8_t *ptr); #define _SEND_DESC_NEXT(x) STAILQ_NEXT(&((sdio_slave_hal_send_desc_t*)x)->dma_desc, qe) @@ -95,12 +95,7 @@ static esp_err_t sdio_ringbuf_send(sdio_ringbuf_t *buf, esp_err_t (*copy_callbac // this ringbuf is a return-before-recv-again strategy // since this is designed to be called in the ISR, no parallel logic -/* - * Workaround for gcc 11. GCC-277. Break the inferring of callers. - * This function used to be static inline. - */ -__attribute__((weak)) -esp_err_t sdio_ringbuf_recv(sdio_ringbuf_t *buf, uint8_t **start, uint8_t **end, ringbuf_get_all_t get_all) +static inline esp_err_t sdio_ringbuf_recv(sdio_ringbuf_t *buf, uint8_t **start, uint8_t **end, ringbuf_get_all_t get_all) { HAL_ASSERT(buf->free_ptr == buf->read_ptr); //must return before recv again if (start == NULL && end == NULL) return ESP_ERR_INVALID_ARG; // must have a output