summaryrefslogtreecommitdiffstats
path: root/sys/mips/rmi/pic.h
diff options
context:
space:
mode:
authorrrs <rrs@FreeBSD.org>2010-05-16 19:43:48 +0000
committerrrs <rrs@FreeBSD.org>2010-05-16 19:43:48 +0000
commit8ea4ab29a0e5c107b9aa81880eb890891c9eddcc (patch)
treef9290edd49051e8d01267722df09887131e2820c /sys/mips/rmi/pic.h
parent862dd3e32604da80d67e56a2e31e84c205bf88d3 (diff)
downloadFreeBSD-src-8ea4ab29a0e5c107b9aa81880eb890891c9eddcc.zip
FreeBSD-src-8ea4ab29a0e5c107b9aa81880eb890891c9eddcc.tar.gz
This pushes all of JC's patches that I have in place. I
am now able to run 32 cores ok.. but I still will hang on buildworld with a NFS problem. I suspect I am missing a patch for the netlogic rge driver. JC check and see if I am missing anything except your core-mask changes Obtained from: JC
Diffstat (limited to 'sys/mips/rmi/pic.h')
-rw-r--r--sys/mips/rmi/pic.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/mips/rmi/pic.h b/sys/mips/rmi/pic.h
index fd7ffc6..05d2741 100644
--- a/sys/mips/rmi/pic.h
+++ b/sys/mips/rmi/pic.h
@@ -281,4 +281,16 @@ pic_delayed_ack(int irq, int haslock)
}
}
+static inline
+void pic_send_ipi(int cpu, int ipi, int haslock)
+{
+ xlr_reg_t *mmio = xlr_io_mmio(XLR_IO_PIC_OFFSET);
+ int tid, pid;
+
+ tid = cpu & 0x3;
+ pid = (cpu >> 2) & 0x7;
+
+ xlr_write_reg(mmio, PIC_IPI, (pid << 20) | (tid << 16) | ipi);
+}
+
#endif /* _RMI_PIC_H_ */
OpenPOWER on IntegriCloud