carl9170 firmware: update default config
[carl9170fw.git] / carlfw / Kconfig
1 menu "General"
2
3 config CARL9170FW_MAKE_RELEASE
4         def_bool y
5         prompt "Update/Generate new release/revision files"
6
7 config CARL9170FW_RELEASE_VERSION
8         int
9         depends on CARL9170FW_MAKE_RELEASE
10         prompt "Major CARL9170 Firmware Revision"
11         default 1
12
13 menu "Selectable Hardware Options"
14
15 choice
16         prompt "Receiver Max. Frame Length"
17         default CARL9170FW_RX_FRAME_LEN_8192
18
19         config CARL9170FW_RX_FRAME_LEN_4096
20                 bool "4096"
21
22         config CARL9170FW_RX_FRAME_LEN_8192
23                 bool "8192"
24
25         config CARL9170FW_RX_FRAME_LEN_16384
26                 bool "16384"
27
28         config CARL9170FW_RX_FRAME_LEN_32768
29                 bool "32768"
30
31 endchoice
32
33 config CARL9170FW_RX_FRAME_LEN
34         int
35         default 4096 if CARL9170FW_RX_FRAME_LEN_4096
36         default 8192 if CARL9170FW_RX_FRAME_LEN_8192
37         default 16384 if CARL9170FW_RX_FRAME_LEN_16384
38         default 32768 if CARL9170FW_RX_FRAME_LEN_32768
39
40 config CARL9170FW_WATCHDOG
41         def_bool y
42         prompt "Activate HW Watchdog"
43         ---help---
44          The watchdog will notify the application as soon as the firmware
45          has stalled.
46
47          Say Y.
48
49 config CARL9170FW_GPIO_INTERRUPT
50         def_bool y
51         prompt "GPIO Software Interrupt"
52         ---help---
53          When this option is enabled, the firmware will poll the GPIO
54          registers and reports to the driver whenever the GPIO state
55          has changed from a previous state.
56
57          Note: This feature is necessary to monitor the WPS button,
58                if you have one on your device, then say Y.
59
60 config CARL9170FW_SECURITY_ENGINE
61         def_bool y
62         prompt "Support Hardware Crypto Engine"
63         ---help---
64          This options controls if the firmware will allow the driver
65          to program the security engine / CAM through a firmware
66          interface.
67
68          Say Y. Unless you want to do the en- and decryption for
69          CCMP(AES), TKIP/WEP(RC4) in the application anyway.
70
71 config CARL9170FW_RADIO_FUNCTIONS
72         def_bool y
73         prompt "Enable Firmware-supported Radio/RF functions"
74         ---help---
75          Some PHY/RF functions (e.g.: AGC and Noise calibration) need
76          to be done in the firmware.
77
78          Say Y, unless you really don't need the Radio/RF for
79          your project.
80
81 endmenu
82
83 menu "802.11 Firmware Features"
84
85 config CARL9170FW_HANDLE_BACK_REQ
86         def_bool y
87         prompt "Handle BlockACK Requests in Firmware"
88         ---help---
89          Enables a firmware mechanism to answer incoming BlockACK requests.
90          This feature is necessary to comply with 802.11n. So say Y,
91          if you have plans to support this operation mode.
92
93 config CARL9170FW_BACK_REQS_NUM
94         default 4
95         int
96         prompt "Number of max. active BlockACK Request"
97         depends on CARL9170FW_HANDLE_BACK_REQ
98
99 config CARL9170FW_CAB_QUEUE
100         def_bool y
101         prompt "Support software-based Content after Beacon Queue"
102         ---help---
103          This (software) queue is used to send any broad-/multi-cast buffered
104          frames after the next DTIM beacon.
105
106          This feature is required for Accesspoint mode operation.
107
108          Say Y.
109
110 endmenu
111
112 source "carlfw/usb/Kconfig"
113
114 menu "Experimental, Unstable & Testing Extensions"
115
116 config CARL9170FW_PRINTF
117         def_bool y
118         prompt "Advanced printf"
119         depends on CARL9170FW_DEBUG_UART || CARL9170FW_DEBUG_USB
120         ---help---
121          Advanced printf (very useful for debugging purposes)
122          The formats supported by this implementation are:
123                 'd' 'u' 'c' 's' 'x' 'X' 'p'.
124
125          Note: If this option is disabled, the firmware will be only
126                capable of reported _preformated_ string.
127
128 config CARL9170FW_EXPERIMENTAL
129         def_bool y
130         prompt "Experimental Features"
131
132 config CARL9170FW_PSM
133         def_bool y
134         prompt "Firmware Supported Power-saving Management"
135         depends on CARL9170FW_EXPERIMENTAL && CARL9170FW_RADIO_FUNCTIONS
136         ---help---
137          This options enables a interface for the application to
138          switch off the RF/PHY (in order to save power). And the
139          Firmware will automatically turn it on again, when the
140          PRETBTT event fires.
141
142 config CARL9170FW_DELAYED_TX
143         def_bool n
144         prompt "Delay and reorder TX"
145         depends on CARL9170FW_EXPERIMENTAL
146         ---help---
147          Delay incoming TX' from the application until wlan_complete
148          has finished.
149
150          This feature is necessary to keep A-MPDUs partially ordered.
151
152          Doesn't work 100% yet, but in most cases other HW designs can
153          deal with the fallout.
154
155 config CARL9170FW_VIFS_NUM
156         default 1
157         int
158         prompt "Number of additional pseudo virtual interfaces"
159         depends on CARL9170FW_EXPERIMENTAL
160
161 config CARL9170FW_FW_MAC_RESET
162         def_bool n
163         prompt "Firmware MAC Chip recovery"
164         depends on CARL9170FW_EXPERIMENTAL
165
166 config CARL9170FW_BROKEN_FEATURES
167         def_bool n
168         prompt "Broken Featurs"
169
170 config CARL9170FW_DEBUG
171         def_bool n
172         depends on CARL9170FW_BROKEN_FEATURES && CARL9170FW_PRINTF
173         prompt "Enable verbose debugging messages"
174
175 config CARL9170FW_DEBUG_LED_HEARTBEAT
176         def_bool n
177         prompt "LED Heartbeat"
178         depends on CARL9170FW_BROKEN_FEATURES
179         ---help---
180          This option conflicts with the application's LED code.
181          Also, it assumes that you have two LEDs, which is not
182          necessarily true.
183
184 config CARL9170FW_DEBUG_UART
185         def_bool n
186         prompt "Pass debug messages through Highspeed UART"
187         depends on CARL9170FW_BROKEN_FEATURES
188         ---help---
189          This option allows the firmware to send BUG/ERR/INFO/DBG and
190          hexdumps through the UART _as well_. However, first: you must
191          connect a working logger.
192
193 config CARL9170FW_WATCHDOG_BUTTON
194         def_bool n
195         depends on CARL9170FW_BROKEN && CARL9170FW_WATCHDOG && CARL9170FW_GPIO_INTERRUPT
196         prompt "Trigger Watchdog by pressing the WPS button"
197
198 choice CARL9170FW_UART_CLOCK
199         prompt "UART Clock"
200         depends on CARL9170FW_DEBUG_UART
201         default CARL9170FW_UART_CLOCK_40M
202
203 config CARL9170FW_UART_CLOCK_25M
204         bool "25"
205
206 config CARL9170FW_UART_CLOCK_40M
207         bool "40"
208
209 endchoice
210
211
212 choice
213         prompt "TX / RX Path"
214
215         default CARL9170FW_NORMAL_TX_RX
216
217         config CARL9170FW_NORMAL_TX_RX
218                 bool
219                 prompt "Normal WLAN TX/RX routines"
220
221         config CARL9170FW_LOOPBACK
222                 bool
223                 depends on CARL9170FW_BROKEN_FEATURES
224                 prompt "TX->(tx feedback)->RX loopback"
225                 ---help---
226                  Useful carlu testcase.
227
228         config CARL9170FW_DISCARD
229                 bool
230                 depends on CARL9170FW_BROKEN_FEATURES
231                 prompt "TX->(tx feedback)"
232                 ---help---
233                  Useful carlu testcase
234
235 endchoice
236
237 config CARL9170FW_UNUSABLE
238         def_bool y
239         depends on CARL9170FW_BROKEN || CARL9170FW_LOOPBACK
240
241 config CARL9170FW_USB_MODESWITCH
242         def_bool n
243         prompt "USB 1.1 / 2.0 switching support"
244         depends on CARL9170FW_BROKEN_FEATURES
245         ---help---
246          Mostly implemented, but untested and some serious
247          doubts remain.
248
249 menu "Build Options"
250 config CARL9170FW_AGGRESSIVE_CFLAGS
251         def_bool y
252         prompt "Enable aggressive size optimization"
253         ---help---
254          This option adds several more optimization compiler flags,
255          which can greatly reduce the firmware size... at the expense
256          of machine-code readability.
257
258           Say Y. Else the firmware might not fit onto the device!
259
260 endmenu
261
262 endmenu
263
264 endmenu