mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/4] MIPS: sgi-ip32: CRIME 1.1 and MACE PCI fixes
@ 2026-10-21 19:24 Imre Kaloz
  2026-10-21 19:24 ` [PATCH 1/4] MIPS: sgi-ip32: Mask MACE PCI interrupts in CRIME only Imre Kaloz
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Imre Kaloz @ 2026-10-21 19:24 UTC (permalink / raw)
  To: Thomas Bogendoerfer, linux-mips; +Cc: linux-kernel

This series fixes hangs and stale PIO reads on SGI O2 machines with a
CRIME 1.1 memory controller.

Patches 1-2 stop the MACE PCI code from issuing a bridge register
sequence that hangs the machine under DMA load: slot interrupts are
masked in CRIME and the bridge control register is left alone at run
time, as IRIX, OpenBSD and NetBSD do.

Patch 3 reports the real CRIME revision, which the current code
reads as 1 on both 1.1 and 1.4. Patch 4 fences PIO reads on CRIME
1.1, where a read that follows an aic7880 status register read within
a few microseconds returns stale data; the fence stays off on 1.4.

Patches 1-2 are independent of 3-4 and are marked for stable.

Tested on O2 systems with CRIME 1.1 and 1.4.

Imre Kaloz (4):
  MIPS: sgi-ip32: Mask MACE PCI interrupts in CRIME only
  MIPS: sgi-ip32: Leave MACE PCI control alone in config accesses
  MIPS: sgi-ip32: Report the real CRIME revision
  MIPS: sgi-ip32: Fence PIO reads on CRIME 1.1

 arch/mips/include/asm/io.h                    | 11 +++++
 arch/mips/include/asm/ip32/crime.h            |  2 +-
 .../include/asm/mach-generic/read-fence.h     | 20 +++++++++
 arch/mips/include/asm/mach-ip32/read-fence.h  | 29 ++++++++++++
 arch/mips/pci/ops-mace.c                      | 26 ++++++++---
 arch/mips/pci/pci-ip32.c                      |  9 +++-
 arch/mips/sgi-ip32/crime.c                    | 38 +++++++++++++---
 arch/mips/sgi-ip32/ip32-irq.c                 | 45 ++-----------------
 8 files changed, 123 insertions(+), 57 deletions(-)
 create mode 100644 arch/mips/include/asm/mach-generic/read-fence.h
 create mode 100644 arch/mips/include/asm/mach-ip32/read-fence.h


base-commit: 24a19b953e2a3d0ea5a8c4951a0ab8f32720c907
-- 
2.47.3


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-10-21 19:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-21 19:24 [PATCH 0/4] MIPS: sgi-ip32: CRIME 1.1 and MACE PCI fixes Imre Kaloz
2026-10-21 19:24 ` [PATCH 1/4] MIPS: sgi-ip32: Mask MACE PCI interrupts in CRIME only Imre Kaloz
2026-10-21 19:24 ` [PATCH 2/4] MIPS: sgi-ip32: Leave MACE PCI control alone in config accesses Imre Kaloz
2026-10-21 19:24 ` [PATCH 3/4] MIPS: sgi-ip32: Report the real CRIME revision Imre Kaloz
2026-10-21 19:24 ` [PATCH 4/4] MIPS: sgi-ip32: Fence PIO reads on CRIME 1.1 Imre Kaloz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®