~aleteoryx/muditaos

cf167db3059f2ebea5ad7041c3c539cbd06d0753 — Maciej-Mudita 3 years ago c424b67
[MOS-91] Fix cellular DMA errors

Fix "DMA is busy" errors when booting the GSM modem at the stage of
finding the appropriate baudrate.
2 files changed, 8 insertions(+), 0 deletions(-)

M module-bsp/board/rt1051/bsp/cellular/rt1051_cellular.cpp
M pure_changelog.md
M module-bsp/board/rt1051/bsp/cellular/rt1051_cellular.cpp => module-bsp/board/rt1051/bsp/cellular/rt1051_cellular.cpp +7 -0
@@ 230,6 230,11 @@ namespace bsp
                if (!LPUART_IsEDMATxBusy(&uartDmaHandle)) {
                    break;
                }
                else if (i == maxTXCheckRetires - 1) {
                    LOG_ERROR("Cellular Uart error: EDMA is busy");
                    LPUART_TransferAbortSendEDMA(CELLULAR_UART_BASE, &uartDmaHandle);
                    return -1;
                }
            }
        }



@@ 249,6 254,7 @@ namespace bsp

        if (status != kStatus_Success) {
            LOG_ERROR("Cellular: TX Failed! , status: %d", static_cast<int>(status));
            LPUART_TransferAbortSendEDMA(CELLULAR_UART_BASE, &uartDmaHandle);
            disableTx();
            return -1;
        }


@@ 258,6 264,7 @@ namespace bsp

        if (ulNotificationValue == 0) {
            LOG_ERROR("Cellular Uart error: TX Transmission timeout");
            LPUART_TransferAbortSendEDMA(CELLULAR_UART_BASE, &uartDmaHandle);
            disableTx();
            return -1;
        }

M pure_changelog.md => pure_changelog.md +1 -0
@@ 7,6 7,7 @@
* Separated system volume from Bluetooth device volume for A2DP

### Fixed
* Fixed cellular DMA errors
* Fixed order of the services while closing system
* Fixed crash of the E-ink service while restoring system data
* Fixed removing wrong sentinels