android_kernel_xiaomi_sm8350/drivers/dma/ioat
Dan Williams 556ab45f9a ioat2: catch and recover from broken vtd configurations v6
On some platforms (MacPro3,1) the BIOS assigns the ioatdma device to the
incorrect iommu causing faults when the driver initializes.  Add a quirk
to catch this misconfiguration and try falling back to untranslated
operation (which works in the MacPro3,1 case).

Assuming there are other platforms with misconfigured iommus teach the
ioatdma driver to treat initialization failures as non-fatal (just fail
the driver load and emit a warning instead of triggering a BUG_ON).

This can be classified as a boot regression since 2.6.32 on affected
platforms since the ioatdma module did not autoload prior to that
kernel.

Cc: <stable@kernel.org>
Acked-by: David Woodhouse <David.Woodhouse@intel.com>
Reported-by: Chris Li <lkml@chrisli.org>
Tested-by: Chris Li <lkml@chrisli.org>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2010-08-04 14:18:17 -07:00
..
dca.c ioat3: dca and raid operations are incompatible 2009-11-19 17:07:10 -07:00
dma_v2.c ioat2: catch and recover from broken vtd configurations v6 2010-08-04 14:18:17 -07:00
dma_v2.h ioat2,3: convert to producer/consumer locking 2010-05-01 15:22:55 -07:00
dma_v3.c ioat2: catch and recover from broken vtd configurations v6 2010-08-04 14:18:17 -07:00
dma.c Merge branch 'ioat' into dmaengine 2010-05-17 16:30:58 -07:00
dma.h ioat2: catch and recover from broken vtd configurations v6 2010-08-04 14:18:17 -07:00
hw.h ioat3: dca and raid operations are incompatible 2009-11-19 17:07:10 -07:00
Makefile ioat3: split ioat3 support to its own file, add memset 2009-09-08 17:42:55 -07:00
pci.c ioat: Remove duplicated devm_kzalloc() calls for ioatdma_device 2010-05-02 12:52:35 -07:00
registers.h ioat3: interrupt coalescing 2010-03-03 21:21:13 -07:00