Add DMA support for audio function of Glenfly arise chip, which uses request id of function 0. Signed-off-by: SiyuLi <siyuli@xxxxxxxxxxx> Signed-off-by: WangYuli <wangyuli@xxxxxxxxxxxxx> --- drivers/pci/quirks.c | 6 ++++++ include/linux/pci_ids.h | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index a2ce4e08edf5..a6cb8b314fae 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -4246,6 +4246,12 @@ static void quirk_dma_func0_alias(struct pci_dev *dev) DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_RICOH, 0xe832, quirk_dma_func0_alias); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_RICOH, 0xe476, quirk_dma_func0_alias); +/* + * Some Glenfly chips use function 0 as the PCIe requester ID for DMA too. + */ +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_GLENFLY, PCI_DEVICE_ID_GLENFLY_ARISE10C0_AUDIO, quirk_dma_func0_alias); +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_GLENFLY, PCI_DEVICE_ID_GLENFLY_ARISE1020_AUDIO, quirk_dma_func0_alias); + static void quirk_dma_func1_alias(struct pci_dev *dev) { if (PCI_FUNC(dev->devfn) != 1) diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index e388c8b1cbc2..35d2314cc433 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -1654,6 +1654,10 @@ #define PCI_DEVICE_ID_RICOH_R5C832 0x0832 #define PCI_DEVICE_ID_RICOH_R5C843 0x0843 +#define PCI_VENDOR_ID_GLENFLY 0x6766 +#define PCI_DEVICE_ID_GLENFLY_ARISE10C0_AUDIO 0x3D40 +#define PCI_DEVICE_ID_GLENFLY_ARISE1020_AUDIO 0x3D41 + #define PCI_VENDOR_ID_DLINK 0x1186 #define PCI_DEVICE_ID_DLINK_DGE510T 0x4c00 -- 2.43.4