Skip to contentSkip to conversation

MIPS: PCI: xtalk-bridge: disable byte swapping for SGI RAD1

PATCH New Imre Kaloz 1 participant 1 message Oct 26 MIPS

lore
Share & tools
lore

Imre Kaloz

author
#0 lore raw

PATCH 1/1 MIPS: PCI: xtalk-bridge: disable byte swapping for SGI RAD1

The RAD1 audio DMA engine moves big-endian sample words. With the Bridge byte swap left on for its slot, captured samples arrive byte-reversed and playback feeds the DACs scrambled words.

---
 arch/mips/pci/pci-xtalk-bridge.c | 3 +++
 1 file changed, 3 insertions(+)
arch/mips/pci/pci-xtalk-bridge.c +3 -0
index cf115abb54e0..1072e70bcd42 100644
@@ -105,6 +105,9 @@ static void bridge_disable_swapping(struct pci_dev *dev)
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SGI, PCI_DEVICE_ID_SGI_IOC3,
 	bridge_disable_swapping);
 
+/* The RAD1 audio DMA engine transfers its sample words big-endian. */
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SGI, 0x0005, bridge_disable_swapping);
+
 
 /*
  * The Bridge ASIC supports both type 0 and type 1 access.  Type 1 is
Signature · 1 line
2.47.3