patch-2.0.34 linux/include/asm-alpha/lca.h
Next file: linux/include/asm-alpha/pal.h
Previous file: linux/include/asm-alpha/irq.h
Back to the patch index
Back to the overall index
- Lines: 74
- Date:
Wed Jun 3 15:17:49 1998
- Orig file:
v2.0.33/linux/include/asm-alpha/lca.h
- Orig date:
Thu Apr 11 23:49:44 1996
diff -u --recursive --new-file v2.0.33/linux/include/asm-alpha/lca.h linux/include/asm-alpha/lca.h
@@ -54,8 +54,18 @@
#include <asm/system.h>
+#ifdef CONFIG_ALPHA_SRM_SETUP
+/* if we are using the SRM PCI setup, we'll need to use variables instead */
+#define LCA_DMA_WIN_BASE_DEFAULT (1024*1024*1024)
+#define LCA_DMA_WIN_SIZE_DEFAULT (1024*1024*1024)
+
+extern unsigned int LCA_DMA_WIN_BASE;
+extern unsigned int LCA_DMA_WIN_SIZE;
+
+#else /* SRM_SETUP */
#define LCA_DMA_WIN_BASE (1024*1024*1024)
#define LCA_DMA_WIN_SIZE (1024*1024*1024)
+#endif /* SRM_SETUP */
/*
* Memory Controller registers:
@@ -130,6 +140,37 @@
#define HAE_ADDRESS LCA_IOC_HAE
+/* LCA PMR Power Management register defines */
+#define LCA_PMR_ADDR (IDENT_ADDR + 0x120000098UL)
+#define LCA_PMR_PDIV 0x7 /* Primary clock divisor */
+#define LCA_PMR_ODIV 0x38 /* Override clock divisor */
+#define LCA_PMR_INTO 0x40 /* Interrupt override */
+#define LCA_PMR_DMAO 0x80 /* DMA override */
+#define LCA_PMR_OCCEB 0xffff0000L /* Override cycle counter - even
+ bits */
+#define LCA_PMR_OCCOB 0xffff000000000000L /* Override cycle counter - even
+ bits */
+#define LCA_PMR_PRIMARY_MASK 0xfffffffffffffff8
+/* LCA PMR Macros */
+
+#define READ_PMR (*(volatile unsigned long *)LCA_PMR_ADDR)
+#define WRITE_PMR(d) (*((volatile unsigned long *)LCA_PMR_ADDR) = (d))
+
+#define GET_PRIMARY(r) ((r) & LCA_PMR_PDIV)
+#define GET_OVERRIDE(r) (((r) >> 3) & LCA_PMR_PDIV)
+#define SET_PRIMARY_CLOCK(r, c) ((r) = (((r) & LCA_PMR_PRIMARY_MASK) | (c)))
+
+/* LCA PMR Divisor values */
+#define DIV_1 0x0
+#define DIV_1_5 0x1
+#define DIV_2 0x2
+#define DIV_4 0x3
+#define DIV_8 0x4
+#define DIV_16 0x5
+#define DIV_MIN DIV_1
+#define DIV_MAX DIV_16
+
+
#ifdef __KERNEL__
/*
@@ -317,7 +358,6 @@
*/
struct el_lca_mcheck_short {
struct el_common h; /* common logout header */
- unsigned long reason; /* reason for machine check */
unsigned long esr; /* error-status register */
unsigned long ear; /* error-address register */
unsigned long dc_stat; /* dcache status register */
@@ -327,7 +367,7 @@
struct el_lca_mcheck_long {
struct el_common h; /* common logout header */
- unsigned long pt[32]; /* PAL temps (pt[0] is reason) */
+ unsigned long pt[31]; /* PAL temps */
unsigned long exc_addr; /* exception address */
unsigned long pad1[3];
unsigned long pal_base; /* PALcode base address */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov