summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2009-10-14 20:18:27 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2009-10-14 20:18:27 +0000
commit1a77f021b7c03d7faa5782b61acae3109fb4a6db (patch)
tree77124decac83e3aeb4b40f2fc45c1d8820045ad3 /sys/arch
parent51aed6c8450eb64de8050c8e63d6d39e005643ab (diff)
Add some comments to explain why the DMA32 physseg is really 2**31 bytes
long. Prompted by deraadt@ long ago.
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/sgi/include/vmparam.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/sys/arch/sgi/include/vmparam.h b/sys/arch/sgi/include/vmparam.h
index 33f33aa2ff2..a55866983c4 100644
--- a/sys/arch/sgi/include/vmparam.h
+++ b/sys/arch/sgi/include/vmparam.h
@@ -1,12 +1,23 @@
-/* $OpenBSD: vmparam.h,v 1.3 2009/05/08 18:42:04 miod Exp $ */
-
+/* $OpenBSD: vmparam.h,v 1.4 2009/10/14 20:18:26 miod Exp $ */
+/* public domain */
#ifndef _SGI_VMPARAM_H_
#define _SGI_VMPARAM_H_
#define VM_PHYSSEG_MAX 32 /* Max number of physical memory segments */
+/*
+ * On Origin and Octane families, DMA to 32-bit PCI devices is restricted.
+ *
+ * Systems with physical memory after the 2GB boundary needs to ensure
+ * memory which may used for DMA transfers is allocated from the low
+ * memory range.
+ *
+ * Other systems, like the O2, do not have such a restriction, but can not
+ * have more than 2GB of physical memory, so this doesn't affect them.
+ */
+
#define VM_NFREELIST 2
-#define VM_FREELIST_DMA32 1 /* memory under 2GB suitable for DMA */
+#define VM_FREELIST_DMA32 1 /* memory suitable for 32-bit DMA */
#include <mips64/vmparam.h>