Update of /cvsroot/linux-vax/kernel-2.5/include/asm-vax/bus
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7464/include/asm-vax/bus
Modified Files:
vsbus.h
Log Message:
Move all the current VSBUS code into drivers/vax/bus/vsbus. I'm not
moving the irq auto-probe code since no working driver uses it at the
moment. I'm very reluctant to resurrect the autoprobe code. I'm
convinced that we can avoid autoprobing by find out where the interrupt
vector lookup tables are stored on all the newer machines.
Index: vsbus.h
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.5/include/asm-vax/bus/vsbus.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- vsbus.h 10 May 2004 23:20:34 -0000 1.1
+++ vsbus.h 18 Sep 2004 23:06:34 -0000 1.2
@@ -6,6 +6,30 @@
#include <asm/dma.h>
#include <linux/device.h>
+struct vsbus_registers {
+ unsigned long vs_hltcod;
+ unsigned long vc_410msr;
+ unsigned long vc_410cear; /* VS2K */
+ unsigned char vc_intmsk; /* Interrupt mask register */
+ unsigned char vc_vdcorg; /* Mono display origin */
+ unsigned char vc_vdcsel; /* Video interrupt select */
+ unsigned char vc_intreq; /* Interrupt request register */
+#define vc_intclr vc_intreq
+ unsigned short vc_diagdsp;
+ unsigned short pad4;
+ unsigned long vc_parctl;
+#define vc_bwf0 vc_parctl
+ unsigned short pad5;
+ unsigned short pad6;
+ unsigned short vc_diagtimu;
+ unsigned short vc_diagtme;
+#define vc_diagtimm vc_diagtme
+};
+
+#define VSA_CLOCK_BASE 0x200b0000
+#define VSA_BASE_REGS 0x20080000
+#define VSA_KA55_BASE_REGS 0x25c00000
+
/* Driver model support */
extern struct bus_type vsbus_bus_type;
@@ -43,11 +67,12 @@
void vsbus_add_fixed_device(struct device *parent, char *name,
unsigned int phys_base, unsigned int irqindex);
-
/* To keep things a bit simpler, and because all the machines fit this
- requirement, we only allow one VSBUS adapter to exist in the system. */
+ requirement, we only allow one VSBUS adapter to exist in the system,
+ so this function can only be called once. The hardware-specific
+ VSBUS adapter drivers call this at init time. */
-extern unsigned int vsbus_rom_vectors[8];
+int init_vsbus_adapter(unsigned int *vectors, unsigned long registers);
#endif /* __VAX_BUS_VSBUS_H */
|