When using asynchronous API, transfer will fail if the source buffer is located in a region that cannot be accessed by DMA. This could happen when a buffer is declared const, and placed in flash memory, for example. Workaround this problem by loading the data into a set of temporary caches before passing them to DMA. Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
30 lines
739 B
Text
30 lines
739 B
Text
# MAX32 UART configuration
|
|
|
|
# Copyright (c) 2023-2024 Analog Devices, Inc.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
config UART_MAX32
|
|
bool "MAX32 MCU serial driver"
|
|
default y
|
|
depends on DT_HAS_ADI_MAX32_UART_ENABLED
|
|
select SERIAL_HAS_DRIVER
|
|
select SERIAL_SUPPORT_INTERRUPT
|
|
select PINCTRL
|
|
select SERIAL_SUPPORT_ASYNC if DT_HAS_ADI_MAX32_DMA_ENABLED
|
|
select DMA if UART_ASYNC_API
|
|
help
|
|
This option enables the UART driver for MAX32 family of
|
|
processors.
|
|
Say y if you wish to use serial port on MAX32 MCU.
|
|
|
|
if UART_MAX32
|
|
|
|
config UART_TX_CACHE_LEN
|
|
int "TX cache buffer size"
|
|
range 8 64
|
|
default 8
|
|
help
|
|
Size of UART transmit buffer that is used when source buffer
|
|
is not located in a DMA-able region.
|
|
|
|
endif # UART_MAX32
|