forked from espressif/esp-idf
spi flash: fix cache accessed while disabled issues at -O0
mask_get_id and gpio_hal_iomux_func_sel were called while cache is disabled, but were not inlined as expected at -0O. Force these functions to always be inlined.
This commit is contained in:
@@ -172,7 +172,7 @@ typedef struct spi_bus_lock_t spi_bus_lock_t;
|
|||||||
#define REQUEST_BIT(mask) ((mask) << REQ_SHIFT)
|
#define REQUEST_BIT(mask) ((mask) << REQ_SHIFT)
|
||||||
#define PENDING_BIT(mask) ((mask) << PENDING_SHIFT)
|
#define PENDING_BIT(mask) ((mask) << PENDING_SHIFT)
|
||||||
#define DEV_MASK(id) (LOCK_BIT(1<<id) | PENDING_BIT(1<<id) | REQUEST_BIT(1<<id))
|
#define DEV_MASK(id) (LOCK_BIT(1<<id) | PENDING_BIT(1<<id) | REQUEST_BIT(1<<id))
|
||||||
#define ID_DEV_MASK(mask) (ffs(mask) - 1)
|
#define ID_DEV_MASK(mask) (__builtin_ffs(mask) - 1)
|
||||||
|
|
||||||
#define REQ_MASK BIT1_MASK(REQ_SHIFT+MAX_DEV_NUM, REQ_SHIFT)
|
#define REQ_MASK BIT1_MASK(REQ_SHIFT+MAX_DEV_NUM, REQ_SHIFT)
|
||||||
#define PEND_MASK BIT1_MASK(PENDING_SHIFT+MAX_DEV_NUM, PENDING_SHIFT)
|
#define PEND_MASK BIT1_MASK(PENDING_SHIFT+MAX_DEV_NUM, PENDING_SHIFT)
|
||||||
|
@@ -575,7 +575,7 @@ static inline void gpio_ll_iomux_in(gpio_dev_t *hw, uint32_t gpio, uint32_t sign
|
|||||||
* @param pin_name Pin name to configure
|
* @param pin_name Pin name to configure
|
||||||
* @param func Function to assign to the pin
|
* @param func Function to assign to the pin
|
||||||
*/
|
*/
|
||||||
static inline void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
static inline __attribute__((always_inline)) void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
||||||
{
|
{
|
||||||
PIN_FUNC_SELECT(pin_name, func);
|
PIN_FUNC_SELECT(pin_name, func);
|
||||||
}
|
}
|
||||||
|
@@ -388,7 +388,7 @@ static inline void gpio_ll_iomux_in(gpio_dev_t *hw, uint32_t gpio, uint32_t sign
|
|||||||
* @param pin_name Pin name to configure
|
* @param pin_name Pin name to configure
|
||||||
* @param func Function to assign to the pin
|
* @param func Function to assign to the pin
|
||||||
*/
|
*/
|
||||||
static inline void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
static inline __attribute__((always_inline)) void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
||||||
{
|
{
|
||||||
// Disable USB Serial JTAG if pins 18 or pins 19 needs to select an IOMUX function
|
// Disable USB Serial JTAG if pins 18 or pins 19 needs to select an IOMUX function
|
||||||
if (pin_name == IO_MUX_GPIO18_REG || pin_name == IO_MUX_GPIO19_REG) {
|
if (pin_name == IO_MUX_GPIO18_REG || pin_name == IO_MUX_GPIO19_REG) {
|
||||||
|
@@ -399,7 +399,7 @@ static inline void gpio_ll_iomux_in(gpio_dev_t *hw, uint32_t gpio, uint32_t sign
|
|||||||
* @param pin_name Pin name to configure
|
* @param pin_name Pin name to configure
|
||||||
* @param func Function to assign to the pin
|
* @param func Function to assign to the pin
|
||||||
*/
|
*/
|
||||||
static inline void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
static inline __attribute__((always_inline)) void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
||||||
{
|
{
|
||||||
PIN_FUNC_SELECT(pin_name, func);
|
PIN_FUNC_SELECT(pin_name, func);
|
||||||
}
|
}
|
||||||
|
@@ -401,7 +401,7 @@ static inline void gpio_ll_iomux_in(gpio_dev_t *hw, uint32_t gpio, uint32_t sign
|
|||||||
* @param pin_name Pin name to configure
|
* @param pin_name Pin name to configure
|
||||||
* @param func Function to assign to the pin
|
* @param func Function to assign to the pin
|
||||||
*/
|
*/
|
||||||
static inline void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
static inline __attribute__((always_inline)) void gpio_ll_iomux_func_sel(uint32_t pin_name, uint32_t func)
|
||||||
{
|
{
|
||||||
PIN_FUNC_SELECT(pin_name, func);
|
PIN_FUNC_SELECT(pin_name, func);
|
||||||
}
|
}
|
||||||
|
@@ -584,6 +584,12 @@ UT_047:
|
|||||||
- ESP32S2_IDF
|
- ESP32S2_IDF
|
||||||
- UT_T1_1
|
- UT_T1_1
|
||||||
|
|
||||||
|
UT_048:
|
||||||
|
extends: .unit_test_32_template
|
||||||
|
tags:
|
||||||
|
- ESP32_IDF
|
||||||
|
- UT_T1_1
|
||||||
|
|
||||||
UT_C3:
|
UT_C3:
|
||||||
extends: .unit_test_c3_template
|
extends: .unit_test_c3_template
|
||||||
parallel: 31
|
parallel: 31
|
||||||
|
@@ -1,3 +0,0 @@
|
|||||||
CONFIG_IDF_TARGET="esp32c3"
|
|
||||||
TEST_COMPONENTS=esp_ipc spi_flash
|
|
||||||
CONFIG_COMPILER_OPTIMIZATION_NONE=y
|
|
@@ -1,3 +0,0 @@
|
|||||||
CONFIG_IDF_TARGET="esp32"
|
|
||||||
TEST_COMPONENTS=esp_ipc spi_flash
|
|
||||||
CONFIG_COMPILER_OPTIMIZATION_NONE=y
|
|
Reference in New Issue
Block a user