f8948cf515ce3936bb7dc859b555a3a28b59f08b
[linux-2.6-block.git] / drivers / ntb / hw / idt / Kconfig
1 config NTB_IDT
2         tristate "IDT PCIe-switch Non-Transparent Bridge support"
3         depends on PCI
4         select HWMON
5         help
6          This driver supports NTB of cappable IDT PCIe-switches.
7
8          Some of the pre-initializations must be made before IDT PCIe-switch
9          exposes it NT-functions correctly. It should be done by either proper
10          initialisation of EEPROM connected to master smbus of the switch or
11          by BIOS using slave-SMBus interface changing corresponding registers
12          value. Evidently it must be done before PCI bus enumeration is
13          finished in Linux kernel.
14
15          First of all partitions must be activated and properly assigned to all
16          the ports with NT-functions intended to be activated (see SWPARTxCTL
17          and SWPORTxCTL registers). Then all NT-function BARs must be enabled
18          with chosen valid aperture. For memory windows related BARs the
19          aperture settings shall determine the maximum size of memory windows
20          accepted by a BAR. Note that BAR0 must map PCI configuration space
21          registers.
22
23          It's worth to note, that since a part of this driver relies on the
24          BAR settings of peer NT-functions, the BAR setups can't be done over
25          kernel PCI fixups. That's why the alternative pre-initialization
26          techniques like BIOS using SMBus interface or EEPROM should be
27          utilized.
28
29          If unsure, say N.
30