linux/drivers/infiniband/hw/efa
Jason Gunthorpe e0477b34d9 RDMA: Explicitly pass in the dma_device to ib_register_device
The code in setup_dma_device has become rather convoluted, move all of
this to the drivers. Drives now pass in a DMA capable struct device which
will be used to setup DMA, or drivers must fully configure the ibdev for
DMA and pass in NULL.

Other than setting the masks in rvt all drivers were doing this already
anyhow.

mthca, mlx4 and mlx5 were already setting up maximum DMA segment size for
DMA based on their hardweare limits in:
__mthca_init_one()
  dma_set_max_seg_size (1G)

__mlx4_init_one()
  dma_set_max_seg_size (1G)

mlx5_pci_init()
  set_dma_caps()
    dma_set_max_seg_size (2G)

Other non software drivers (except usnic) were extended to UINT_MAX [1, 2]
instead of 2G as was before.

[1] https://lore.kernel.org/linux-rdma/20200924114940.GE9475@nvidia.com/
[2] https://lore.kernel.org/linux-rdma/20200924114940.GE9475@nvidia.com/

Link: https://lore.kernel.org/r/20201008082752.275846-1-leon@kernel.org
Link: https://lore.kernel.org/r/6b2ed339933d066622d5715903870676d8cc523a.1602590106.git.mchehab+huawei@kernel.org
Suggested-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Parav Pandit <parav@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
2020-10-16 13:53:46 -03:00
..
efa_admin_cmds_defs.h RDMA/efa: Add messages and RDMA read work requests HW stats 2020-09-22 20:21:11 -03:00
efa_admin_defs.h RDMA/efa: Unified getters/setters for device structs bitmask access 2020-02-28 12:12:04 -04:00
efa_com_cmd.c RDMA/efa: Add messages and RDMA read work requests HW stats 2020-09-22 20:21:11 -03:00
efa_com_cmd.h RDMA/efa: Add messages and RDMA read work requests HW stats 2020-09-22 20:21:11 -03:00
efa_com.c RDMA/efa: Count admin commands errors 2020-05-02 20:32:14 -03:00
efa_com.h RDMA/efa: Count admin commands errors 2020-05-02 20:32:14 -03:00
efa_common_defs.h RDMA/efa: Unified getters/setters for device structs bitmask access 2020-02-28 12:12:04 -04:00
efa_main.c RDMA: Explicitly pass in the dma_device to ib_register_device 2020-10-16 13:53:46 -03:00
efa_regs_defs.h RDMA/efa: Properly document the interrupt mask register 2020-02-28 12:12:12 -04:00
efa_verbs.c RDMA/efa: Drop double zeroing for sg_init_table() 2020-09-22 20:26:47 -03:00
efa.h RDMA/efa: Group keep alive received counter with other SW stats 2020-09-22 20:21:11 -03:00
Kconfig RDMA/efa: Add driver to Kconfig/Makefile 2019-05-07 12:47:47 -03:00
Makefile RDMA/efa: Add driver to Kconfig/Makefile 2019-05-07 12:47:47 -03:00