Re: [RFC PATCH] Fix Intel IOMMU support for Marvell 88SE91xx SATA controllers.

From: Andrew Cooks
Date: Wed Dec 19 2012 - 10:34:41 EST


On Wed, Dec 19, 2012 at 9:41 PM, Chu Ying <gm.ychu@xxxxxxxxx> wrote:
> On 2012-12-19, at 18:58, Andrew Cooks <acooks@xxxxxxxxx> wrote:
>
>> This is my second attempt to make Marvell 88SE91xx SATA controllers work when IOMMU is enabled.[1][2]
>> +static const struct pci_dev_dma_source_funcs {
>> + u16 vendor;
>> + u16 device;
>> + u8 func_map; /* bit map. lsb is fn 0. */
>> +} pci_dev_dma_source_funcs[] = {
>> + {0x1b4b, 0x9172, (1<<0)|(1<<1)},
>> + { 0 },
>> +};
>
> Can you confirm function 0 should be marked? Per my PCIe trace, I found no function 0 involved in DMA access?
>

Yes. The attached patch disables function 0 for the 0x9172 device. The
attached dmesg output shows the resulting change at time 1.920163 and
fault at time 2.265757.

Attachment: dmesg_iommu_on_func_1_only.gz
Description: GNU Zip compressed data

Attachment: func_1_only.patch
Description: Binary data