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
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
# SPDX-License-Identifier: GPL-2.0-only
#
# CONFIG_X86 Platform Specific Drivers
#

menuconfig CONFIG_X86_PLATFORM_DEVICES
	bool "X86 Platform Specific Device Drivers"
	default y
	depends on CONFIG_X86
	---help---
	  Say Y here to get to see options for device drivers for various
	  x86 platforms, including vendor-specific laptop extension drivers.
	  This option alone does not add any kernel code.

	  If you say N, all options in this submenu will be skipped and disabled.

if CONFIG_X86_PLATFORM_DEVICES

config CONFIG_ACER_WMI
	tristate "Acer WMI Laptop Extras"
	depends on CONFIG_ACPI
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_SERIO_I8042
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_ACPI_WMI
	select CONFIG_INPUT_SPARSEKMAP
	# Acer WMI depends on CONFIG_ACPI_VIDEO when CONFIG_ACPI is enabled
        select CONFIG_ACPI_VIDEO if CONFIG_ACPI
	---help---
	  This is a driver for newer Acer (and Wistron) laptops. It adds
	  wireless radio and bluetooth control, and on some laptops,
	  exposes the mail LED and LCD backlight.

	  If you have an CONFIG_ACPI-WMI compatible Acer/ Wistron laptop, say Y or CONFIG_M
	  here.

config CONFIG_ACER_WIRELESS
        tristate "Acer Wireless Radio Control Driver"
        depends on CONFIG_ACPI
        depends on CONFIG_INPUT
        ---help---
          The Acer Wireless Radio Control handles the airplane mode hotkey
          present on new Acer laptops.

          Say Y or CONFIG_M here if you have an Acer notebook with an airplane mode
          hotkey.

          If you choose to compile this driver as a module the module will be
          called acer-wireless.

config CONFIG_ACERHDF
	tristate "Acer Aspire One temperature and fan driver"
	depends on CONFIG_ACPI && CONFIG_THERMAL
	select CONFIG_THERMAL_GOV_BANG_BANG
	---help---
	  This is a driver for Acer Aspire One netbooks. It allows to access
	  the temperature sensor and to control the fan.

	  After loading this driver the BIOS is still in control of the fan.
	  To let the kernel handle the fan, do:
	  echo -n enabled > /sys/class/thermal/thermal_zoneN/mode
	  where N=0,1,2... depending on the number of thermal nodes and the
	  detection order of your particular system.  The "type" parameter
	  in the same node directory will tell you if it is "acerhdf".

	  For more information about this driver see
	  <http://piie.net/files/acerhdf_README.txt>

	  If you have an Acer Aspire One netbook, say Y or CONFIG_M
	  here.

config CONFIG_ALIENWARE_WMI
	tristate "Alienware Special feature control"
	depends on CONFIG_ACPI
	depends on CONFIG_LEDS_CLASS
	depends on CONFIG_NEW_LEDS
	depends on CONFIG_ACPI_WMI
	---help---
	 This is a driver for controlling Alienware BIOS driven
	 features.  It exposes an interface for controlling the AlienFX
	 zones on Alienware machines that don't contain a dedicated AlienFX
	 CONFIG_USB MCU such as the X51 and X51-R2.

config CONFIG_ASUS_LAPTOP
	tristate "Asus Laptop Extras"
	depends on CONFIG_ACPI
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	select CONFIG_INPUT_SPARSEKMAP
	select CONFIG_INPUT_POLLDEV
	---help---
	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
	  laptops. It makes all the extra buttons generate standard
	  CONFIG_ACPI events and input events, and on the Lucid the built-in
	  accelerometer appears as an input device.  It also adds
	  support for video output switching, LCD backlight control,
	  Bluetooth and Wlan control, and most importantly, allows you
	  to blink those fancy LEDs.

	  For more information see <http://acpi4asus.sf.net>.

	  If you have an CONFIG_ACPI-compatible ASUS laptop, say Y or CONFIG_M here.

config CONFIG_DCDBAS
	tristate "Dell Systems Management Base Driver"
	depends on CONFIG_X86
	help
	  The Dell Systems Management Base Driver provides a sysfs interface
	  for systems management software to perform System Management
	  Interrupts (SMIs) and Host Control Actions (system power cycle or
	  power off after OS shutdown) on certain Dell systems.

	  See <file:Documentation/driver-api/dcdbas.rst> for more details on the driver
	  and the Dell systems on which Dell systems management software makes
	  use of this driver.

	  Say Y or CONFIG_M here to enable the driver for use by Dell systems
	  management software such as Dell OpenManage.

#
# The CONFIG_DELL_SMBIOS driver depends on CONFIG_ACPI_WMI and/or CONFIG_DCDBAS if those
# backends are selected. The "depends" line prevents a configuration
# where CONFIG_DELL_SMBIOS=y while either of those dependencies =m.
#
config CONFIG_DELL_SMBIOS
	tristate "Dell SMBIOS driver"
	depends on CONFIG_DCDBAS || CONFIG_DCDBAS=n
	depends on CONFIG_ACPI_WMI || CONFIG_ACPI_WMI=n
	---help---
	This provides support for the Dell SMBIOS calling interface.
	If you have a Dell computer you should enable this option.

	Be sure to select at least one backend for it to work properly.

config CONFIG_DELL_SMBIOS_WMI
	bool "Dell SMBIOS driver WMI backend"
	default y
	depends on CONFIG_ACPI_WMI
	select CONFIG_DELL_WMI_DESCRIPTOR
	depends on CONFIG_DELL_SMBIOS
	---help---
	This provides an implementation for the Dell SMBIOS calling interface
	communicated over CONFIG_ACPI-WMI.

	If you have a Dell computer from >2007 you should say Y here.
	If you aren't sure and this module doesn't work for your computer
	it just won't load.

config CONFIG_DELL_SMBIOS_SMM
	bool "Dell SMBIOS driver SMM backend"
	default y
	depends on CONFIG_DCDBAS
	depends on CONFIG_DELL_SMBIOS
	---help---
	This provides an implementation for the Dell SMBIOS calling interface
	communicated over SMI/SMM.

	If you have a Dell computer from <=2017 you should say Y here.
	If you aren't sure and this module doesn't work for your computer
	it just won't load.

config CONFIG_DELL_LAPTOP
	tristate "Dell Laptop Extras"
	depends on CONFIG_DMI
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_SERIO_I8042
	depends on CONFIG_DELL_SMBIOS
	select CONFIG_POWER_SUPPLY
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	select CONFIG_LEDS_TRIGGERS
	select CONFIG_LEDS_TRIGGER_AUDIO
	---help---
	This driver adds support for rfkill and backlight control to Dell
	laptops (except for some models covered by the Compal driver).

config CONFIG_DELL_WMI
	tristate "Dell WMI notifications"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_DMI
	depends on CONFIG_INPUT
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_DELL_SMBIOS
	select CONFIG_DELL_WMI_DESCRIPTOR
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  Say Y here if you want to support WMI-based hotkeys on Dell laptops.

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

config CONFIG_DELL_WMI_DESCRIPTOR
	tristate
	depends on CONFIG_ACPI_WMI

config CONFIG_DELL_WMI_AIO
	tristate "WMI Hotkeys for Dell All-In-One series"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  Say Y here if you want to support WMI-based hotkeys on Dell
	  All-In-One machines.

	  To compile this driver as a module, choose CONFIG_M here: the module will
	  be called dell-wmi-aio.

config CONFIG_DELL_WMI_LED
	tristate "External LED on Dell Business Netbooks"
	depends on CONFIG_LEDS_CLASS
	depends on CONFIG_ACPI_WMI
	help
	  This adds support for the Latitude 2100 and similar
	  notebooks that have an external LED.

config CONFIG_DELL_SMO8800
	tristate "Dell Latitude freefall driver (ACPI SMO88XX)"
	depends on CONFIG_ACPI
	---help---
	  Say Y here if you want to support SMO88XX freefall devices
	  on Dell Latitude laptops.

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

config CONFIG_DELL_RBTN
	tristate "Dell Airplane Mode Switch driver"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL
	---help---
	  Say Y here if you want to support Dell Airplane Mode Switch CONFIG_ACPI
	  device on Dell laptops. Sometimes it has names: DELLABCE or DELRBTN.
	  This driver register rfkill device or input hotkey device depending
	  on hardware type (hw switch slider or keyboard toggle button). For
	  rfkill devices it receive HW switch events and set correct hard
	  rfkill state.

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

config CONFIG_DELL_RBU
	tristate "BIOS update support for DELL systems via sysfs"
	depends on CONFIG_X86
	select CONFIG_FW_LOADER
	select CONFIG_FW_LOADER_USER_HELPER
	help
	 Say m if you want to have the option of updating the BIOS for your
	 DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
	 supporting application to communicate with the BIOS regarding the new
	 image for the image update to take effect.
	 See <file:Documentation/driver-api/dell_rbu.rst> for more details on the driver.


config CONFIG_FUJITSU_LAPTOP
	tristate "Fujitsu Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	select CONFIG_INPUT_SPARSEKMAP
	select CONFIG_LEDS_CLASS
	---help---
	  This is a driver for laptops built by Fujitsu:

	    * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
	    * Possibly other Fujitsu laptop models
	    * Tested with S6410 and S7020

	  It adds support for LCD brightness control and some hotkeys.

	  If you have a Fujitsu laptop, say Y or CONFIG_M here.

config CONFIG_FUJITSU_TABLET
       tristate "Fujitsu Tablet Extras"
       depends on CONFIG_ACPI
       depends on CONFIG_INPUT
       ---help---
         This is a driver for tablets built by Fujitsu:

           * Lifebook P1510/P1610/P1620/Txxxx
           * Stylistic ST5xxx
           * Possibly other Fujitsu tablet models

         It adds support for the panel buttons, docking station detection,
         tablet/notebook mode detection for convertible and
         orientation detection for docked slates.

         If you have a Fujitsu convertible or slate, say Y or CONFIG_M here.

config CONFIG_AMILO_RFKILL
	tristate "Fujitsu-Siemens Amilo rfkill support"
	depends on CONFIG_RFKILL
	depends on CONFIG_SERIO_I8042
	---help---
	  This is a driver for enabling wifi on some Fujitsu-Siemens Amilo
	  laptops.

config CONFIG_GPD_POCKET_FAN
	tristate "GPD Pocket Fan Controller support"
	depends on CONFIG_ACPI
	depends on CONFIG_THERMAL
	---help---
	  Driver for the GPD Pocket vendor specific FAN02501 CONFIG_ACPI device
	  which controls the fan speed on the GPD Pocket.

	  Without this driver the fan on the Pocket will stay off independent
	  of the CPU temperature. Say Y or CONFIG_M if the kernel may be used on a
	  GPD pocket.

config CONFIG_TC1100_WMI
	tristate "HP Compaq TC1100 Tablet WMI Extras"
	depends on !CONFIG_X86_64
	depends on CONFIG_ACPI
	depends on CONFIG_ACPI_WMI
	---help---
	  This is a driver for the WMI extensions (wireless and bluetooth power
	  control) of the HP Compaq TC1100 tablet.

config CONFIG_HP_ACCEL
	tristate "HP laptop accelerometer"
	depends on CONFIG_INPUT && CONFIG_ACPI
	depends on CONFIG_SERIO_I8042
	select CONFIG_SENSORS_LIS3LV02D
	select CONFIG_NEW_LEDS
	select CONFIG_LEDS_CLASS
	help
	  This driver provides support for the "Mobile Data Protection System 3D"
	  or "3D DriveGuard" feature of HP laptops. On such systems the driver
	  should load automatically (via CONFIG_ACPI alias).

	  Support for a led indicating disk protection will be provided as
	  hp::hddprotect. For more information on the feature, refer to
	  Documentation/misc-devices/lis3lv02d.rst.

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

config CONFIG_HP_WIRELESS
	tristate "HP wireless button"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	help
	 This driver provides supports for new HP wireless button for Windows 8.
	 On such systems the driver should load automatically (via CONFIG_ACPI alias).

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

config CONFIG_HP_WMI
	tristate "HP WMI extras"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	select CONFIG_INPUT_SPARSEKMAP
	help
	 Say Y here if you want to support WMI-based hotkeys on HP laptops and
	 to read data from WMI such as docking or ambient light sensor state.

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

config CONFIG_LG_LAPTOP
	tristate "LG Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	select CONFIG_LEDS_CLASS
	help
	 This driver adds support for hotkeys as well as control of keyboard
	 backlight, battery maximum charge level and various other CONFIG_ACPI
	 features.

	 If you have an LG Gram laptop, say Y or CONFIG_M here.

config CONFIG_MSI_LAPTOP
	tristate "MSI Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_RFKILL
	depends on CONFIG_INPUT && CONFIG_SERIO_I8042
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  This is a driver for laptops built by MSI (MICRO-STAR
	  INTERNATIONAL):

	  MSI MegaBook S270 (MS-1013)
	  Cytron/TCM/Medion/Tchibo MD96100/SAM2000

	  It adds support for Bluetooth, CONFIG_WLAN and LCD brightness control.

	  More information about this driver is available at
	  <http://0pointer.de/lennart/tchibo.html>.

	  If you have an MSI S270 laptop, say Y or CONFIG_M here.

config CONFIG_PANASONIC_LAPTOP
	tristate "Panasonic Laptop Extras"
	depends on CONFIG_INPUT && CONFIG_ACPI
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  This driver adds support for access to backlight control and hotkeys
	  on Panasonic Let's Note laptops.

	  If you have a Panasonic Let's note laptop (such as the R1(N variant),
	  R2, R3, R5, T2, W2 and Y2 series), say Y.

config CONFIG_COMPAL_LAPTOP
	tristate "Compal (and others) Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_RFKILL
	depends on CONFIG_HWMON
	depends on CONFIG_POWER_SUPPLY
	---help---
	  This is a driver for laptops built by Compal, and some models by
	  other brands (e.g. Dell, Toshiba).

	  It adds support for rfkill, Bluetooth, CONFIG_WLAN, LCD brightness, hwmon
	  and battery charging level control.

config CONFIG_SONY_LAPTOP
	tristate "Sony Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL
	  ---help---
	  This mini-driver drives the SNC and SPIC devices present in the CONFIG_ACPI
	  BIOS of the Sony Vaio laptops.

	  It gives access to some extra laptop functionalities like Bluetooth,
	  screen brightness control, Fn keys and allows powering on/off some
	  devices.

	  Read <file:Documentation/admin-guide/laptops/sony-laptop.rst> for more information.

config CONFIG_SONYPI_COMPAT
	bool "Sonypi compatibility"
	depends on CONFIG_SONY_LAPTOP
	  ---help---
	  Build the sonypi driver compatibility code into the sony-laptop driver.

config CONFIG_IDEAPAD_LAPTOP
	tristate "Lenovo IdeaPad Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_RFKILL && CONFIG_INPUT
	depends on CONFIG_SERIO_I8042
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_ACPI_WMI || CONFIG_ACPI_WMI = n
	select CONFIG_INPUT_SPARSEKMAP
	help
	  This is a driver for Lenovo IdeaPad netbooks contains drivers for
	  rfkill switch, hotkey, fan control and backlight control.

config CONFIG_SURFACE3_WMI
	tristate "Surface 3 WMI Driver"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_DMI
	depends on CONFIG_INPUT
	depends on CONFIG_SPI
	---help---
	  Say Y here if you have a Surface 3.

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

config CONFIG_THINKPAD_ACPI
	tristate "ThinkPad ACPI Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_ACPI_BATTERY
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	select CONFIG_HWMON
	select CONFIG_NVRAM
	select CONFIG_NEW_LEDS
	select CONFIG_LEDS_CLASS
	select CONFIG_LEDS_TRIGGERS
	select CONFIG_LEDS_TRIGGER_AUDIO
	---help---
	  This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
	  support for Fn-Fx key combinations, Bluetooth control, video
	  output switching, ThinkLight control, UltraBay eject and more.
	  For more information about this driver see
	  <file:Documentation/admin-guide/laptops/thinkpad-acpi.rst> and
	  <http://ibm-acpi.sf.net/> .

	  This driver was formerly known as ibm-acpi.

	  Extra functionality will be available if the rfkill (CONFIG_RFKILL)
	  and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
	  Note that if you want ThinkPad-CONFIG_ACPI to be built-in instead of
	  modular, ALSA and rfkill will also have to be built-in.

	  If you have an IBM or Lenovo ThinkPad laptop, say Y or CONFIG_M here.

config CONFIG_THINKPAD_ACPI_ALSA_SUPPORT
	bool "Console audio control ALSA interface"
	depends on CONFIG_THINKPAD_ACPI
	depends on CONFIG_SND
	depends on CONFIG_SND = y || CONFIG_THINKPAD_ACPI = CONFIG_SND
	default y
	---help---
	  Enables monitoring of the built-in console audio output control
	  (headphone and speakers), which is operated by the mute and (in
	  some ThinkPad models) volume hotkeys.

	  If this option is enabled, ThinkPad-CONFIG_ACPI will export an ALSA card
	  with a single read-only mixer control, which should be used for
	  on-screen-display feedback purposes by the Desktop Environment.

	  Optionally, the driver will also allow software control (the
	  ALSA mixer will be made read-write).  Please refer to the driver
	  documentation for details.

	  All IBM models have both volume and mute control.  Newer Lenovo
	  models only have mute control (the volume hotkeys are just normal
	  keys and volume control is done through the main HDA mixer).

config CONFIG_THINKPAD_ACPI_DEBUGFACILITIES
	bool "Maintainer debug facilities"
	depends on CONFIG_THINKPAD_ACPI
	---help---
	  Enables extra stuff in the thinkpad-acpi which is completely useless
	  for normal use.  Read the driver source to find out what it does.

	  Say N here, unless you were told by a kernel maintainer to do
	  otherwise.

config CONFIG_THINKPAD_ACPI_DEBUG
	bool "Verbose debug mode"
	depends on CONFIG_THINKPAD_ACPI
	---help---
	  Enables extra debugging information, at the expense of a slightly
	  increase in driver size.

	  If you are not sure, say N here.

config CONFIG_THINKPAD_ACPI_UNSAFE_LEDS
	bool "Allow control of important LEDs (unsafe)"
	depends on CONFIG_THINKPAD_ACPI
	---help---
	  Overriding LED state on ThinkPads can mask important
	  firmware alerts (like critical battery condition), or misled
	  the user into damaging the hardware (undocking or ejecting
	  the bay while buses are still active), etc.

	  LED control on the ThinkPad is write-only (with very few
	  exceptions on very ancient models), which makes it
	  impossible to know beforehand if important information will
	  be lost when one changes LED state.

	  Users that know what they are doing can enable this option
	  and the driver will allow control of every LED, including
	  the ones on the dock stations.

	  Never enable this option on a distribution kernel.

	  Say N here, unless you are building a kernel for your own
	  use, and need to control the important firmware LEDs.

config CONFIG_THINKPAD_ACPI_VIDEO
	bool "Video output control support"
	depends on CONFIG_THINKPAD_ACPI
	default y
	---help---
	  Allows the thinkpad_acpi driver to provide an interface to control
	  the various video output ports.

	  This feature often won't work well, depending on ThinkPad model,
	  display state, video output devices in use, whether there is a X
	  server running, phase of the moon, and the current mood of
	  Schroedinger's cat.  If you can use X.org's RandR to control
	  your ThinkPad's video output ports instead of this feature,
	  don't think twice: do it and say N here to save memory and avoid
	  bad interactions with X.org.

	  NOTE: access to this feature is limited to processes with the
	  CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
	  where it interacts badly with X.org.

	  If you are not sure, say Y here but do try to check if you could
	  be using X.org RandR instead.

config CONFIG_THINKPAD_ACPI_HOTKEY_POLL
	bool "Support NVRAM polling for hot keys"
	depends on CONFIG_THINKPAD_ACPI
	default y
	---help---
	  Some thinkpad models benefit from CONFIG_NVRAM polling to detect a few of
	  the hot key press events.  If you know your ThinkPad model does not
	  need to do CONFIG_NVRAM polling to support any of the hot keys you use,
	  unselecting this option will save about 1kB of memory.

	  ThinkPads T40 and newer, R52 and newer, and X31 and newer are
	  unlikely to need CONFIG_NVRAM polling in their latest BIOS versions.

	  CONFIG_NVRAM polling can detect at most the following keys: ThinkPad/Access
	  IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
	  Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).

	  If you are not sure, say Y here.  The driver enables polling only if
	  it is strictly necessary to do so.

config CONFIG_SENSORS_HDAPS
	tristate "Thinkpad Hard Drive Active Protection System (hdaps)"
	depends on CONFIG_INPUT
	select CONFIG_INPUT_POLLDEV
	help
	  This driver provides support for the IBM Hard Drive Active Protection
	  System (hdaps), which provides an accelerometer and other misc. data.
	  ThinkPads starting with the R50, T41, and X40 are supported.  The
	  accelerometer data is readable via sysfs.

	  This driver also provides an absolute input class device, allowing
	  the laptop to act as a pinball machine-esque joystick.

	  If your ThinkPad is not recognized by the driver, please update to latest
	  BIOS. This is especially the case for some R52 ThinkPads.

	  Say Y here if you have an applicable laptop and want to experience
	  the awesome power of hdaps.

config CONFIG_INTEL_MENLOW
	tristate "Thermal Management driver for Intel menlow platform"
	depends on CONFIG_ACPI_THERMAL
	select CONFIG_THERMAL
	---help---
	  CONFIG_ACPI thermal management enhancement driver on
	  Intel Menlow platform.

	  If unsure, say N.

config CONFIG_EEEPC_LAPTOP
	tristate "Eee PC Hotkey Driver"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_HOTPLUG_PCI
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	select CONFIG_HWMON
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  This driver supports the Fn-Fx keys on Eee PC laptops.

	  It  also gives access to some extra laptop functionalities like
	  Bluetooth, backlight and allows powering on/off some other
	  devices.

	  If you have an Eee PC laptop, say Y or CONFIG_M here. If this driver
	  doesn't work on your Eee PC, try eeepc-wmi instead.

config CONFIG_ASUS_WMI
	tristate "ASUS WMI Driver"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_ACPI_BATTERY
	depends on CONFIG_INPUT
	depends on CONFIG_HWMON
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_HOTPLUG_PCI
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	select CONFIG_INPUT_SPARSEKMAP
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	---help---
	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
	  Asus Notebooks).

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

config CONFIG_ASUS_NB_WMI
	tristate "Asus Notebook WMI Driver"
	depends on CONFIG_ASUS_WMI
	depends on CONFIG_SERIO_I8042 || CONFIG_SERIO_I8042 = n
	---help---
	  This is a driver for newer Asus notebooks. It adds extra features
	  like wireless radio and bluetooth control, leds, hotkeys, backlight...

	  For more information, see
	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>

	  If you have an CONFIG_ACPI-WMI compatible Asus Notebook, say Y or CONFIG_M
	  here.

config CONFIG_EEEPC_WMI
	tristate "Eee PC WMI Driver"
	depends on CONFIG_ASUS_WMI
	---help---
	  This is a driver for newer Eee PC laptops. It adds extra features
	  like wireless radio and bluetooth control, leds, hotkeys, backlight...

	  For more information, see
	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>

	  If you have an CONFIG_ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or CONFIG_M
	  here.

config CONFIG_ASUS_WIRELESS
	tristate "Asus Wireless Radio Control Driver"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	select CONFIG_NEW_LEDS
	select CONFIG_LEDS_CLASS
	---help---
	  The Asus Wireless Radio Control handles the airplane mode hotkey
	  present on some Asus laptops.

	  Say Y or CONFIG_M here if you have an ASUS notebook with an airplane mode
	  hotkey.

	  If you choose to compile this driver as a module the module will be
	  called asus-wireless.

config CONFIG_ACPI_WMI
	tristate "WMI"
	depends on CONFIG_ACPI
	help
	  This driver adds support for the CONFIG_ACPI-WMI (Windows Management
	  Instrumentation) mapper device (PNP0C14) found on some systems.

	  CONFIG_ACPI-WMI is a proprietary extension to CONFIG_ACPI to expose parts of the
	  CONFIG_ACPI firmware to userspace - this is done through various vendor
	  defined methods and data blocks in a PNP0C14 device, which are then
	  made available for userspace to call.

	  The implementation of this in Linux currently only exposes this to
	  other kernel space drivers.

	  This driver is a required dependency to build the firmware specific
	  drivers needed on many machines, including Acer and HP laptops.

	  It is safe to enable this driver even if your DSDT doesn't define
	  any CONFIG_ACPI-WMI devices.

config CONFIG_WMI_BMOF
	tristate "WMI embedded Binary MOF driver"
	depends on CONFIG_ACPI_WMI
	default CONFIG_ACPI_WMI
	---help---
	  Say Y here if you want to be able to read a firmware-embedded
	  WMI Binary MOF data. Using this requires userspace tools and may be
	  rather tedious.

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

config CONFIG_INTEL_WMI_THUNDERBOLT
	tristate "Intel WMI thunderbolt force power driver"
	depends on CONFIG_ACPI_WMI
	---help---
	  Say Y here if you want to be able to use the WMI interface on select
	  systems to force the power control of Intel Thunderbolt controllers.
	  This is useful for updating the firmware when devices are not plugged
	  into the controller.

	  To compile this driver as a module, choose CONFIG_M here: the module will
	  be called intel-wmi-thunderbolt.

config CONFIG_XIAOMI_WMI
	  tristate "Xiaomi WMI key driver"
	  depends on CONFIG_ACPI_WMI
	  depends on CONFIG_INPUT
	  help
	  Say Y here if you want to support WMI-based keys on Xiaomi notebooks.

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

config CONFIG_MSI_WMI
	tristate "MSI WMI extras"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	select CONFIG_INPUT_SPARSEKMAP
	help
	 Say Y here if you want to support WMI-based hotkeys on MSI laptops.

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

config CONFIG_PEAQ_WMI
	tristate "PEAQ 2-in-1 WMI hotkey driver"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_POLLDEV
	help
	 Say Y here if you want to support WMI-based hotkeys on PEAQ 2-in-1s.

config CONFIG_TOPSTAR_LAPTOP
	tristate "Topstar Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	---help---
	  This driver adds support for hotkeys found on Topstar laptops.

	  If you have a Topstar laptop, say Y or CONFIG_M here.

config CONFIG_ACPI_TOSHIBA
	tristate "Toshiba Laptop Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_ACPI_WMI
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_INPUT
	depends on CONFIG_SERIO_I8042 || CONFIG_SERIO_I8042 = n
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_IIO
	select CONFIG_INPUT_POLLDEV
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  This driver adds support for access to certain system settings
	  on "legacy free" Toshiba laptops.  These laptops can be recognized by
	  their lack of a BIOS setup menu and CONFIG_APM support.

	  On these machines, all system configuration is handled through the
	  CONFIG_ACPI.  This driver is required for access to controls not covered
	  by the general CONFIG_ACPI drivers, such as LCD brightness, video output,
	  etc.

	  This driver differs from the non-CONFIG_ACPI Toshiba laptop driver (located
	  under "Processor type and features") in several aspects.
	  Configuration is accessed by reading and writing text files in the
	  /proc tree instead of by program interface to /dev.  Furthermore, no
	  power management functions are exposed, as those are handled by the
	  general CONFIG_ACPI drivers.

	  More information about this driver is available at
	  <http://memebeam.org/toys/ToshibaAcpiDriver>.

	  If you have a legacy free Toshiba laptop (such as the Libretto L1
	  series), say Y.

config CONFIG_TOSHIBA_BT_RFKILL
	tristate "Toshiba Bluetooth RFKill switch support"
	depends on CONFIG_ACPI
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	---help---
	  This driver adds support for Bluetooth events for the RFKill
	  switch on modern Toshiba laptops with full CONFIG_ACPI support and
	  an RFKill switch.

	  This driver handles RFKill events for the TOS6205 Bluetooth,
	  and re-enables it when the switch is set back to the 'on'
	  position.

	  If you have a modern Toshiba laptop with a Bluetooth and an
	  RFKill switch (such as the Portege R500), say Y.

config CONFIG_TOSHIBA_HAPS
	tristate "Toshiba HDD Active Protection Sensor"
	depends on CONFIG_ACPI
	---help---
	  This driver adds support for the built-in accelerometer
	  found on recent Toshiba laptops equipped with CONFIG_HID TOS620A
	  device.

	  This driver receives CONFIG_ACPI notify events 0x80 when the sensor
	  detects a sudden move or a harsh vibration, as well as an
	  CONFIG_ACPI notify event 0x81 whenever the movement or vibration has
	  been stabilized.

	  Also provides sysfs entries to get/set the desired protection
	  level and resetting the HDD protection interface.

	  If you have a recent Toshiba laptop with a built-in accelerometer
	  device, say Y.

config CONFIG_TOSHIBA_WMI
	tristate "Toshiba WMI Hotkeys Driver (EXPERIMENTAL)"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	---help---
	  This driver adds hotkey monitoring support to some Toshiba models
	  that manage the hotkeys via WMI events.

	  WARNING: This driver is incomplete as it lacks a proper keymap and the
	  *notify function only prints the CONFIG_ACPI event type value. Be warned that
	  you will need to provide some information if you have a Toshiba model
	  with WMI event hotkeys and want to help with the development of this
	  driver.

	  If you have a WMI-based hotkeys Toshiba laptop, say Y or CONFIG_M here.

config CONFIG_ACPI_CMPC
	tristate "CMPC Laptop Extras"
	depends on CONFIG_ACPI && CONFIG_INPUT
	depends on CONFIG_RFKILL || CONFIG_RFKILL=n
	select CONFIG_BACKLIGHT_CLASS_DEVICE
	help
	  Support for Intel Classmate PC CONFIG_ACPI devices, including some
	  keys as input device, backlight device, tablet and accelerometer
	  devices.

config CONFIG_INTEL_CHT_INT33FE
	tristate "Intel Cherry Trail ACPI INT33FE Driver"
	depends on CONFIG_X86 && CONFIG_ACPI && CONFIG_I2C && CONFIG_REGULATOR
	depends on CONFIG_CHARGER_BQ24190=y || (CONFIG_CHARGER_BQ24190=m && m)
	depends on CONFIG_USB_ROLES_INTEL_XHCI=y || (CONFIG_USB_ROLES_INTEL_XHCI=m && m)
	depends on CONFIG_TYPEC_MUX_PI3USB30532=y || (CONFIG_TYPEC_MUX_PI3USB30532=m && m)
	---help---
	  This driver add support for the INT33FE CONFIG_ACPI device found on
	  some Intel Cherry Trail devices.

	  The INT33FE CONFIG_ACPI device has a CRS table with I2cSerialBusV2
	  resources for 3 devices: Maxim MAX17047 Fuel Gauge Controller,
	  FUSB302 CONFIG_USB Type-CONFIG_C Controller and PI3USB30532 CONFIG_USB switch.
	  This driver instantiates i2c-clients for these, so that standard
	  i2c drivers for these chips can bind to the them.

	  If you enable this driver it is advised to also select
	  CONFIG_TYPEC_FUSB302=m and CONFIG_BATTERY_MAX17042=m.

config CONFIG_INTEL_INT0002_VGPIO
	tristate "Intel ACPI INT0002 Virtual GPIO driver"
	depends on CONFIG_GPIOLIB && CONFIG_ACPI
	select CONFIG_GPIOLIB_IRQCHIP
	---help---
	  Some peripherals on Bay Trail and Cherry Trail platforms signal a
	  Power Management Event (PME) to the Power Management Controller (PMC)
	  to wakeup the system. When this happens software needs to explicitly
	  clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
	  IRQ storm on IRQ 9.

	  This is modelled in CONFIG_ACPI through the INT0002 CONFIG_ACPI device, which is
	  called a "Virtual GPIO controller" in CONFIG_ACPI because it defines the
	  event handler to call when the PME triggers through _AEI and _L02
	  methods as would be done for a real GPIO interrupt in CONFIG_ACPI.

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

config CONFIG_INTEL_HID_EVENT
	tristate "INTEL HID Event"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	help
	  This driver provides support for the Intel CONFIG_HID Event hotkey interface.
	  Some laptops require this driver for hotkey support.

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

config CONFIG_INTEL_VBTN
	tristate "INTEL VIRTUAL BUTTON"
	depends on CONFIG_ACPI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	help
	  This driver provides support for the Intel Virtual Button interface.
	  Some laptops require this driver for power button support.

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

config CONFIG_INTEL_SCU_IPC
	bool "Intel SCU IPC Support"
	depends on CONFIG_X86_INTEL_MID
	default y
	---help---
	  IPC is used to bridge the communications between kernel and SCU on
	  some embedded Intel x86 platforms. This is not needed for PC-type
	  machines.

config CONFIG_INTEL_SCU_IPC_UTIL
	tristate "Intel SCU IPC utility driver"
	depends on CONFIG_INTEL_SCU_IPC
	default y
	---help---
	  The IPC Util driver provides an interface with the SCU enabling
	  low level access for debug work and updating the firmware. Say
	  N unless you will be doing this on an Intel MID platform.

config CONFIG_INTEL_MID_POWER_BUTTON
	tristate "power button driver for Intel MID platforms"
	depends on CONFIG_INTEL_SCU_IPC && CONFIG_INPUT
	help
	  This driver handles the power button on the Intel MID platforms.

	  If unsure, say N.

config CONFIG_INTEL_MFLD_THERMAL
       tristate "Thermal driver for Intel Medfield platform"
       depends on CONFIG_MFD_INTEL_MSIC && CONFIG_THERMAL
       help
         Say Y here to enable thermal driver support for the  Intel Medfield
         platform.

config CONFIG_INTEL_IPS
	tristate "Intel Intelligent Power Sharing"
	depends on CONFIG_ACPI && CONFIG_PCI
	---help---
	  Intel Calpella platforms support dynamic power sharing between the
	  CPU and GPU, maximizing performance in a given TDP.  This driver,
	  along with the CPU frequency and i915 drivers, provides that
	  functionality.  If in doubt, say Y here; it will only load on
	  supported platforms.

config CONFIG_INTEL_IMR
	bool "Intel Isolated Memory Region support"
	depends on CONFIG_X86_INTEL_QUARK && CONFIG_IOSF_MBI
	---help---
	  This option provides a means to manipulate Isolated Memory Regions.
	  IMRs are a set of registers that define read and write access masks
	  to prohibit certain system agents from accessing memory with 1 KiB
	  granularity.

	  IMRs make it possible to control read/write access to an address
	  by hardware agents inside the SoC. Read and write masks can be
	  defined for:
		- eSRAM flush
		- Dirty CPU snoop (write only)
		- RMU access
		- CONFIG_PCI Virtual Channel 0/Virtual Channel 1
		- SMM mode
		- Non SMM mode

	  Quark contains a set of eight IMR registers and makes use of those
	  registers during its bootup process.

	  If you are running on a Galileo/Quark say Y here.

config CONFIG_INTEL_PMC_CORE
	tristate "Intel PMC Core driver"
	depends on CONFIG_PCI
	---help---
	  The Intel Platform Controller Hub for Intel Core SoCs provides access
	  to Power Management Controller registers via a CONFIG_PCI interface. This
	  driver can utilize debugging capabilities and supported features as
	  exposed by the Power Management Controller.

	  Supported features:
		- SLP_S0_RESIDENCY counter
		- PCH IP Power Gating status
		- LTR Ignore
		- MPHY/PLL gating status (Sunrisepoint PCH only)

config CONFIG_IBM_RTL
	tristate "Device driver to enable PRTL support"
	depends on CONFIG_PCI
	---help---
	 Enable support for IBM Premium Real Time Mode (PRTM).
	 This module will allow you the enter and exit PRTM in the BIOS via
	 sysfs on platforms that support this feature.  System in PRTM will
	 not receive CPU-generated SMIs for recoverable errors.  Use of this
	 feature without proper support may void your hardware warranty.

	 If the proper BIOS support is found the driver will load and create
	 /sys/devices/system/ibm_rtl/.  The "state" variable will indicate
	 whether or not the BIOS is in PRTM.
	 state = 0 (BIOS SMIs on)
	 state = 1 (BIOS SMIs off)

config CONFIG_XO1_RFKILL
	tristate "OLPC XO-1 software RF kill switch"
	depends on CONFIG_OLPC || CONFIG_COMPILE_TEST
	depends on CONFIG_RFKILL
	---help---
	  Support for enabling/disabling the CONFIG_WLAN interface on the CONFIG_OLPC XO-1
	  laptop.

config CONFIG_XO15_EBOOK
	tristate "OLPC XO-1.5 ebook switch"
	depends on CONFIG_OLPC || CONFIG_COMPILE_TEST
	depends on CONFIG_ACPI && CONFIG_INPUT
	---help---
	  Support for the ebook switch on the CONFIG_OLPC XO-1.5 laptop.

	  This switch is triggered as the screen is rotated and folded down to
	  convert the device into ebook form.

config CONFIG_SAMSUNG_LAPTOP
	tristate "Samsung Laptop driver"
	depends on CONFIG_RFKILL || CONFIG_RFKILL = n
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	select CONFIG_LEDS_CLASS
	select CONFIG_NEW_LEDS
	---help---
	  This module implements a driver for a wide range of different
	  Samsung laptops.  It offers control over the different
	  function keys, wireless LED, LCD backlight level.

	  It may also provide some sysfs files described in
	  <file:Documentation/ABI/testing/sysfs-driver-samsung-laptop>

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

config CONFIG_MXM_WMI
       tristate "WMI support for MXM Laptop Graphics"
       depends on CONFIG_ACPI_WMI
       ---help---
          MXM is a standard for laptop graphics cards, the WMI interface
	  is required for switchable nvidia graphics machines

config CONFIG_INTEL_OAKTRAIL
	tristate "Intel Oaktrail Platform Extras"
	depends on CONFIG_ACPI
	depends on CONFIG_ACPI_VIDEO || CONFIG_ACPI_VIDEO = n
	depends on CONFIG_RFKILL && CONFIG_BACKLIGHT_CLASS_DEVICE && CONFIG_ACPI
	---help---
	  Intel Oaktrail platform need this driver to provide interfaces to
	  enable/disable the Camera, WiFi, CONFIG_BT etc. devices. If in doubt, say Y
	  here; it will only load on supported platforms.

config CONFIG_SAMSUNG_Q10
	tristate "Samsung Q10 Extras"
	depends on CONFIG_ACPI
	select CONFIG_BACKLIGHT_CLASS_DEVICE
	---help---
	  This driver provides support for backlight control on Samsung Q10
	  and related laptops, including Dell Latitude X200.

config CONFIG_APPLE_GMUX
	tristate "Apple Gmux Driver"
	depends on CONFIG_ACPI && CONFIG_PCI
	depends on CONFIG_PNP
	depends on CONFIG_BACKLIGHT_CLASS_DEVICE
	depends on CONFIG_BACKLIGHT_APPLE=n || CONFIG_BACKLIGHT_APPLE
	depends on CONFIG_ACPI_VIDEO=n || CONFIG_ACPI_VIDEO
	---help---
	  This driver provides support for the gmux device found on many
	  Apple laptops, which controls the display mux for the hybrid
	  graphics as well as the backlight. Currently only backlight
	  control is supported by the driver.

config CONFIG_INTEL_RST
        tristate "Intel Rapid Start Technology Driver"
	depends on CONFIG_ACPI
	---help---
	  This driver provides support for modifying paramaters on systems
	  equipped with Intel's Rapid Start Technology. When put in an CONFIG_ACPI
	  sleep state, these devices will wake after either a configured
	  timeout or when the system battery reaches a critical state,
	  automatically copying memory contents to disk. On resume, the
	  firmware will copy the memory contents back to RAM and resume the OS
	  as usual.

config CONFIG_INTEL_SMARTCONNECT
        tristate "Intel Smart Connect disabling driver"
	depends on CONFIG_ACPI
	---help---
	  Intel Smart Connect is a technology intended to permit devices to
	  update state by resuming for a short period of time at regular
	  intervals. If a user enables this functionality under Windows and
	  then reboots into Linux, the system may remain configured to resume
	  on suspend. In the absence of any userspace to support it, the system
	  will then remain awake until something triggers another suspend.

	  This driver checks to determine whether the device has Intel Smart
	  Connect enabled, and if so disables it.

config CONFIG_INTEL_PMC_IPC
	tristate "Intel PMC IPC Driver"
	depends on CONFIG_ACPI && CONFIG_PCI
	---help---
	This driver provides support for PMC control on some Intel platforms.
	The PMC is an CONFIG_ARC processor which defines IPC commands for communication
	with other entities in the CPU.

config CONFIG_INTEL_BXTWC_PMIC_TMU
	tristate "Intel BXT Whiskey Cove TMU Driver"
	depends on CONFIG_REGMAP
	depends on CONFIG_INTEL_SOC_PMIC_BXTWC && CONFIG_INTEL_PMC_IPC
	---help---
	  Select this driver to use Intel BXT Whiskey Cove PMIC TMU feature.
	  This driver enables the alarm wakeup functionality in the TMU unit
	  of Whiskey Cove PMIC.

config CONFIG_SURFACE_PRO3_BUTTON
	tristate "Power/home/volume buttons driver for Microsoft Surface Pro 3/4 tablet"
	depends on CONFIG_ACPI && CONFIG_INPUT
	---help---
	  This driver handles the power/home/volume buttons on the Microsoft Surface Pro 3/4 tablet.

config CONFIG_SURFACE_3_BUTTON
	tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
	depends on CONFIG_ACPI && CONFIG_KEYBOARD_GPIO && CONFIG_I2C
	---help---
	  This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.

config CONFIG_INTEL_PUNIT_IPC
	tristate "Intel P-Unit IPC Driver"
	---help---
	  This driver provides support for Intel P-Unit Mailbox IPC mechanism,
	  which is used to bridge the communications between kernel and P-Unit.

config CONFIG_INTEL_TELEMETRY
	tristate "Intel SoC Telemetry Driver"
	depends on CONFIG_INTEL_PMC_IPC && CONFIG_INTEL_PUNIT_IPC && CONFIG_X86_64
	---help---
	  This driver provides interfaces to configure and use
	  telemetry for INTEL SoC from APL onwards. It is also
	  used to get various SoC events and parameters
	  directly via debugfs files. Various tools may use
	  this interface for SoC state monitoring.

config CONFIG_MLX_PLATFORM
	tristate "Mellanox Technologies platform support"
	depends on CONFIG_I2C && CONFIG_REGMAP
	---help---
	  This option enables system support for the Mellanox Technologies
	  platform. The Mellanox systems provide data center networking
	  solutions based on Virtual Protocol Interconnect (VPI) technology
	  enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE
	  connection.

	  If you have a Mellanox system, say Y or CONFIG_M here.

config CONFIG_INTEL_TURBO_MAX_3
	bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
	depends on CONFIG_X86_64 && CONFIG_SCHED_MC_PRIO
	---help---
	  This driver reads maximum performance ratio of each CPU and set up
	  the scheduler priority metrics. In this way scheduler can prefer
	  CPU with higher performance to schedule tasks.
	  This driver is only required when the system is not using Hardware
	  P-States (HWP). In HWP mode, priority can be read from CONFIG_ACPI tables.

config CONFIG_TOUCHSCREEN_DMI
	bool "DMI based touchscreen configuration info"
	depends on CONFIG_ACPI && CONFIG_DMI && CONFIG_I2C=y && CONFIG_TOUCHSCREEN_SILEAD
	---help---
	  Certain CONFIG_ACPI based tablets with e.g. Silead or Chipone touchscreens
	  do not have enough data in CONFIG_ACPI tables for the touchscreen driver to
	  handle the touchscreen properly, as OEMs expect the data to be baked
	  into the tablet model specific version of the driver shipped with the
	  the OS-image for the device. This option supplies the missing info.
	  Enable this for x86 tablets with Silead or Chipone touchscreens.

config CONFIG_INTEL_CHTDC_TI_PWRBTN
	tristate "Intel Cherry Trail Dollar Cove TI power button driver"
	depends on CONFIG_INTEL_SOC_PMIC_CHTDC_TI
	depends on CONFIG_INPUT
	---help---
	  This option adds a power button driver driver for Dollar Cove TI
	  PMIC on Intel Cherry Trail devices.

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

config CONFIG_INTEL_MRFLD_PWRBTN
	tristate "Intel Merrifield Basin Cove power button driver"
	depends on CONFIG_INTEL_SOC_PMIC_MRFLD
	depends on CONFIG_INPUT
	---help---
	  This option adds a power button driver for Basin Cove PMIC
	  on Intel Merrifield devices.

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

config CONFIG_I2C_MULTI_INSTANTIATE
	tristate "I2C multi instantiate pseudo device driver"
	depends on CONFIG_I2C && CONFIG_ACPI
	help
	  Some CONFIG_ACPI-based systems list multiple i2c-devices in a single CONFIG_ACPI
	  firmware-node. This driver will instantiate separate i2c-clients
	  for each device in the firmware-node.

	  To compile this driver as a module, choose CONFIG_M here: the module
	  will be called i2c-multi-instantiate.

config CONFIG_INTEL_ATOMISP2_PM
	tristate "Intel AtomISP2 dummy / power-management driver"
	depends on CONFIG_PCI && CONFIG_IOSF_MBI && CONFIG_PM
	help
	  Power-management driver for Intel's Image Signal Processor found on
	  Bay and Cherry Trail devices. This dummy driver's sole purpose is to
	  turn the ISP off (put it in D3) to save power and to allow entering
	  of S0ix modes.

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

config CONFIG_HUAWEI_WMI
	tristate "Huawei WMI hotkeys driver"
	depends on CONFIG_ACPI_WMI
	depends on CONFIG_INPUT
	select CONFIG_INPUT_SPARSEKMAP
	select CONFIG_LEDS_CLASS
	select CONFIG_LEDS_TRIGGERS
	select CONFIG_LEDS_TRIGGER_AUDIO
	select CONFIG_NEW_LEDS
	help
	  This driver provides support for Huawei WMI hotkeys.
	  It enables the missing keys and adds support to the micmute
	  LED found on some of these laptops.

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

config CONFIG_PCENGINES_APU2
	tristate "PC Engines APUv2/3 front button and LEDs driver"
	depends on CONFIG_INPUT && CONFIG_INPUT_KEYBOARD && CONFIG_GPIOLIB
	depends on CONFIG_LEDS_CLASS
	select CONFIG_GPIO_AMD_FCH
	select CONFIG_KEYBOARD_GPIO_POLLED
	select CONFIG_LEDS_GPIO
	help
	  This driver provides support for the front button and LEDs on
	  PC Engines APUv2/APUv3 board.

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

source "drivers/platform/x86/intel_speed_select_if/Kconfig"

endif # CONFIG_X86_PLATFORM_DEVICES

config CONFIG_PMC_ATOM
       def_bool y
       depends on CONFIG_PCI
       select CONFIG_COMMON_CLK