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
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
# SPDX-License-Identifier: GPL-2.0-only
menu "SCSI device support"

config CONFIG_SCSI_MOD
       tristate
       default y if CONFIG_SCSI=n || CONFIG_SCSI=y
       default m if CONFIG_SCSI=m

config CONFIG_RAID_ATTRS
	tristate "RAID Transport Class"
	default n
	depends on CONFIG_BLOCK
	depends on CONFIG_SCSI_MOD
	---help---
	  Provides RAID

config CONFIG_SCSI
	tristate "SCSI device support"
	depends on CONFIG_BLOCK
	select CONFIG_SCSI_DMA if CONFIG_HAS_DMA
	select CONFIG_SG_POOL
	select CONFIG_BLK_SCSI_REQUEST
	---help---
	  If you want to use a CONFIG_SCSI hard disk, CONFIG_SCSI tape drive, CONFIG_SCSI CD-CONFIG_ROM or
	  any other CONFIG_SCSI device under Linux, say Y and make sure that you know
	  the name of your CONFIG_SCSI host adapter (the card inside your computer
	  that "speaks" the CONFIG_SCSI protocol, also called CONFIG_SCSI controller),
	  because you will be asked for it.

	  You also need to say Y here if you have a device which speaks
	  the CONFIG_SCSI protocol.  Examples of this include the parallel port
	  version of the IOMEGA ZIP drive, CONFIG_USB storage devices, Fibre
	  Channel, and FireWire storage.

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>.
	  The module will be called scsi_mod.

	  However, do not compile this as a module if your root file system
	  (the one containing the directory /) is located on a CONFIG_SCSI device.

config CONFIG_SCSI_DMA
	bool
	default n

config CONFIG_SCSI_ESP_PIO
	bool

config CONFIG_SCSI_NETLINK
	bool
	default	n
	depends on CONFIG_NET

config CONFIG_SCSI_PROC_FS
	bool "legacy /proc/scsi/ support"
	depends on CONFIG_SCSI && CONFIG_PROC_FS
	default y
	---help---
	  This option enables support for the various files in
	  /proc/scsi.  In Linux 2.6 this has been superseded by
	  files in sysfs but many legacy applications rely on this.

	  If unsure say Y.

comment "SCSI support type (disk, tape, CD-ROM)"
	depends on CONFIG_SCSI

config CONFIG_BLK_DEV_SD
	tristate "SCSI disk support"
	depends on CONFIG_SCSI
	---help---
	  If you want to use CONFIG_SCSI hard disks, Fibre Channel disks,
	  Serial CONFIG_ATA (SATA) or Parallel CONFIG_ATA (PATA) hard disks,
	  CONFIG_USB storage or the CONFIG_SCSI or parallel port version of
	  the IOMEGA ZIP drive, say Y and read the CONFIG_SCSI-HOWTO,
	  the Disk-HOWTO and the Multi-Disk-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>. This is NOT for SCSI
	  CD-ROMs.

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>.
	  The module will be called sd_mod.

	  Do not compile this driver as a module if your root file system
	  (the one containing the directory /) is located on a CONFIG_SCSI disk.
	  In this case, do not compile the driver for your CONFIG_SCSI host adapter
	  (below) as a module either.

config CONFIG_CHR_DEV_ST
	tristate "SCSI tape support"
	depends on CONFIG_SCSI
	---help---
	  If you want to use a CONFIG_SCSI tape drive under Linux, say Y and read the
	  CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>, and
	  <file:Documentation/scsi/st.txt> in the kernel source.  This is NOT
	  for CONFIG_SCSI CD-ROMs.

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>. The module will be called st.

config CONFIG_BLK_DEV_SR
	tristate "SCSI CDROM support"
	depends on CONFIG_SCSI && CONFIG_BLK_DEV
	select CONFIG_CDROM
	---help---
	  If you want to use a CD or DVD drive attached to your computer
	  by CONFIG_SCSI, FireWire, CONFIG_USB or ATAPI, say Y and read the CONFIG_SCSI-HOWTO
	  and the CONFIG_CDROM-HOWTO at <http://www.tldp.org/docs.html#howto>.

	  Make sure to say Y or CONFIG_M to "ISO 9660 CD-ROM file system support".

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>.
	  The module will be called sr_mod.

config CONFIG_BLK_DEV_SR_VENDOR
	bool "Enable vendor-specific extensions (for SCSI CDROM)"
	depends on CONFIG_BLK_DEV_SR
	help
	  This enables the usage of vendor specific CONFIG_SCSI commands. This is
	  required to support multisession CDs with old NEC/CONFIG_TOSHIBA cdrom
	  drives (and HP Writers). If you have such a drive and get the first
	  session only, try saying Y here; everybody else says N.

config CONFIG_CHR_DEV_SG
	tristate "SCSI generic support"
	depends on CONFIG_SCSI
	---help---
	  If you want to use CONFIG_SCSI scanners, synthesizers or CD-writers or just
	  about anything having "SCSI" in its name other than hard disks,
	  CD-ROMs or tapes, say Y here. These won't be supported by the kernel
	  directly, so you need some additional software which knows how to
	  talk to these devices using the CONFIG_SCSI protocol:

	  For scanners, look at SANE (<http://www.sane-project.org/>). For CD
	  writer software look at Cdrtools
	  (<http://cdrecord.berlios.de/private/cdrecord.html>)
	  and for burning a "disk at once": CDRDAO
	  (<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
	  quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
	  For other devices, it's possible that you'll have to write the
	  driver software yourself. Please read the file
	  <file:Documentation/scsi/scsi-generic.txt> for more information.

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>. The module will be called sg.

	  If unsure, say N.

config CONFIG_CHR_DEV_SCH
	tristate "SCSI media changer support"
	depends on CONFIG_SCSI
	---help---
	  This is a driver for CONFIG_SCSI media changers.  Most common devices are
	  tape libraries and MOD/CONFIG_CDROM jukeboxes.  *Real* jukeboxes, you
	  don't need this for those tiny 6-slot cdrom changers.  Media
	  changers are listed as "Type: Medium Changer" in /proc/scsi/scsi.
	  If you have such hardware and want to use it with linux, say Y
	  here.  Check <file:Documentation/scsi/scsi-changer.txt> for details.
	
	  If you want to compile this as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want),
	  say CONFIG_M here and read <file:Documentation/kbuild/modules.rst> and
	  <file:Documentation/scsi/scsi.txt>. The module will be called ch.o.
	  If unsure, say N.

config CONFIG_SCSI_ENCLOSURE
	tristate "SCSI Enclosure Support"
	depends on CONFIG_SCSI && CONFIG_ENCLOSURE_SERVICES
	depends on m || CONFIG_SCSI_SAS_ATTRS != m
	help
	  Enclosures are devices sitting on or in CONFIG_SCSI backplanes that
	  manage devices.  If you have a disk cage, the chances are that
	  it has an enclosure device.  Selecting this option will just allow
	  certain enclosure conditions to be reported and is not required.

config CONFIG_SCSI_CONSTANTS
	bool "Verbose SCSI error reporting (kernel size += 36K)"
	depends on CONFIG_SCSI
	help
	  The error messages regarding your CONFIG_SCSI hardware will be easier to
	  understand if you say Y here; it will enlarge your kernel by about
	  36 KB. If in doubt, say Y.

config CONFIG_SCSI_LOGGING
	bool "SCSI logging facility"
	depends on CONFIG_SCSI
	---help---
	  This turns on a logging facility that can be used to debug a number
	  of CONFIG_SCSI related problems.

	  If you say Y here, no logging output will appear by default, but you
	  can enable logging by saying Y to "/proc file system support" and
	  "Sysctl support" below and executing the command

	  echo <bitmask> > /proc/sys/dev/scsi/logging_level

	  where <bitmask> is a four byte value representing the logging type
	  and logging level for each type of logging selected.

	  There are a number of logging types and you can find them in the
	  source at <file:drivers/scsi/scsi_logging.h>. The logging levels
	  are also described in that file and they determine the verbosity of
	  the logging for each logging type.

	  If you say N here, it may be harder to track down some types of CONFIG_SCSI
	  problems. If you say Y here your kernel will be somewhat larger, but
	  there should be no noticeable performance impact as long as you have
	  logging turned off.

config CONFIG_SCSI_SCAN_ASYNC
	bool "Asynchronous SCSI scanning"
	depends on CONFIG_SCSI
	help
	  The CONFIG_SCSI subsystem can probe for devices while the rest of the
	  system continues booting, and even probe devices on different
	  busses in parallel, leading to a significant speed-up.

	  You can override this choice by specifying "scsi_mod.scan=sync"
	  or async on the kernel's command line.

	  Note that this setting also affects whether resuming from
	  system suspend will be performed asynchronously.

menu "SCSI Transports"
	depends on CONFIG_SCSI

config CONFIG_SCSI_SPI_ATTRS
	tristate "Parallel SCSI (SPI) Transport Attributes"
	depends on CONFIG_SCSI
	help
	  If you wish to export transport-specific information about
	  each attached CONFIG_SCSI device to sysfs, say Y.  Otherwise, say N.

config CONFIG_SCSI_FC_ATTRS
	tristate "FiberChannel Transport Attributes"
	depends on CONFIG_SCSI && CONFIG_NET
	select CONFIG_BLK_DEV_BSGLIB
	select CONFIG_SCSI_NETLINK
	help
	  If you wish to export transport-specific information about
	  each attached FiberChannel device to sysfs, say Y.
	  Otherwise, say N.

config CONFIG_SCSI_ISCSI_ATTRS
	tristate "iSCSI Transport Attributes"
	depends on CONFIG_SCSI && CONFIG_NET
	select CONFIG_BLK_DEV_BSGLIB
	help
	  If you wish to export transport-specific information about
	  each attached iSCSI device to sysfs, say Y.
	  Otherwise, say N.

config CONFIG_SCSI_SAS_ATTRS
	tristate "SAS Transport Attributes"
	depends on CONFIG_SCSI
	select CONFIG_BLK_DEV_BSGLIB
	help
	  If you wish to export transport-specific information about
	  each attached SAS device to sysfs, say Y.

source "drivers/scsi/libsas/Kconfig"

config CONFIG_SCSI_SRP_ATTRS
	tristate "SRP Transport Attributes"
	depends on CONFIG_SCSI
	help
	  If you wish to export transport-specific information about
	  each attached SRP device to sysfs, say Y.

endmenu

menuconfig CONFIG_SCSI_LOWLEVEL
	bool "SCSI low-level drivers"
	depends on CONFIG_SCSI!=n
	default y

if CONFIG_SCSI_LOWLEVEL && CONFIG_SCSI

config CONFIG_ISCSI_TCP
	tristate "iSCSI Initiator over TCP/IP"
	depends on CONFIG_SCSI && CONFIG_INET
	select CONFIG_CRYPTO
	select CONFIG_CRYPTO_MD5
	select CONFIG_CRYPTO_CRC32C
	select CONFIG_SCSI_ISCSI_ATTRS
	help
	 The iSCSI Driver provides a host with the ability to access storage
	 through an IP network. The driver uses the iSCSI protocol to transport
	 CONFIG_SCSI requests and responses over a TCP/IP network between the host
	 (the "initiator") and "targets".  Architecturally, the iSCSI driver
	 combines with the host's TCP/IP stack, network drivers, and Network
	 Interface Card (NIC) to provide the same functions as a CONFIG_SCSI or a
	 Fibre Channel (FC) adapter driver with a Host Bus Adapter (HBA).

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

	 The userspace component needed to initialize the driver, documentation,
	 and sample configuration files can be found here:

	 http://open-iscsi.org

config CONFIG_ISCSI_BOOT_SYSFS
	tristate "iSCSI Boot Sysfs Interface"
	default	n
	help
	  This option enables support for exposing iSCSI boot information
	  via sysfs to userspace. If you wish to export this information,
	  say Y. Otherwise, say N.

source "drivers/scsi/cxgbi/Kconfig"
source "drivers/scsi/bnx2i/Kconfig"
source "drivers/scsi/bnx2fc/Kconfig"
source "drivers/scsi/be2iscsi/Kconfig"
source "drivers/scsi/cxlflash/Kconfig"

config CONFIG_SGIWD93_SCSI
	tristate "SGI WD93C93 SCSI Driver"
	depends on CONFIG_SGI_HAS_WD93 && CONFIG_SCSI
  	help
	  If you have a Western Digital WD93 CONFIG_SCSI controller on
	  an SGI CONFIG_MIPS system, say Y.  Otherwise, say N.

config CONFIG_BLK_DEV_3W_XXXX_RAID
	tristate "3ware 5/6/7/8xxx ATA-RAID support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  3ware is the only hardware CONFIG_ATA-Raid product in Linux to date.
	  This card is 2,4, or 8 channel master mode support only.
	  CONFIG_SCSI support required!!!

	  <http://www.3ware.com/>

	  Please read the comments at the top of
	  <file:drivers/scsi/3w-xxxx.c>.

config CONFIG_SCSI_HPSA
	tristate "HP Smart Array SCSI driver"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_CHECK_SIGNATURE
	select CONFIG_SCSI_SAS_ATTRS
	help
	  This driver supports HP Smart Array Controllers (circa 2009).
	  It is a CONFIG_SCSI alternative to the cciss driver, which is a block
	  driver.  Anyone wishing to use HP Smart Array controllers who
	  would prefer the devices be presented to linux as CONFIG_SCSI devices,
	  rather than as generic block devices should say Y here.

config CONFIG_SCSI_3W_9XXX
	tristate "3ware 9xxx SATA-RAID support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This driver supports the 9000 series 3ware SATA-RAID cards.

	  <http://www.amcc.com>

	  Please read the comments at the top of
	  <file:drivers/scsi/3w-9xxx.c>.

config CONFIG_SCSI_3W_SAS
	tristate "3ware 97xx SAS/SATA-RAID support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This driver supports the LSI 3ware 9750 6Gb/s SAS/SATA-RAID cards.

	  <http://www.lsi.com>

	  Please read the comments at the top of
	  <file:drivers/scsi/3w-sas.c>.

config CONFIG_SCSI_ACARD
	tristate "ACARD SCSI support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This driver supports the ACARD CONFIG_SCSI host adapter.
	  Support Chip <ATP870 ATP876 ATP880 ATP885>
	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called atp870u.

config CONFIG_SCSI_AHA152X
	tristate "Adaptec AHA152X/2825 support"
	depends on CONFIG_ISA && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	select CONFIG_CHECK_SIGNATURE
	---help---
	  This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825
	  CONFIG_SCSI host adapters. It also works for the AVA-1505, but the IRQ etc.
	  must be manually specified in this case.

	  It is explained in section 3.3 of the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>. You might also want to
	  read the file <file:Documentation/scsi/aha152x.txt>.

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

config CONFIG_SCSI_AHA1542
	tristate "Adaptec AHA1542 support"
	depends on CONFIG_ISA && CONFIG_SCSI && CONFIG_ISA_DMA_API
	---help---
	  This is support for a CONFIG_SCSI host adapter.  It is explained in section
	  3.4 of the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.  Note that Trantor was
	  purchased by Adaptec, and some former Trantor products are being
	  sold under the Adaptec name.  If it doesn't work out of the box, you
	  may have to change some settings in <file:drivers/scsi/aha1542.h>.

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

config CONFIG_SCSI_AHA1740
	tristate "Adaptec AHA1740 support"
	depends on CONFIG_EISA && CONFIG_SCSI
	---help---
	  This is support for a CONFIG_SCSI host adapter.  It is explained in section
	  3.5 of the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
	  of the box, you may have to change some settings in
	  <file:drivers/scsi/aha1740.h>.

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

config CONFIG_SCSI_AACRAID
	tristate "Adaptec AACRAID support"
	depends on CONFIG_SCSI && CONFIG_PCI
	help
	  This driver supports a variety of Dell, HP, Adaptec, IBM and
	  ICP storage products. For a list of supported products, refer
	  to <file:Documentation/scsi/aacraid.txt>.

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


source "drivers/scsi/aic7xxx/Kconfig.aic7xxx"
source "drivers/scsi/aic7xxx/Kconfig.aic79xx"
source "drivers/scsi/aic94xx/Kconfig"
source "drivers/scsi/hisi_sas/Kconfig"
source "drivers/scsi/mvsas/Kconfig"

config CONFIG_SCSI_MVUMI
	tristate "Marvell UMI driver"
	depends on CONFIG_SCSI && CONFIG_PCI
	help
	  Module for Marvell Universal Message Interface(UMI) driver

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

config CONFIG_SCSI_DPT_I2O
	tristate "Adaptec I2O RAID support "
	depends on CONFIG_SCSI && CONFIG_PCI && CONFIG_VIRT_TO_BUS
	help
	  This driver supports all of Adaptec's I2O based RAID controllers as 
	  well as the DPT SmartRaid V cards.  This is an Adaptec maintained
	  driver by Deanna Bonds.  See <file:Documentation/scsi/dpti.txt>.

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

config CONFIG_SCSI_ADVANSYS
	tristate "AdvanSys SCSI support"
	depends on CONFIG_SCSI
	depends on CONFIG_ISA || CONFIG_EISA || CONFIG_PCI
	depends on CONFIG_ISA_DMA_API || !CONFIG_ISA
	help
	  This is a driver for all CONFIG_SCSI host adapters manufactured by
	  AdvanSys. It is documented in the kernel source in
	  <file:drivers/scsi/advansys.c>.

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

config CONFIG_SCSI_ARCMSR
	tristate "ARECA (ARC11xx/12xx/13xx/16xx) SATA/SAS RAID Host Adapter"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This driver supports all of ARECA's SATA/SAS RAID controller cards.
	  This is an ARECA-maintained driver by Erich Chen.
	  If you have any problems, please mail to: <erich@areca.com.tw>.
	  Areca supports Linux RAID config tools.
	  Please link <http://www.areca.com.tw>

	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called arcmsr (modprobe arcmsr).

source "drivers/scsi/esas2r/Kconfig"
source "drivers/scsi/megaraid/Kconfig.megaraid"
source "drivers/scsi/mpt3sas/Kconfig"
source "drivers/scsi/smartpqi/Kconfig"
source "drivers/scsi/ufs/Kconfig"

config CONFIG_SCSI_HPTIOP
	tristate "HighPoint RocketRAID 3xxx/4xxx Controller support"
	depends on CONFIG_SCSI && CONFIG_PCI
	help
	  This option enables support for HighPoint RocketRAID 3xxx/4xxx
	  controllers.

	  To compile this driver as a module, choose CONFIG_M here; the module
	  will be called hptiop. If unsure, say N.

config CONFIG_SCSI_BUSLOGIC
	tristate "BusLogic SCSI support"
	depends on (CONFIG_PCI || CONFIG_ISA) && CONFIG_SCSI && CONFIG_ISA_DMA_API && CONFIG_VIRT_TO_BUS
	---help---
	  This is support for BusLogic MultiMaster and FlashPoint CONFIG_SCSI Host
	  Adapters. Consult the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>, and the files
	  <file:Documentation/scsi/BusLogic.txt> and
	  <file:Documentation/scsi/FlashPoint.txt> for more information.
	  Note that support for FlashPoint is only available for 32-bit
	  x86 configurations.

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

config CONFIG_SCSI_FLASHPOINT
	bool "FlashPoint support"
	depends on CONFIG_SCSI_BUSLOGIC && CONFIG_PCI
	help
	  This option allows you to add FlashPoint support to the
	  BusLogic CONFIG_SCSI driver. The FlashPoint SCCB Manager code is
	  substantial, so users of MultiMaster Host Adapters may not
	  wish to include it.

config CONFIG_SCSI_MYRB
	tristate "Mylex DAC960/DAC1100 PCI RAID Controller (Block Interface)"
	depends on CONFIG_PCI
	select CONFIG_RAID_ATTRS
	help
	  This driver adds support for the Mylex DAC960, AcceleRAID, and
	  eXtremeRAID CONFIG_PCI RAID controllers. This driver supports the
	  older, block based interface.
	  This driver is a reimplementation of the original DAC960
	  driver. If you have used the DAC960 driver you should enable
	  this module.

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

config CONFIG_SCSI_MYRS
	tristate "Mylex DAC960/DAC1100 PCI RAID Controller (SCSI Interface)"
	depends on CONFIG_PCI
	depends on !CONFIG_CPU_BIG_ENDIAN || CONFIG_COMPILE_TEST
	select CONFIG_RAID_ATTRS
	help
	  This driver adds support for the Mylex DAC960, AcceleRAID, and
	  eXtremeRAID CONFIG_PCI RAID controllers.  This driver supports the
	  newer, CONFIG_SCSI-based interface only.
	  This driver is a reimplementation of the original DAC960
	  driver. If you have used the DAC960 driver you should enable
	  this module.

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

config CONFIG_VMWARE_PVSCSI
	tristate "VMware PVSCSI driver support"
	depends on CONFIG_PCI && CONFIG_SCSI && CONFIG_X86
	help
	  This driver supports VMware's para virtualized CONFIG_SCSI HBA.
	  To compile this driver as a module, choose CONFIG_M here: the
	  module will be called vmw_pvscsi.

config CONFIG_XEN_SCSI_FRONTEND
	tristate "XEN SCSI frontend driver"
	depends on CONFIG_SCSI && CONFIG_XEN
	select CONFIG_XEN_XENBUS_FRONTEND
	help
	  The CONFIG_XEN CONFIG_SCSI frontend driver allows the kernel to access CONFIG_SCSI Devices
	  within another guest OS (usually Dom0).
	  Only needed if the kernel is running in a CONFIG_XEN guest and generic
	  CONFIG_SCSI access to a device is needed.

config CONFIG_HYPERV_STORAGE
	tristate "Microsoft Hyper-V virtual storage driver"
	depends on CONFIG_SCSI && CONFIG_HYPERV
	depends on m || CONFIG_SCSI_FC_ATTRS != m
	default CONFIG_HYPERV
	help
	  Select this option to enable the Hyper-V virtual storage driver.

config CONFIG_LIBFC
	tristate "LibFC module"
	depends on CONFIG_SCSI_FC_ATTRS
	select CONFIG_CRC32
	---help---
	  Fibre Channel library module

config CONFIG_LIBFCOE
	tristate "LibFCoE module"
	depends on CONFIG_LIBFC
	---help---
	  Library for Fibre Channel over Ethernet module

config CONFIG_FCOE
	tristate "FCoE module"
	depends on CONFIG_PCI
	depends on CONFIG_LIBFCOE
	---help---
	  Fibre Channel over Ethernet module

config CONFIG_FCOE_FNIC
	tristate "Cisco FNIC Driver"
	depends on CONFIG_PCI && CONFIG_X86
	depends on CONFIG_LIBFCOE
	help
	  This is support for the Cisco CONFIG_PCI-Express FCoE HBA.

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>.
	  The module will be called fnic.

config CONFIG_SCSI_SNIC
	tristate "Cisco SNIC Driver"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This is support for the Cisco CONFIG_PCI-Express CONFIG_SCSI HBA.

	  To compile this driver as a module, choose CONFIG_M here and read
	  <file:Documentation/scsi/scsi.txt>.
	  The module will be called snic.

config CONFIG_SCSI_SNIC_DEBUG_FS
	bool "Cisco SNIC Driver Debugfs Support"
	depends on CONFIG_SCSI_SNIC && CONFIG_DEBUG_FS
	help
	  This enables to list debugging information from SNIC Driver
	  available via debugfs file system

config CONFIG_SCSI_DMX3191D
	tristate "DMX3191D SCSI support"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  This is support for Domex DMX3191D CONFIG_SCSI Host Adapters.

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

config CONFIG_SCSI_FDOMAIN
	tristate
	depends on CONFIG_SCSI

config CONFIG_SCSI_FDOMAIN_PCI
	tristate "Future Domain TMC-3260/AHA-2920A PCI SCSI support"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_SCSI_FDOMAIN
	help
	  This is support for Future Domain's CONFIG_PCI CONFIG_SCSI host adapters (TMC-3260)
	  and other adapters with CONFIG_PCI bus based on the Future Domain chipsets
	  (Adaptec AHA-2920A).

	  NOTE: Newer Adaptec AHA-2920C boards use the Adaptec AIC-7850 chip
	  and should use the aic7xxx driver ("Adaptec AIC7xxx chipset SCSI
	  controller support"). This Future Domain driver works with the older
	  Adaptec AHA-2920A boards with a Future Domain chip on them.

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

config CONFIG_SCSI_FDOMAIN_ISA
	tristate "Future Domain 16xx ISA SCSI support"
	depends on CONFIG_ISA && CONFIG_SCSI
	select CONFIG_CHECK_SIGNATURE
	select CONFIG_SCSI_FDOMAIN
	help
	  This is support for Future Domain's 16-bit CONFIG_SCSI host adapters
	  (TMC-1660/1680, TMC-1650/1670, TMC-1610M/MER/MEX) and other adapters
	  with CONFIG_ISA bus based on the Future Domain chipsets (Quantum CONFIG_ISA-200S,
	  CONFIG_ISA-250MG; and at least one IBM board).

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

config CONFIG_SCSI_GDTH
	tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support"
	depends on CONFIG_PCI && CONFIG_SCSI
	---help---
	  Formerly called GDT CONFIG_SCSI Disk Array Controller Support.

	  This is a driver for RAID/CONFIG_SCSI Disk Array Controllers (CONFIG_EISA/CONFIG_ISA/CONFIG_PCI) 
	  manufactured by Intel Corporation/ICP vortex GmbH. It is documented
	  in the kernel source in <file:drivers/scsi/gdth.c> and
	  <file:drivers/scsi/gdth.h>.

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

config CONFIG_SCSI_ISCI
	tristate "Intel(R) C600 Series Chipset SAS Controller"
	depends on CONFIG_PCI && CONFIG_SCSI
	depends on CONFIG_X86
	select CONFIG_SCSI_SAS_LIBSAS
	---help---
	  This driver supports the 6Gb/s SAS capabilities of the storage
	  control unit found in the Intel(R) C600 series chipset.

config CONFIG_SCSI_GENERIC_NCR5380
	tristate "Generic NCR5380/53c400 SCSI ISA card support"
	depends on CONFIG_ISA && CONFIG_SCSI && CONFIG_HAS_IOPORT_MAP
	select CONFIG_SCSI_SPI_ATTRS
	---help---
	  This is a driver for old CONFIG_ISA card CONFIG_SCSI controllers based on a
	  NCR 5380, 53C80, 53C400, 53C400A, or CONFIG_DTC 436 device.
	  Most boards such as the Trantor T130 fit this category, as do
	  various 8-bit and 16-bit CONFIG_ISA cards bundled with CONFIG_SCSI scanners.

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

config CONFIG_SCSI_IPS
	tristate "IBM ServeRAID support"
	depends on CONFIG_PCI && CONFIG_SCSI
	---help---
	  This is support for the IBM ServeRAID hardware RAID controllers.
	  See <http://www.developer.ibm.com/welcome/netfinity/serveraid.html>
	  and <http://www-947.ibm.com/support/entry/portal/docdisplay?brand=5000008&lndocid=SERV-RAID>
	  for more information.  If this driver does not work correctly
	  without modification please contact the author by email at
	  <ipslinux@adaptec.com>.

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

config CONFIG_SCSI_IBMVSCSI
	tristate "IBM Virtual SCSI support"
	depends on CONFIG_PPC_PSERIES
	select CONFIG_SCSI_SRP_ATTRS
	help
	  This is the IBM POWER Virtual CONFIG_SCSI Client

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

config CONFIG_SCSI_IBMVSCSIS
	tristate "IBM Virtual SCSI Server support"
	depends on CONFIG_PPC_PSERIES && CONFIG_TARGET_CORE && CONFIG_SCSI && CONFIG_PCI
	help
	  This is the IBM POWER Virtual CONFIG_SCSI Target Server
	  This driver uses the SRP protocol for communication between servers
	  guest and/or the host that run on the same server.
	  More information on VSCSI protocol can be found at www.power.org

	  The userspace configuration needed to initialize the driver can be
	  be found here:

	  https://github.com/powervm/ibmvscsis/wiki/Configuration

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

config CONFIG_SCSI_IBMVFC
	tristate "IBM Virtual FC support"
	depends on CONFIG_PPC_PSERIES && CONFIG_SCSI
	depends on CONFIG_SCSI_FC_ATTRS
	help
	  This is the IBM POWER Virtual FC Client

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

config CONFIG_SCSI_IBMVFC_TRACE
	bool "enable driver internal trace"
	depends on CONFIG_SCSI_IBMVFC
	default y
	help
	  If you say Y here, the driver will trace all commands issued
	  to the adapter. Performance impact is minimal. Trace can be
	  dumped using /sys/class/scsi_host/hostXX/trace.

config CONFIG_SCSI_INITIO
	tristate "Initio 9100U(W) support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This is support for the Initio 91XXU(W) CONFIG_SCSI host adapter.  Please
	  read the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

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

config CONFIG_SCSI_INIA100
	tristate "Initio INI-A100U2W support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  This is support for the Initio INI-A100U2W CONFIG_SCSI host adapter.
	  Please read the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

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

config CONFIG_SCSI_PPA
	tristate "IOMEGA parallel port (ppa - older drives)"
	depends on CONFIG_SCSI && CONFIG_PARPORT_PC
	---help---
	  This driver supports older versions of IOMEGA's parallel port ZIP
	  drive (a 100 MB removable media device).

	  Note that you can say N here if you have the CONFIG_SCSI version of the ZIP
	  drive: it will be supported automatically if you said Y to the
	  generic "SCSI disk support", above.

	  If you have the ZIP Plus drive or a more recent parallel port ZIP
	  drive (if the supplied cable with the drive is labeled "AutoDetect")
	  then you should say N here and Y to "IOMEGA parallel port (imm -
	  newer drives)", below.

	  For more information about this driver and how to use it you should
	  read the file <file:Documentation/scsi/ppa.txt>.  You should also read
	  the CONFIG_SCSI-HOWTO, which is available from
	  <http://www.tldp.org/docs.html#howto>.  If you use this driver,
	  you will still be able to use the parallel port for other tasks,
	  such as a printer; it is safe to compile both drivers into the
	  kernel.

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

config CONFIG_SCSI_IMM
	tristate "IOMEGA parallel port (imm - newer drives)"
	depends on CONFIG_SCSI && CONFIG_PARPORT_PC
	---help---
	  This driver supports newer versions of IOMEGA's parallel port ZIP
	  drive (a 100 MB removable media device).

	  Note that you can say N here if you have the CONFIG_SCSI version of the ZIP
	  drive: it will be supported automatically if you said Y to the
	  generic "SCSI disk support", above.

	  If you have the ZIP Plus drive or a more recent parallel port ZIP
	  drive (if the supplied cable with the drive is labeled "AutoDetect")
	  then you should say Y here; if you have an older ZIP drive, say N
	  here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.

	  For more information about this driver and how to use it you should
	  read the file <file:Documentation/scsi/ppa.txt>.  You should also read
	  the CONFIG_SCSI-HOWTO, which is available from
	  <http://www.tldp.org/docs.html#howto>.  If you use this driver,
	  you will still be able to use the parallel port for other tasks,
	  such as a printer; it is safe to compile both drivers into the
	  kernel.

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

config CONFIG_SCSI_IZIP_EPP16
	bool "ppa/imm option - Use slow (but safe) EPP-16"
	depends on CONFIG_SCSI_PPA || CONFIG_SCSI_IMM
	---help---
	  EPP (Enhanced Parallel Port) is a standard for parallel ports which
	  allows them to act as expansion buses that can handle up to 64
	  peripheral devices.

	  Some parallel port chipsets are slower than their motherboard, and
	  so we have to control the state of the chipset's FIFO queue every
	  now and then to avoid data loss. This will be done if you say Y
	  here.

	  Generally, saying Y is the safe option and slows things down a bit.

config CONFIG_SCSI_IZIP_SLOW_CTR
	bool "ppa/imm option - Assume slow parport control register"
	depends on CONFIG_SCSI_PPA || CONFIG_SCSI_IMM
	help
	  Some parallel ports are known to have excessive delays between
	  changing the parallel port control register and good data being
	  available on the parallel port data/status register. This option
	  forces a small delay (1.0 usec to be exact) after changing the
	  control register to let things settle out. Enabling this option may
	  result in a big drop in performance but some very old parallel ports
	  (found in 386 vintage machines) will not work properly.

	  Generally, saying N is fine.

config CONFIG_SCSI_LASI700
	tristate "HP Lasi SCSI support for 53c700/710"
	depends on CONFIG_GSC && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  This is a driver for the CONFIG_SCSI controller in the Lasi chip found in
	  many PA-RISC workstations & servers.  If you do not know whether you
	  have a Lasi chip, it is safe to say "Y" here.

config CONFIG_SCSI_SNI_53C710
	tristate "SNI RM SCSI support for 53c710"
	depends on CONFIG_SNI_RM && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	select CONFIG_53C700_LE_ON_BE
	help
	  This is a driver for the onboard CONFIG_SCSI controller found in older
	  SNI RM workstations & servers.

config CONFIG_53C700_LE_ON_BE
	bool
	depends on CONFIG_SCSI_LASI700 || CONFIG_SCSI_SNI_53C710
	default y

config CONFIG_SCSI_STEX
	tristate "Promise SuperTrak EX Series support"
	depends on CONFIG_PCI && CONFIG_SCSI
	---help---
	  This driver supports Promise SuperTrak EX series storage controllers.

	  Promise provides Linux RAID configuration utility for these
	  controllers. Please visit <http://www.promise.com> to download.

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

config CONFIG_53C700_BE_BUS
	bool
	depends on CONFIG_SCSI_A4000T || CONFIG_SCSI_ZORRO7XX || CONFIG_MVME16x_SCSI || CONFIG_BVME6000_SCSI
	default y

config CONFIG_SCSI_SYM53C8XX_2
	tristate "SYM53C8XX Version 2 SCSI support"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	---help---
	  This driver supports the whole NCR53C8XX/SYM53C8XX family of
	  CONFIG_PCI-CONFIG_SCSI controllers.  It also supports the subset of LSI53C10XX
	  Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
	  language.  It does not support LSI53C10XX Ultra-320 CONFIG_PCI-X CONFIG_SCSI
	  controllers; you need to use the Fusion MPT driver for that.

	  Please read <file:Documentation/scsi/sym53c8xx_2.txt> for more
	  information.

config CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
	int "DMA addressing mode"
	depends on CONFIG_SCSI_SYM53C8XX_2
	default "1"
	---help---
	  This option only applies to CONFIG_PCI-CONFIG_SCSI chips that are CONFIG_PCI DAC
	  capable (875A, 895A, 896, 1010-33, 1010-66, 1000).

	  When set to 0, the driver will program the chip to only perform
	  32-bit DMA.  When set to 1, the chip will be able to perform DMA
	  to addresses up to 1TB.  When set to 2, the driver supports the
	  full 64-bit DMA address range, but can only address 16 segments
	  of 4 GB each.  This limits the total addressable range to 64 GB.

	  Most machines with less than 4GB of memory should use a setting
	  of 0 for best performance.  If your machine has 4GB of memory
	  or more, you should set this option to 1 (the default).

	  The still experimental value 2 (64 bit DMA addressing with 16
	  x 4GB segments limitation) can be used on systems that require
	  CONFIG_PCI address bits past bit 39 to be set for the addressing of
	  memory using CONFIG_PCI DAC cycles.

config CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS
	int "Default tagged command queue depth"
	depends on CONFIG_SCSI_SYM53C8XX_2
	default "16"
	help
	  This is the default value of the command queue depth the
	  driver will announce to the generic CONFIG_SCSI layer for devices
	  that support tagged command queueing. This value can be changed
	  from the boot command line.  This is a soft limit that cannot
	  exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.

config CONFIG_SCSI_SYM53C8XX_MAX_TAGS
	int "Maximum number of queued commands"
	depends on CONFIG_SCSI_SYM53C8XX_2
	default "64"
	help
	  This option allows you to specify the maximum number of commands
	  that can be queued to any device, when tagged command queuing is
	  possible. The driver supports up to 256 queued commands per device.
	  This value is used as a compiled-in hard limit.

config CONFIG_SCSI_SYM53C8XX_MMIO
	bool "Use memory mapped IO"
	depends on CONFIG_SCSI_SYM53C8XX_2
	default y
	help
	  Memory mapped IO is faster than Port IO.  Most people should
	  answer Y here, but some machines may have problems.  If you have
	  to answer N here, please report the problem to the maintainer.

config CONFIG_SCSI_IPR
	tristate "IBM Power Linux RAID adapter support"
	depends on CONFIG_PCI && CONFIG_SCSI && CONFIG_ATA
	select CONFIG_FW_LOADER
	select CONFIG_IRQ_POLL
	select CONFIG_SGL_ALLOC
	---help---
	  This driver supports the IBM Power Linux family RAID adapters.
	  This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
	  as IBM iSeries 5702, 5703, 5709, and 570A.

config CONFIG_SCSI_IPR_TRACE
	bool "enable driver internal trace"
	depends on CONFIG_SCSI_IPR
	default y
	help
	  If you say Y here, the driver will trace all commands issued
	  to the adapter. Performance impact is minimal. Trace can be
	  dumped using /sys/bus/class/scsi_host/hostXX/trace.

config CONFIG_SCSI_IPR_DUMP
	bool "enable adapter dump support"
	depends on CONFIG_SCSI_IPR
	default y
	help
	  If you say Y here, the driver will support adapter crash dump.
	  If you enable this support, the iprdump daemon can be used
	  to capture adapter failure analysis information.

config CONFIG_SCSI_ZALON
	tristate "Zalon SCSI support"
	depends on CONFIG_GSC && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  The Zalon is a CONFIG_GSC/HSC bus interface chip that sits between the
	  PA-RISC processor and the NCR 53c720 CONFIG_SCSI controller on C100,
	  C110, J200, J210 and some CONFIG_D, K & R-class machines.  It's also
	  used on the add-in Bluefish, Barracuda & Shrike CONFIG_SCSI cards.
	  Say Y here if you have one of these machines or cards.

config CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS
	int "default tagged command queue depth"
	depends on CONFIG_SCSI_ZALON
	default "8"
	---help---
	  "Tagged command queuing" is a feature of CONFIG_SCSI-2 which improves
	  performance: the host adapter can send several CONFIG_SCSI commands to a
	  device's queue even if previous commands haven't finished yet.
	  Because the device is intelligent, it can optimize its operations
	  (like head positioning) based on its own request queue. Some CONFIG_SCSI
	  devices don't implement this properly; if you want to disable this
	  feature, enter 0 or 1 here (it doesn't matter which).

	  The default value is 8 and should be supported by most hard disks.
	  This value can be overridden from the boot command line using the
	  'tags' option as follows (example):
	  'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
	  4, set queue depth to 16 for target 2 and target 3 on controller 0
	  and set queue depth to 10 for target 0 / lun 2 on controller 1.

	  The normal answer therefore is to go with the default 8 and to use
	  a boot command line option for devices that need to use a different
	  command queue depth.

	  There is no safe option other than using good CONFIG_SCSI devices.

config CONFIG_SCSI_NCR53C8XX_MAX_TAGS
	int "maximum number of queued commands"
	depends on CONFIG_SCSI_ZALON
	default "32"
	---help---
	  This option allows you to specify the maximum number of commands
	  that can be queued to any device, when tagged command queuing is
	  possible. The default value is 32. Minimum is 2, maximum is 64.
	  Modern hard disks are able to support 64 tags and even more, but
	  do not seem to be faster when more than 32 tags are being used.

	  So, the normal answer here is to go with the default value 32 unless
	  you are using very large hard disks with large cache (>= 1 MB) that
	  are able to take advantage of more than 32 tagged commands.

	  There is no safe option and the default answer is recommended.

config CONFIG_SCSI_NCR53C8XX_SYNC
	int "synchronous transfers frequency in MHz"
	depends on CONFIG_SCSI_ZALON
	default "20"
	---help---
	  The CONFIG_SCSI Parallel Interface-2 Standard defines 5 classes of transfer
	  rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80.  The numbers
	  are respectively the maximum data transfer rates in mega-transfers
	  per second for each class.  For example, a FAST-20 Wide 16 device is
	  able to transfer data at 20 million 16 bit packets per second for a
	  total rate of 40 MB/s.

	  You may specify 0 if you want to only use asynchronous data
	  transfers. This is the safest and slowest option. Otherwise, specify
	  a value between 5 and 80, depending on the capability of your CONFIG_SCSI
	  controller.  The higher the number, the faster the data transfer.
	  Note that 80 should normally be ok since the driver decreases the
	  value automatically according to the controller's capabilities.

	  Your answer to this question is ignored for controllers with CONFIG_NVRAM,
	  since the driver will get this information from the user set-up.  It
	  also can be overridden using a boot setup option, as follows
	  (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
	  for FAST-20 synchronous data transfer (20 mega-transfers per
	  second).

	  The normal answer therefore is not to go with the default but to
	  select the maximum value 80 allowing the driver to use the maximum
	  value supported by each controller. If this causes problems with
	  your CONFIG_SCSI devices, you should come back and decrease the value.

	  There is no safe option other than using good cabling, right
	  terminations and CONFIG_SCSI conformant devices.

config CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT
	bool "not allow targets to disconnect"
	depends on CONFIG_SCSI_ZALON && CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=0
	help
	  This option is only provided for safety if you suspect some CONFIG_SCSI
	  device of yours to not support properly the target-disconnect
	  feature. In that case, you would say Y here. In general however, to
	  not allow targets to disconnect is not reasonable if there is more
	  than 1 device on a CONFIG_SCSI bus. The normal answer therefore is N.

config CONFIG_SCSI_QLOGIC_FAS
	tristate "Qlogic FAS SCSI support"
	depends on CONFIG_ISA && CONFIG_SCSI
	---help---
	  This is a driver for the CONFIG_ISA, VLB, and CONFIG_PCMCIA versions of the Qlogic
	  FastSCSI! cards as well as any other card based on the FASXX chip
	  (including the Control Concepts CONFIG_SCSI/CONFIG_IDE/SIO/PIO/FDC cards).

	  This driver does NOT support the CONFIG_PCI versions of these cards. The
	  CONFIG_PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
	  SCSI support"), below.

	  Information about this driver is contained in
	  <file:Documentation/scsi/qlogicfas.txt>.  You should also read the
	  CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

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

config CONFIG_SCSI_QLOGIC_1280
	tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
	depends on CONFIG_PCI && CONFIG_SCSI
	help
	  Say Y if you have a QLogic ISP1240/1x80/1x160 CONFIG_SCSI host adapter.

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

config CONFIG_SCSI_QLOGICPTI
	tristate "PTI Qlogic, ISP Driver"
	depends on CONFIG_SBUS && CONFIG_SCSI
	help
	  This driver supports CONFIG_SBUS CONFIG_SCSI controllers from PTI or QLogic. These
	  controllers are known under Solaris as qpti and in the openprom as
	  PTI,ptisp or QLGC,isp. Note that CONFIG_PCI QLogic CONFIG_SCSI controllers are
	  driven by a different driver.

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

source "drivers/scsi/qla2xxx/Kconfig"
source "drivers/scsi/qla4xxx/Kconfig"
source "drivers/scsi/qedi/Kconfig"
source "drivers/scsi/qedf/Kconfig"

config CONFIG_SCSI_LPFC
	tristate "Emulex LightPulse Fibre Channel Support"
	depends on CONFIG_PCI && CONFIG_SCSI
	depends on CONFIG_SCSI_FC_ATTRS
	depends on CONFIG_NVME_TARGET_FC || CONFIG_NVME_TARGET_FC=n
	depends on CONFIG_NVME_FC || CONFIG_NVME_FC=n
	select CONFIG_CRC_T10DIF
	---help---
          This lpfc driver supports the Emulex LightPulse
          Family of Fibre Channel CONFIG_PCI host adapters.

config CONFIG_SCSI_LPFC_DEBUG_FS
	bool "Emulex LightPulse Fibre Channel debugfs Support"
	depends on CONFIG_SCSI_LPFC && CONFIG_DEBUG_FS
	---help---
	  This makes debugging information from the lpfc driver
	  available via the debugfs filesystem.

config CONFIG_SCSI_SIM710
	tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
	depends on CONFIG_EISA && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	---help---
	  This driver is for NCR53c710 based CONFIG_SCSI host adapters.

	  It currently supports Compaq CONFIG_EISA cards.

config CONFIG_SCSI_DC395x
	tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support"
	depends on CONFIG_PCI && CONFIG_SCSI
	---help---
	  This driver supports CONFIG_PCI CONFIG_SCSI host adapters based on the ASIC
	  TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.

	  This driver works, but is still in experimental status. So better
	  have a bootable disk and a backup in case of emergency.

	  Documentation can be found in <file:Documentation/scsi/dc395x.txt>.

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

config CONFIG_SCSI_AM53C974
	tristate "Tekram DC390(T) and Am53/79C974 SCSI support (new driver)"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	---help---
	  This driver supports CONFIG_PCI CONFIG_SCSI host adapters based on the Am53C974A
	  chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
	  PCscsi/PCnet (Am53/79C974) solutions.
	  This is a new implementation base on the generic esp_scsi driver.

	  Note that this driver does NOT support Tekram DC390W/U/F, which are
	  based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.

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

config CONFIG_SCSI_NSP32
	tristate "Workbit NinjaSCSI-32Bi/UDE support"
	depends on CONFIG_PCI && CONFIG_SCSI && !CONFIG_64BIT
	help
	  This is support for the Workbit NinjaSCSI-32Bi/UDE CONFIG_PCI/Cardbus
	  CONFIG_SCSI host adapter. Please read the CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

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

config CONFIG_SCSI_WD719X
	tristate "Western Digital WD7193/7197/7296 support"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_EEPROM_93CX6
	---help---
	  This is a driver for Western Digital WD7193, WD7197 and WD7296 CONFIG_PCI
	  CONFIG_SCSI controllers (based on WD33C296A chip).

config CONFIG_SCSI_DEBUG
	tristate "SCSI debugging host and device simulator"
	depends on CONFIG_SCSI
	select CONFIG_CRC_T10DIF
	help
	  This pseudo driver simulates one or more hosts (CONFIG_SCSI initiators),
	  each with one or more targets, each with one or more logical units.
	  Defaults to one of each, creating a small RAM disk device. Many
	  parameters found in the /sys/bus/pseudo/drivers/scsi_debug
	  directory can be tweaked at run time.
	  See <http://sg.danny.cz/sg/sdebug26.html> for more information.
	  Mainly used for testing and best as a module. If unsure, say N.

config CONFIG_SCSI_MESH
	tristate "MESH (Power Mac internal SCSI) support"
	depends on CONFIG_PPC32 && CONFIG_PPC_PMAC && CONFIG_SCSI
	help
	  Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
	  CONFIG_SCSI Hardware) CONFIG_SCSI bus adaptor (the 7200 doesn't, but all of the
	  other Power Macintoshes do). Say Y to include support for this CONFIG_SCSI
	  adaptor.

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

config CONFIG_SCSI_MESH_SYNC_RATE
	int "maximum synchronous transfer rate (MB/s) (0 = async)"
	depends on CONFIG_SCSI_MESH
	default "5"
	help
	  On Power Macintoshes (and clones) where the MESH CONFIG_SCSI bus adaptor
	  drives a bus which is entirely internal to the machine (such as the
	  7500, 7600, 8500, etc.), the MESH is capable of synchronous
	  operation at up to 10 MB/s. On machines where the CONFIG_SCSI bus
	  controlled by the MESH can have external devices connected, it is
	  usually rated at 5 MB/s. 5 is a safe value here unless you know the
	  MESH CONFIG_SCSI bus is internal only; in that case you can say 10. Say 0
	  to disable synchronous operation.

config CONFIG_SCSI_MESH_RESET_DELAY_MS
	int "initial bus reset delay (ms) (0 = no reset)"
	depends on CONFIG_SCSI_MESH
	default "4000"

config CONFIG_SCSI_MAC53C94
	tristate "53C94 (Power Mac external SCSI) support"
	depends on CONFIG_PPC32 && CONFIG_PPC_PMAC && CONFIG_SCSI
	help
	  On Power Macintoshes (and clones) with two CONFIG_SCSI buses, the external
	  CONFIG_SCSI bus is usually controlled by a 53C94 CONFIG_SCSI bus adaptor. Older
	  machines which only have one CONFIG_SCSI bus, such as the 7200, also use
	  the 53C94. Say Y to include support for the 53C94.

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

source "drivers/scsi/arm/Kconfig"

config CONFIG_JAZZ_ESP
	bool "MIPS JAZZ FAS216 SCSI support"
	depends on CONFIG_MACH_JAZZ && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  This is the driver for the onboard CONFIG_SCSI host adapter of CONFIG_MIPS Magnum
	  4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
	  systems.

config CONFIG_A3000_SCSI
	tristate "A3000 WD33C93A support"
	depends on CONFIG_AMIGA && CONFIG_SCSI
	help
	  If you have an Amiga 3000 and have CONFIG_SCSI devices connected to the
	  built-in CONFIG_SCSI controller, say Y. Otherwise, say N.

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

config CONFIG_A2091_SCSI
	tristate "A2091/A590 WD33C93A support"
	depends on CONFIG_ZORRO && CONFIG_SCSI
	help
	  If you have a Commodore A2091 CONFIG_SCSI controller, say Y. Otherwise,
	  say N.

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

config CONFIG_GVP11_SCSI
	tristate "GVP Series II WD33C93A support"
	depends on CONFIG_ZORRO && CONFIG_SCSI
	---help---
	  If you have a Great Valley Products Series II CONFIG_SCSI controller,
	  answer Y. Also say Y if you have a later model of GVP CONFIG_SCSI
	  controller (such as the GVP A4008 or a Combo board). Otherwise,
	  answer N. This driver does NOT work for the T-Rex series of
	  accelerators from TekMagic and GVP-CONFIG_M.

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

config CONFIG_SCSI_A4000T
	tristate "A4000T NCR53c710 SCSI support"
	depends on CONFIG_AMIGA && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  If you have an Amiga 4000T and have CONFIG_SCSI devices connected to the
	  built-in CONFIG_SCSI controller, say Y. Otherwise, say N.

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

config CONFIG_SCSI_ZORRO7XX
	tristate "Zorro NCR53c710 SCSI support"
	depends on CONFIG_ZORRO && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  Support for various NCR53c710-based CONFIG_SCSI controllers on Zorro
	  expansion boards for the Amiga.
	  This includes:
	    - the Amiga 4091 Zorro III CONFIG_SCSI-2 controller,
	    - the MacroSystem Development's WarpEngine Amiga CONFIG_SCSI-2 controller
	      (info at
	      <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
	    - the CONFIG_SCSI controller on the Phase5 Blizzard PowerUP 603e+
	      accelerator card for the Amiga 1200,
	    - the CONFIG_SCSI controller on the GVP Turbo 040/060 accelerator.

config CONFIG_SCSI_ZORRO_ESP
	tristate "Zorro ESP SCSI support"
	depends on CONFIG_ZORRO && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	select CONFIG_SCSI_ESP_PIO
	help
	  Support for various NCR53C9x (ESP) based CONFIG_SCSI controllers on Zorro
	  expansion boards for the Amiga.
	  This includes:
	    - the Phase5 Blizzard 1230 II and IV CONFIG_SCSI controllers,
	    - the Phase5 Blizzard 2060 CONFIG_SCSI controller,
	    - the Phase5 Blizzard Cyberstorm and Cyberstorm II CONFIG_SCSI
	      controllers,
	    - the Fastlane Zorro III CONFIG_SCSI controller.

config CONFIG_ATARI_SCSI
	tristate "Atari native SCSI support"
	depends on CONFIG_ATARI && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	---help---
	  If you have an Atari with built-in NCR5380 CONFIG_SCSI controller (TT,
	  Falcon, ...) say Y to get it supported. Of course also, if you have
	  a compatible CONFIG_SCSI controller (e.g. for Medusa).

	  To compile this driver as a module, choose CONFIG_M here: the module will
	  be called atari_scsi. If you also enable CONFIG_NVRAM support, the CONFIG_SCSI
	  host's ID is taken from the setting in TT CONFIG_RTC CONFIG_NVRAM.

	  This driver supports both styles of NCR integration into the
	  system: the TT style (separate DMA), and the Falcon style (via
	  ST-DMA, replacing ACSI).  It does NOT support other schemes, like
	  in the Hades (without DMA).

config CONFIG_MAC_SCSI
	tristate "Macintosh NCR5380 SCSI"
	depends on CONFIG_MAC && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  This is the NCR 5380 CONFIG_SCSI controller included on most of the 68030
	  based Macintoshes.  If you have one of these say Y and read the
	  CONFIG_SCSI-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

config CONFIG_SCSI_MAC_ESP
	tristate "Macintosh NCR53c9[46] SCSI"
	depends on CONFIG_MAC && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	select CONFIG_SCSI_ESP_PIO
	help
	  This is the NCR 53c9x CONFIG_SCSI controller found on most of the 68040
	  based Macintoshes.

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

config CONFIG_MVME147_SCSI
	bool "WD33C93 SCSI driver for MVME147"
	depends on CONFIG_MVME147 && CONFIG_SCSI=y
	select CONFIG_SCSI_SPI_ATTRS
	help
	  Support for the on-board CONFIG_SCSI controller on the Motorola CONFIG_MVME147
	  single-board computer.

config CONFIG_MVME16x_SCSI
	tristate "NCR53C710 SCSI driver for MVME16x"
	depends on CONFIG_MVME16x && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
	  CONFIG_SCSI controller chip.  Almost everyone using one of these boards
	  will want to say Y to this question.

config CONFIG_BVME6000_SCSI
	tristate "NCR53C710 SCSI driver for BVME6000"
	depends on CONFIG_BVME6000 && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  The BVME4000 and CONFIG_BVME6000 boards from BVM Ltd use the NCR53C710
	  CONFIG_SCSI controller chip.  Almost everyone using one of these boards
	  will want to say Y to this question.

config CONFIG_SUN3_SCSI
	tristate "Sun3 NCR5380 SCSI"
	depends on CONFIG_SUN3 && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  This option will enable support for the OBIO (onboard io) NCR5380
	  CONFIG_SCSI controller found in the Sun 3/50 and 3/60, as well as for
	  "Sun3" type CONFIG_VME scsi controllers also based on the NCR5380.
	  General Linux information on the Sun 3 series (now discontinued)
	  is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.

config CONFIG_SUN3X_ESP
	bool "Sun3x ESP SCSI"
	depends on CONFIG_SUN3X && CONFIG_SCSI=y
	select CONFIG_SCSI_SPI_ATTRS
	help
	  The ESP was an on-board CONFIG_SCSI controller used on Sun 3/80
	  machines.  Say Y here to compile in support for it.

config CONFIG_SCSI_SUNESP
	tristate "Sparc ESP Scsi Driver"
	depends on CONFIG_SBUS && CONFIG_SCSI
	select CONFIG_SCSI_SPI_ATTRS
	help
	  This is the driver for the Sun ESP CONFIG_SCSI host adapter. The ESP
	  chipset is present in most CONFIG_SPARC CONFIG_SBUS-based computers and
	  supports the Emulex family of ESP CONFIG_SCSI chips (esp100, esp100A,
	  esp236, fas101, fas236) as well as the Qlogic fas366 CONFIG_SCSI chip.

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

config CONFIG_ZFCP
	tristate "FCP host bus adapter driver for IBM eServer zSeries"
	depends on CONFIG_S390 && CONFIG_QDIO && CONFIG_SCSI
	depends on CONFIG_SCSI_FC_ATTRS
	help
          If you want to access CONFIG_SCSI devices attached to your IBM eServer
          zSeries by means of Fibre Channel interfaces say Y.
          For details please refer to the documentation provided by IBM at
          <http://oss.software.ibm.com/developerworks/opensource/linux390>

          This driver is also available as a module. This module will be
          called zfcp. If you want to compile it as a module, say CONFIG_M here
          and read <file:Documentation/kbuild/modules.rst>.

config CONFIG_SCSI_PMCRAID
	tristate "PMC SIERRA Linux MaxRAID adapter support"
	depends on CONFIG_PCI && CONFIG_SCSI && CONFIG_NET
	select CONFIG_SGL_ALLOC
	---help---
	  This driver supports the PMC SIERRA MaxRAID adapters.

config CONFIG_SCSI_PM8001
	tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver"
	depends on CONFIG_PCI && CONFIG_SCSI
	select CONFIG_SCSI_SAS_LIBSAS
	help
	  This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip
	  based host adapters.

config CONFIG_SCSI_BFA_FC
	tristate "Brocade BFA Fibre Channel Support"
	depends on CONFIG_PCI && CONFIG_SCSI
	depends on CONFIG_SCSI_FC_ATTRS
	help
	  This bfa driver supports all Brocade PCIe FC/CONFIG_FCOE host adapters.

	  To compile this driver as a module, choose CONFIG_M here. The module will
	  be called bfa.

config CONFIG_SCSI_VIRTIO
	tristate "virtio-scsi support"
	depends on CONFIG_VIRTIO
	help
          This is the virtual HBA driver for virtio.  If the kernel will
          be used in a virtual machine, say Y or CONFIG_M.

source "drivers/scsi/csiostor/Kconfig"

source "drivers/scsi/pcmcia/Kconfig"

endif # CONFIG_SCSI_LOWLEVEL

source "drivers/scsi/device_handler/Kconfig"

endmenu