summaryrefslogtreecommitdiff
path: root/components/drivers/serial/Kconfig
blob: 2cf75fcd846b710efac729e37a5c828bdcda18de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
menuconfig RT_USING_SERIAL
    bool "Using Serial device drivers"
    select RT_USING_DEVICE_IPC
    select RT_USING_DEVICE
    default y
    help
      Enable the UART/USART driver framework that backs the console and TTY
      devices. Required for shell access or any serial communications.

    if RT_USING_SERIAL
        choice RT_USING_SERIAL_VERSION
            prompt "Choice Serial version"
            default RT_USING_SERIAL_V1
            config RT_USING_SERIAL_V1
                bool "RT_USING_SERIAL_V1"
            config RT_USING_SERIAL_V2
                bool "RT_USING_SERIAL_V2"
        help
          Select between the legacy serial core (V1) and the newer buffer/ISR
          design (V2). Choose V2 for advanced buffer strategies, otherwise stay
          with V1 for compatibility.
        endchoice

        choice RT_USING_SERIAL_MODE
            prompt "Choice Serial version"
            depends on RT_USING_SERIAL_V2
            default RT_SERIAL_BUF_STRATEGY_OVERWRITE
            config RT_SERIAL_BUF_STRATEGY_DROP
                bool "drop new incoming data when the buffer is full"
            config RT_SERIAL_BUF_STRATEGY_OVERWRITE
                bool "overwrite old data when the buffer is full"
        help
          Define how V2 RX buffers behave on overflow: drop new bytes or
          overwrite oldest data.
        endchoice

        config RT_SERIAL_USING_DMA
            bool "Enable serial DMA mode"
            default y
            help
              Allow serial drivers to use DMA for RX/TX to reduce CPU load. Turn
              off if your SoC lacks UART DMA support.

        config RT_SERIAL_RB_BUFSZ
            int "Set RX buffer size"
            depends on !RT_USING_SERIAL_V2
            default 64
            help
              Size of the legacy (V1) receive ring buffer in bytes.
        config RT_USING_SERIAL_BYPASS
            bool "Using serial bypass"
            default n
            help
              Enable bypass mode that forwards data between two serial devices,
              useful for debugging or bridging.
        endif

if RT_USING_DM && RT_USING_SERIAL
    rsource "device/Kconfig"
endif