summaryrefslogtreecommitdiff
path: root/components/drivers/wlan/Kconfig
blob: 92abc25ed9bd3c8761fbda1183edb77a9d0c0ae1 (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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
menuconfig RT_USING_WIFI
    bool "Using Wi-Fi framework"
    default n
    help
      Enable the RT-Thread Wi-Fi middleware which manages STA/AP interfaces,
      connection profiles, protocol glue, workqueues, and debugging hooks.

    if RT_USING_WIFI
        config RT_WLAN_DEVICE_STA_NAME
            string "The device name for station"
            default "wlan0"
            help
              Logical device name used for the station interface.

        config RT_WLAN_DEVICE_AP_NAME
            string "The device name for ap"
            default "wlan1"
            help
              Logical device name for the SoftAP interface.

        config RT_WLAN_SSID_MAX_LENGTH
            int "SSID maximum length"
            default 32
            help
              Upper bound for SSID strings stored by the framework.

        config RT_WLAN_PASSWORD_MAX_LENGTH
            int "Password maximum length"
            default 32
            help
              Maximum length of passphrases saved in configs.

        config RT_WLAN_DEV_EVENT_NUM
            int "Driver events maxcount"
            default 2
            help
              Number of event objects reserved for notifying upper layers.

        config RT_WLAN_MANAGE_ENABLE
            bool "Connection management Enable"
            default y
            help
              Turn on the connection manager (auto reconnect, scanning, CLI).

        if RT_WLAN_MANAGE_ENABLE
            config RT_WLAN_SCAN_WAIT_MS
                int "Set scan timeout time(ms)"
                default 10000
                help
                  Timeout for synchronous scan requests in milliseconds.

            config RT_WLAN_CONNECT_WAIT_MS
                int "Set connect timeout time(ms)"
                default 10000
                help
                  Connection attempt timeout.

            config RT_WLAN_SCAN_SORT
                bool "Automatic sorting of scan results"
                default y
                help
                  Sort scan results by RSSI/channel automatically.

            config RT_WLAN_MSH_CMD_ENABLE
                bool "MSH command Enable"
                default y
                help
                  Add msh shell commands (`wifi`, etc.) for management.

            config RT_WLAN_JOIN_SCAN_BY_MGNT
                bool "Enable wlan join scan"
                default y
                help
                  Allow connection manager to trigger scans before joining.

            config RT_WLAN_AUTO_CONNECT_ENABLE
                bool "Auto connect Enable"
                select RT_WLAN_CFG_ENABLE
                select RT_WLAN_WORK_THREAD_ENABLE
                default y
                help
                  Automatically reconnect using saved profiles when link drops.

            if RT_WLAN_AUTO_CONNECT_ENABLE
                config AUTO_CONNECTION_PERIOD_MS
                    int "Auto connect period(ms)"
                    default 2000
                    help
                      Interval between automatic reconnect attempts.
            endif
        endif

        config RT_WLAN_CFG_ENABLE
            bool "WiFi information automatically saved Enable"
            default y
            help
              Persist Wi-Fi credentials and settings to storage.

        if RT_WLAN_CFG_ENABLE
            config RT_WLAN_CFG_INFO_MAX
                int "Maximum number of WiFi information automatically saved"
                default 3
                help
                  Maximum number of networks stored for auto-connect.
        endif

        config RT_WLAN_PROT_ENABLE
            bool "Transport protocol manage Enable"
            default y
            help
              Allow protocol modules (lwIP, etc.) to register with WLAN core.

        if RT_WLAN_PROT_ENABLE
            config RT_WLAN_PROT_NAME_LEN
                int "Transport protocol name length"
                default 8
                help
                  Max length for protocol identifier strings.

            config RT_WLAN_PROT_MAX
                int "Transport protocol maxcount"
                default 2
                help
                  Number of protocol backends that can be registered.

            config RT_WLAN_DEFAULT_PROT
                string "Default transport protocol"
                default "lwip"
                help
                  Name of the protocol backend used when none specified.

            config RT_WLAN_PROT_LWIP_ENABLE
                bool "LWIP transport protocol Enable"
                select RT_USING_LWIP
                default y
                help
                  Register lwIP as a transport backend for WLAN sockets.

            if RT_WLAN_PROT_LWIP_ENABLE
                config RT_WLAN_PROT_LWIP_NAME
                    string "LWIP transport protocol name"
                    default "lwip"
                    help
                      Name exported for the lwIP backend.

                config RT_WLAN_PROT_LWIP_PBUF_FORCE
                    bool "Forced use of PBUF transmission"
                    default n
                    help
                      Force PBUF-based data path even when zero-copy is possible.
            endif
        endif

        config RT_WLAN_WORK_THREAD_ENABLE
            bool "WLAN work queue thread Enable"
            default y
            help
              Spawn the WLAN workqueue thread that handles asynchronous tasks.

        if RT_WLAN_WORK_THREAD_ENABLE
            config RT_WLAN_WORKQUEUE_THREAD_NAME
                string "WLAN work queue thread name"
                default "wlan"
                help
                  Name of the workqueue thread.

            config RT_WLAN_WORKQUEUE_THREAD_SIZE
                int "WLAN work queue thread size"
                default 2048
                help
                  Stack size in bytes for the workqueue thread.

            config RT_WLAN_WORKQUEUE_THREAD_PRIO
                int "WLAN work queue thread priority"
                default 15
                help
                  RT-Thread priority of the WLAN workqueue.
        endif

        menuconfig RT_WLAN_DEBUG
            bool "Enable WLAN Debugging Options"
            default n
            help
              Enable fine-grained debug switches for WLAN subsystems.

        if RT_WLAN_DEBUG
            config RT_WLAN_CMD_DEBUG
                bool "Enable Debugging of wlan_cmd.c"
                default n
                help
                  Log detailed info from the command module.

            config RT_WLAN_MGNT_DEBUG
                bool "Enable Debugging of wlan_mgnt.c"
                default n
                help
                  Debug connection management state transitions.

            config RT_WLAN_DEV_DEBUG
                bool "Enable Debugging of wlan_dev.c"
                default n
                help
                  Trace driver-level operations.

            config RT_WLAN_PROT_DEBUG
                bool "Enable Debugging of wlan_prot.c"
                default n
                help
                  Dump protocol manager operations.

            config RT_WLAN_CFG_DEBUG
                bool "Enable Debugging of wlan_cfg.c"
                default n
                help
                  Trace configuration load/save.

            config RT_WLAN_LWIP_DEBUG
                bool "Enable Debugging of wlan_lwip.c"
                default n
                help
                  Print lwIP glue logs.
        endif
    endif