freebsd-dev/sys/powerpc/ps3
Nathan Whitehorn 0c50edff52 Repair some races in IPI handling:
1. Make sure IPI mask is set before sending the IPI
2. Operate atomically on PS3 PIC outstanding interrupt list
3. Make sure IPIs are EOI'ed before, not after, processing. Without this,
   a second IPI could be sent partway through processing the first one,
   get erroneously acknowledge by the EOI to the first, and be lost. In
   particular in the case of smp_rendezvous(), this can be fatal.

In combination, this makes the PS3 boot SMP again. It probably also fixes
some latent bugs elsewhere.

MFC after:	2 weeks
2014-05-12 02:56:27 +00:00
..
ehci_ps3.c Implement better support for USB controller suspend and resume. 2011-12-14 00:28:54 +00:00
if_glc.c - Provide necessary includes. 2013-10-29 11:17:49 +00:00
if_glcreg.h
mmu_ps3.c Merge from vmobj-rwlock branch: 2013-02-26 01:00:11 +00:00
ohci_ps3.c Implement better support for USB controller suspend and resume. 2011-12-14 00:28:54 +00:00
platform_ps3.c Rearchitect platform memory map parsing to make it less 2013-12-01 19:43:15 +00:00
ps3_syscons.c Move the PS3 framebuffer console to use vt instead of syscons and adjust 2014-05-11 05:49:35 +00:00
ps3-hv-asm.awk Add version header to output file. 2011-12-18 16:53:03 +00:00
ps3-hv-header.awk
ps3-hvcall.h Support infrastructure for X11 on PS3. 2011-12-18 16:53:21 +00:00
ps3-hvcall.master Support infrastructure for X11 on PS3. 2011-12-18 16:53:21 +00:00
ps3-hvcall.S Support infrastructure for X11 on PS3. 2011-12-18 16:53:21 +00:00
ps3bus.c Fix interrupt allocation after changes to nexus. This makes PS3 boot 2014-05-11 16:49:31 +00:00
ps3bus.h Driver for PS3's internal hard disk. Hopefully this can be CAM-ified in 2011-06-20 00:17:44 +00:00
ps3cdrom.c Changes to CAM or busdma have caused SIMs to be sent 0-length CCBs on 2013-09-29 20:10:22 +00:00
ps3disk.c Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
ps3pic.c Repair some races in IPI handling: 2014-05-12 02:56:27 +00:00