Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

  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
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
# SPDX-License-Identifier: GPL-2.0-only
#
# Multimedia Video device configuration
#

menuconfig CONFIG_RADIO_ADAPTERS
	bool "Radio Adapters"
	depends on CONFIG_VIDEO_V4L2
	depends on CONFIG_MEDIA_RADIO_SUPPORT
	default y
	help
	  Say Y here to enable selecting AM/FM radio adapters.

if CONFIG_RADIO_ADAPTERS && CONFIG_VIDEO_V4L2

config CONFIG_RADIO_TEA575X
	tristate

source "drivers/media/radio/si470x/Kconfig"

config CONFIG_RADIO_SI4713
	tristate "Silicon Labs Si4713 FM Radio with RDS Transmitter support"
	depends on CONFIG_VIDEO_V4L2

source "drivers/media/radio/si4713/Kconfig"

config CONFIG_RADIO_SI476X
	tristate "Silicon Laboratories Si476x I2C FM Radio"
	depends on CONFIG_I2C && CONFIG_VIDEO_V4L2
	depends on CONFIG_MFD_SI476X_CORE
	depends on CONFIG_SND_SOC
	select CONFIG_SND_SOC_SI476X
	help
	  Choose Y here if you have this FM radio chip.

	  In order to control your radio card, you will need to use programs
	  that are compatible with the Video For Linux 2 API.  Information on
	  this API and pointers to "v4l2" programs may be found at
	  <file:Documentation/media/media_uapi.rst>.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-si476x.

config CONFIG_USB_MR800
	tristate "AverMedia MR 800 USB FM radio support"
	depends on CONFIG_USB && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to connect this type of radio to your
	  computer's CONFIG_USB port. Note that the audio is not digital, and
	  you must connect the line out connector to a sound card or a
	  set of speakers.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-mr800.

config CONFIG_USB_DSBR
	tristate "D-Link/GemTek USB FM radio support"
	depends on CONFIG_USB && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to connect this type of radio to your
	  computer's CONFIG_USB port. Note that the audio is not digital, and
	  you must connect the line out connector to a sound card or a
	  set of speakers.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called dsbr100.

config CONFIG_RADIO_MAXIRADIO
	tristate "Guillemot MAXI Radio FM 2000 radio"
	depends on CONFIG_VIDEO_V4L2 && CONFIG_PCI
	select CONFIG_RADIO_TEA575X
	help
	  Choose Y here if you have this radio card.  This card may also be
	  found as Gemtek CONFIG_PCI FM.

	  In order to control your radio card, you will need to use programs
	  that are compatible with the Video For Linux API.  Information on
	  this API and pointers to "v4l" programs may be found at
	  <file:Documentation/media/media_uapi.rst>.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-maxiradio.

config CONFIG_RADIO_SHARK
	tristate "Griffin radioSHARK USB radio receiver"
	depends on CONFIG_USB
	select CONFIG_RADIO_TEA575X
	help
	  Choose Y here if you have this radio receiver.

	  There are 2 versions of this device, this driver is for version 1,
	  which is white.

	  In order to control your radio card, you will need to use programs
	  that are compatible with the Video For Linux API.  Information on
	  this API and pointers to "v4l" programs may be found at
	  <file:Documentation/media/media_uapi.rst>.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-shark.

config CONFIG_RADIO_SHARK2
	tristate "Griffin radioSHARK2 USB radio receiver"
	depends on CONFIG_USB
	help
	  Choose Y here if you have this radio receiver.

	  There are 2 versions of this device, this driver is for version 2,
	  which is black.

	  In order to control your radio card, you will need to use programs
	  that are compatible with the Video For Linux API.  Information on
	  this API and pointers to "v4l" programs may be found at
	  <file:Documentation/media/media_uapi.rst>.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-shark2.

config CONFIG_USB_KEENE
	tristate "Keene FM Transmitter USB support"
	depends on CONFIG_USB && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to connect this type of FM transmitter
	  to your computer's CONFIG_USB port.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-keene.

config CONFIG_USB_RAREMONO
	tristate "Thanko's Raremono AM/FM/SW radio support"
	depends on CONFIG_USB && CONFIG_VIDEO_V4L2
	help
	  The 'Thanko's Raremono' device contains the Si4734 chip from Silicon Labs Inc.
	  It is one of the very few or perhaps the only consumer CONFIG_USB radio device
	  to receive the AM/FM/SW bands.

	  Say Y here if you want to connect this type of AM/FM/SW receiver
	  to your computer's CONFIG_USB port.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-raremono.

config CONFIG_USB_MA901
	tristate "Masterkit MA901 USB FM radio support"
	depends on CONFIG_USB && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to connect this type of radio to your
	  computer's CONFIG_USB port. Note that the audio is not digital, and
	  you must connect the line out connector to a sound card or a
	  set of speakers or headphones.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-ma901.

config CONFIG_RADIO_TEA5764
	tristate "TEA5764 I2C FM radio support"
	depends on CONFIG_I2C && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to use the TEA5764 FM chip found in
	  EZX phones. This FM chip is present in EZX phones from Motorola,
	  connected to internal pxa CONFIG_I2C bus.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-tea5764.

config CONFIG_RADIO_TEA5764_XTAL
	bool "TEA5764 crystal reference"
	depends on CONFIG_RADIO_TEA5764=y
	default y
	help
	  Say Y here if TEA5764 have a 32768 Hz crystal in circuit, say N
	  here if TEA5764 reference frequency is connected in FREQIN.

config CONFIG_RADIO_SAA7706H
	tristate "SAA7706H Car Radio DSP"
	depends on CONFIG_I2C && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to use the SAA7706H Car radio Digital
	  Signal Processor, found for instance on the Russellville development
	  board. On the russellville the device is connected to internal
	  timberdale CONFIG_I2C bus.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called SAA7706H.

config CONFIG_RADIO_TEF6862
	tristate "TEF6862 Car Radio Enhanced Selectivity Tuner"
	depends on CONFIG_I2C && CONFIG_VIDEO_V4L2
	help
	  Say Y here if you want to use the TEF6862 Car Radio Enhanced
	  Selectivity Tuner, found for instance on the Russellville development
	  board. On the russellville the device is connected to internal
	  timberdale CONFIG_I2C bus.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called TEF6862.

config CONFIG_RADIO_TIMBERDALE
	tristate "Enable the Timberdale radio driver"
	depends on CONFIG_MFD_TIMBERDALE && CONFIG_VIDEO_V4L2
	depends on CONFIG_I2C	# for CONFIG_RADIO_SAA7706H
	select CONFIG_RADIO_TEF6862
	select CONFIG_RADIO_SAA7706H
	help
	  This is a kind of umbrella driver for the Radio Tuner and DSP
	  found behind the Timberdale CONFIG_FPGA on the Russellville board.
	  Enabling this driver will automatically select the DSP and tuner.

config CONFIG_RADIO_WL1273
	tristate "Texas Instruments WL1273 I2C FM Radio"
	depends on CONFIG_I2C && CONFIG_VIDEO_V4L2
	select CONFIG_MFD_CORE
	select CONFIG_MFD_WL1273_CORE
	select CONFIG_FW_LOADER
	help
	  Choose Y here if you have this FM radio chip.

	  In order to control your radio card, you will need to use programs
	  that are compatible with the Video For Linux 2 API.  Information on
	  this API and pointers to "v4l2" programs may be found at
	  <file:Documentation/media/media_uapi.rst>.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-wl1273.

# TI's ST based wl128x FM radio
source "drivers/media/radio/wl128x/Kconfig"

#
# CONFIG_ISA drivers configuration
#

menuconfig CONFIG_V4L_RADIO_ISA_DRIVERS
	bool "ISA radio devices"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	help
	  Say Y here to enable support for these CONFIG_ISA drivers.

if CONFIG_V4L_RADIO_ISA_DRIVERS

config CONFIG_RADIO_ISA
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	tristate

config CONFIG_RADIO_CADET
	tristate "ADS Cadet AM/FM Tuner"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	help
	  Choose Y here if you have one of these AM/FM radio cards, and then
	  fill in the port address below.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-cadet.

config CONFIG_RADIO_RTRACK
	tristate "AIMSlab RadioTrack (aka RadioReveal) support"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have one of these FM radio cards, and then fill
	  in the port address below.

	  Note that newer AIMSlab RadioTrack cards have a different chipset
	  and are not supported by this driver.  For these cards, use the
	  RadioTrack II driver below.

	  If you have a GemTeks combined (PnP) sound- and radio card you must
	  use this driver as a module and setup the card with isapnptools.
	  You must also pass the module a suitable io parameter, 0x248 has
	  been reported to be used by these cards.

	  More information is contained in the file
	  <file:Documentation/media/v4l-drivers/radiotrack.rst>.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-aimslab.

config CONFIG_RADIO_RTRACK_PORT
	hex "RadioTrack i/o port (0x20f or 0x30f)"
	depends on CONFIG_RADIO_RTRACK=y
	default "30f"
	help
	  Enter either 0x30f or 0x20f here.  The card default is 0x30f, if you
	  haven't changed the jumper setting on the card.

config CONFIG_RADIO_RTRACK2
	tristate "AIMSlab RadioTrack II support"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have this FM radio card, and then fill in the
	  port address below.

	  Note: this driver hasn't been tested since a long time due to lack
	  of hardware. If you have this hardware, then please contact the
	  linux-media mailinglist.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-rtrack2.

config CONFIG_RADIO_RTRACK2_PORT
	hex "RadioTrack II i/o port (0x20c or 0x30c)"
	depends on CONFIG_RADIO_RTRACK2=y
	default "30c"
	help
	  Enter either 0x30c or 0x20c here.  The card default is 0x30c, if you
	  haven't changed the jumper setting on the card.

config CONFIG_RADIO_AZTECH
	tristate "Aztech/Packard Bell Radio"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have one of these FM radio cards, and then fill
	  in the port address below.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-aztech.

config CONFIG_RADIO_AZTECH_PORT
	hex "Aztech/Packard Bell I/O port (0x350 or 0x358)"
	depends on CONFIG_RADIO_AZTECH=y
	default "350"
	help
	  Enter either 0x350 or 0x358 here.  The card default is 0x350, if you
	  haven't changed the setting of jumper JP3 on the card.  Removing the
	  jumper sets the card to 0x358.

config CONFIG_RADIO_GEMTEK
	tristate "GemTek Radio card (or compatible) support"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have this FM radio card, and then fill in the
	  I/O port address and settings below. The following cards either have
	  GemTek Radio tuner or are rebranded GemTek Radio cards:

	  - Sound Vision 16 Gold with FM Radio
	  - Typhoon Radio card (some models)
	  - Hama Radio card

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-gemtek.

config CONFIG_RADIO_GEMTEK_PORT
	hex "Fixed I/O port (0x20c, 0x30c, 0x24c, 0x34c, 0x248 or 0x28c)"
	depends on CONFIG_RADIO_GEMTEK=y
	default "34c"
	help
	  Enter either 0x20c, 0x30c, 0x24c, 0x34c, 0x248 or 0x28c here. The
	  card default is 0x34c, if you haven't changed the jumper setting
	  on the card.

	  On Sound Vision 16 Gold PnP with FM Radio (ESS1869+FM Gemtek), the I/O
	  port is 0x20c, 0x248 or 0x28c.

	  If automatic I/O port probing is enabled this port will be used only
	  in case of automatic probing failure, ie. as a fallback.

config CONFIG_RADIO_GEMTEK_PROBE
	bool "Automatic I/O port probing"
	depends on CONFIG_RADIO_GEMTEK=y
	default y
	help
	  Say Y here to enable automatic probing for GemTek Radio card. The
	  following ports will be probed: 0x20c, 0x30c, 0x24c, 0x34c, 0x248 and
	  0x28c.

config CONFIG_RADIO_MIROPCM20
	tristate "miroSOUND PCM20 radio"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_ISA_DMA_API && CONFIG_VIDEO_V4L2 && CONFIG_SND
	select CONFIG_SND_ISA
	select CONFIG_SND_MIRO
	help
	  Choose Y here if you have this FM radio card. You also need to enable
	  the ALSA sound system. This choice automatically selects the ALSA
	  sound card driver "Miro miroSOUND PCM1pro/PCM12/PCM20radio" as this
	  is required for the radio-miropcm20.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-miropcm20.

config CONFIG_RADIO_SF16FMI
	tristate "SF16-FMI/SF16-FMP/SF16-FMD Radio"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	help
	  Choose Y here if you have one of these FM radio cards.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-sf16fmi.

config CONFIG_RADIO_SF16FMR2
	tristate "SF16-FMR2/SF16-FMD2 Radio"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_TEA575X
	help
	  Choose Y here if you have one of these FM radio cards.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-sf16fmr2.

config CONFIG_RADIO_TERRATEC
	tristate "TerraTec ActiveRadio ISA Standalone"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have this FM radio card.

	  Note: this driver hasn't been tested since a long time due to lack
	  of hardware. If you have this hardware, then please contact the
	  linux-media mailinglist.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-terratec.

config CONFIG_RADIO_TRUST
	tristate "Trust FM radio card"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  This is a driver for the Trust FM radio cards. Say Y if you have
	  such a card and want to use it under Linux.

	  Note: this driver hasn't been tested since a long time due to lack
	  of hardware. If you have this hardware, then please contact the
	  linux-media mailinglist.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-trust.

config CONFIG_RADIO_TRUST_PORT
	hex "Trust i/o port (usually 0x350 or 0x358)"
	depends on CONFIG_RADIO_TRUST=y
	default "350"
	help
	  Enter the I/O port of your Trust FM radio card. If unsure, try the
	  values "0x350" or "0x358".

config CONFIG_RADIO_TYPHOON
	tristate "Typhoon Radio (a.k.a. EcoRadio)"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have one of these FM radio cards, and then fill
	  in the port address and the frequency used for muting below.

	  Note: this driver hasn't been tested since a long time due to lack
	  of hardware. If you have this hardware, then please contact the
	  linux-media mailinglist.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-typhoon.

config CONFIG_RADIO_TYPHOON_PORT
	hex "Typhoon I/O port (0x316 or 0x336)"
	depends on CONFIG_RADIO_TYPHOON=y
	default "316"
	help
	  Enter the I/O port of your Typhoon or EcoRadio radio card.

config CONFIG_RADIO_TYPHOON_MUTEFREQ
	int "Typhoon frequency set when muting the device (kHz)"
	depends on CONFIG_RADIO_TYPHOON=y
	default "87500"
	help
	  Enter the frequency used for muting the radio. The device is never
	  completely silent. If the volume is just turned down, you can still
	  hear silent voices and music. For that reason, the frequency of the
	  radio device is set to the frequency you can enter here whenever
	  the device is muted. There should be no local radio station at that
	  frequency.

config CONFIG_RADIO_ZOLTRIX
	tristate "Zoltrix Radio"
	depends on CONFIG_ISA || CONFIG_COMPILE_TEST
	depends on CONFIG_VIDEO_V4L2
	select CONFIG_RADIO_ISA
	help
	  Choose Y here if you have one of these FM radio cards, and then fill
	  in the port address below.

	  Note: this driver hasn't been tested since a long time due to lack
	  of hardware. If you have this hardware, then please contact the
	  linux-media mailinglist.

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called radio-zoltrix.

config CONFIG_RADIO_ZOLTRIX_PORT
	hex "ZOLTRIX I/O port (0x20c or 0x30c)"
	depends on CONFIG_RADIO_ZOLTRIX=y
	default "20c"
	help
	  Enter the I/O port of your Zoltrix radio card.

endif # CONFIG_V4L_RADIO_ISA_DRIVERS

endif # CONFIG_RADIO_ADAPTERS