1. 05 7月, 2015 8 次提交
  2. 02 7月, 2015 1 次提交
  3. 11 6月, 2015 1 次提交
  4. 09 6月, 2015 1 次提交
  5. 07 5月, 2015 1 次提交
  6. 17 10月, 2014 5 次提交
  7. 08 4月, 2014 6 次提交
  8. 21 11月, 2013 6 次提交
  9. 06 9月, 2013 7 次提交
    • Y
      ntb: clean up unnecessary MSI/MSI-X capability find · 73f47cad
      Yijing Wang 提交于
      PCI core will initialize device MSI/MSI-X capability in
      pci_msi_init_pci_dev(). So device driver should use
      pci_dev->msi_cap/msix_cap to determine whether the device
      support MSI/MSI-X instead of using
      pci_find_capability(pci_dev, PCI_CAP_ID_MSI/MSIX).
      Access to PCIe device config space again will consume more time.
      Signed-off-by: NYijing Wang <wangyijing@huawei.com>
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      73f47cad
    • J
      NTB: Update Version · db3bb3f0
      Jon Mason 提交于
      Update NTB version to 1.0
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      db3bb3f0
    • J
      NTB: Comment Fix · f9a2cf89
      Jon Mason 提交于
      Add "data" ntb_register_db_callback parameter description comment and
      correct poor spelling.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      f9a2cf89
    • J
      NTB: Remove References of non-B2B BWD HW · b1ef0043
      Jon Mason 提交于
      NTB-RP is not a supported configuration on BWD hardware.  Remove the
      code attempting to set it up.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      b1ef0043
    • J
      NTB: NTB-RP support · ed6c24ed
      Jon Mason 提交于
      Add support for Non-Transparent Bridge connected to a PCI-E Root Port on
      the remote system (also known as NTB-RP mode).  This allows for a NTB
      enabled system to be connected to a non-NTB enabled system/slot.
      
      Modifications to the registers and BARs/MWs on the Secondary side by the
      remote system are reflected into registers on the Primary side for the
      local system.  Similarly, modifications of registers and BARs/MWs on
      Primary side by the local system are reflected into registers on the
      Secondary side for the Remote System.  This allows communication between
      the 2 sides via these registers and BARs/MWs.
      
      Note: there is not a fix for the Xeon Errata (that was already worked
      around in NTB-B2B mode) for NTB-RP mode.  Due to this limitation, NTB-RP
      will not work on the Secondary side with the Xeon Errata workaround
      enabled.  To get around this, disable the workaround via the
      xeon_errata_workaround=0 modparm.  However, this can cause the hang
      described in the errata.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      ed6c24ed
    • J
      NTB: Rename Variables for NTB-RP · 49793889
      Jon Mason 提交于
      Many variable names in the NTB driver refer to the primary or secondary
      side.  However, these variables will be used to access the reverse case
      when in NTB-RP mode.  Make these names more generic in anticipation of
      NTB-RP support.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      49793889
    • J
      NTB: Use DMA Engine to Transmit and Receive · 282a2fee
      Jon Mason 提交于
      Allocate and use a DMA engine channel to transmit and receive data over
      NTB.  If none is allocated, fall back to using the CPU to transfer data.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      Reviewed-by: NDan Williams <dan.j.williams@intel.com>
      Reviewed-by: NDave Jiang <dave.jiang@intel.com>
      282a2fee
  10. 04 9月, 2013 4 次提交
    • J
      NTB: Enable 32bit Support · ac477afb
      Jon Mason 提交于
      Correct the issues on NTB that prevented it from working on x86_32 and
      modify the Kconfig to allow it to be permitted to be used in that
      environment as well.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      ac477afb
    • J
      NTB: Update Device IDs · be4dac0f
      Jon Mason 提交于
      Add support for new Intel NTB devices on upcoming Xeon hardware.  Since
      the Xeon hardware design is already in place in the driver, all that is
      needed are the new device ids.
      
      Remove the device IDs for NTB devs running in Transparent Bridge mode,
      as this driver is not being used for those devices.
      
      Rename the device IDs for NTB devs running in NTB-RP mode to better
      identify their usage model.  "PS" to denote the Primary Side of NTB, and
      "SS" to denote the secondary side.  The primary side is the interface
      exposed to the local system, and the secondary side is the interface
      exposed to the remote system.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      be4dac0f
    • J
      NTB: BWD Link Recovery · 113bf1c9
      Jon Mason 提交于
      The BWD NTB device will drop the link if an error is encountered on the
      point-to-point PCI bridge.  The link will stay down until all errors are
      cleared and the link is re-established.  On link down, check to see if
      the error is detected, if so do the necessary housekeeping to try and
      recover from the error and reestablish the link.
      
      There is a potential race between the 2 NTB devices recovering at the
      same time.  If the times are synchronized, the link will not recover and the
      driver will be stuck in this loop forever.  Add a random interval to the
      recovery time to prevent this race.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      113bf1c9
    • J
      NTB: Xeon Errata Workaround · 948d3a65
      Jon Mason 提交于
      There is a Xeon hardware errata related to writes to SDOORBELL or
      B2BDOORBELL in conjunction with inbound access to NTB MMIO Space, which
      may hang the system.  To workaround this issue, use one of the memory
      windows to access the interrupt and scratch pad registers on the remote
      system.  This bypasses the issue, but removes one of the memory windows
      from use by the transport.  This reduction of MWs necessitates adding
      some logic to determine the number of available MWs.
      
      Since some NTB usage methodologies may have unidirectional traffic, the
      ability to disable the workaround via modparm has been added.
      
      See BF113 in
      http://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/xeon-c5500-c3500-spec-update.pdf
      See BT119 in
      http://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/xeon-e5-family-spec-update.pdfSigned-off-by: NJon Mason <jon.mason@intel.com>
      948d3a65