From 1063c6d616672e47fec236f9eac058e43a2f7a90 Mon Sep 17 00:00:00 2001 From: Rohan Sahay Date: Mon, 16 Oct 2023 09:05:31 +0530 Subject: [PATCH] Adds refactored deassert --- .../silabs/efr32/rs911x/hal/efx_spi.c | 24 +++++-------------- 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/examples/platform/silabs/efr32/rs911x/hal/efx_spi.c b/examples/platform/silabs/efr32/rs911x/hal/efx_spi.c index 809ff833ff5a98..d69434b7ae3cdf 100644 --- a/examples/platform/silabs/efr32/rs911x/hal/efx_spi.c +++ b/examples/platform/silabs/efr32/rs911x/hal/efx_spi.c @@ -279,17 +279,11 @@ sl_status_t sl_wfx_host_spiflash_cs_deassert(void) sl_status_t sl_wfx_host_pre_bootloader_spi_transfer(void) { #if SL_SPICTRL_MUX - xSemaphoreTake(spi_sem_sync_hdl, portMAX_DELAY); - if (spi_enabled) + if (sl_wfx_host_spi_cs_deassert() != SL_STATUS_OK) { - if (ECODE_EMDRV_SPIDRV_OK != SPIDRV_DeInit(SL_SPIDRV_HANDLE)) - { - xSemaphoreGive(spi_sem_sync_hdl); - SILABS_LOG("%s error.", __func__); - return SL_STATUS_FAIL; - } - spi_enabled = false; + return SL_STATUS_FAIL; } + xSemaphoreTake(spi_sem_sync_hdl, portMAX_DELAY); #endif // SL_SPICTRL_MUX // bootloader_init takes care of SPIDRV_Init() int32_t status = bootloader_init(); @@ -334,17 +328,11 @@ sl_status_t sl_wfx_host_post_bootloader_spi_transfer(void) sl_status_t sl_wfx_host_pre_lcd_spi_transfer(void) { #if SL_SPICTRL_MUX - xSemaphoreTake(spi_sem_sync_hdl, portMAX_DELAY); - if (spi_enabled) + if (sl_wfx_host_spi_cs_deassert() != SL_STATUS_OK) { - if (ECODE_EMDRV_SPIDRV_OK != SPIDRV_DeInit(SL_SPIDRV_HANDLE)) - { - xSemaphoreGive(spi_sem_sync_hdl); - SILABS_LOG("%s error.", __func__); - return SL_STATUS_FAIL; - } - spi_enabled = false; + return SL_STATUS_FAIL; } + xSemaphoreTake(spi_sem_sync_hdl, portMAX_DELAY); #endif // SL_SPICTRL_MUX // sl_memlcd_refresh takes care of SPIDRV_Init() if (SL_STATUS_OK != sl_memlcd_refresh(sl_memlcd_get()))