patch-2.4.20 linux-2.4.20/include/asm-parisc/gsc.h
Next file: linux-2.4.20/include/asm-parisc/hardirq.h
Previous file: linux-2.4.20/include/asm-parisc/grfioctl.h
Back to the patch index
Back to the overall index
- Lines: 81
- Date:
Thu Nov 28 15:53:15 2002
- Orig file:
linux-2.4.19/include/asm-parisc/gsc.h
- Orig date:
Wed Dec 6 11:46:39 2000
diff -urN linux-2.4.19/include/asm-parisc/gsc.h linux-2.4.20/include/asm-parisc/gsc.h
@@ -3,49 +3,17 @@
#ifdef __KERNEL__
#include <linux/types.h>
-#include <asm/hardware.h> /* for struct hp_device */
+#include <asm/io.h> /* temporary for __raw_{read,write} */
-/*
- * The convention used for inb/outb etc. is that names starting with
- * two underscores are the inline versions, names starting with a
- * single underscore are proper functions, and names starting with a
- * letter are macros that map in some way to inline or proper function
- * versions. Not all that pretty, but before you change it, be sure
- * to convince yourself that it won't break anything (in particular
- * module support).
+/* Please, call ioremap and use {read,write}[bwl] instead. These functions
+ * are not very fast.
*/
-extern u8 _gsc_readb(void *);
-extern u16 _gsc_readw(void *);
-extern u32 _gsc_readl(void *);
-extern u64 _gsc_readq(void *);
-extern void _gsc_writeb(u8, void *);
-extern void _gsc_writew(u16,void *);
-extern void _gsc_writel(u32,void *);
-extern void _gsc_writeq(u64,void *);
-
-#define gsc_readb(a) _gsc_readb((void *)(a))
-#define gsc_readw(a) _gsc_readw((void *)(a))
-#define gsc_readl(a) _gsc_readl((void *)(a))
-#define gsc_readq(a) _gsc_readq((void *)(a))
-#define gsc_writeb(v,a) _gsc_writeb((v),(void *)(a))
-#define gsc_writew(v,a) _gsc_writew((v),(void *)(a))
-#define gsc_writel(v,a) _gsc_writel((v),(void *)(a))
-#define gsc_writeq(v,a) _gsc_writeq((v),(void *)(a))
-
-struct gsc_dev {
- struct gsc_bus *bus; /* bus this device is on */
- struct gsc_dev *next; /* chain of all devices */
- struct gsc_dev *next_bus; /* chain of all devices on a bus */
- struct gsc_dev *next_submod; /* chain of all devices on a module */
-
- unsigned irq; /* irq generated by this device */
- void *hpa; /* hard physical address */
-
- u16 hversion;
- u8 spa; /* SPA requirements */
- u8 type;
- u32 sversion;
-};
+#define gsc_readb(x) __raw_readb((unsigned long)x)
+#define gsc_readw(x) __raw_readw((unsigned long)x)
+#define gsc_readl(x) __raw_readl((unsigned long)x)
+#define gsc_writeb(x, y) __raw_writeb(x, (unsigned long)y)
+#define gsc_writew(x, y) __raw_writew(x, (unsigned long)y)
+#define gsc_writel(x, y) __raw_writel(x, (unsigned long)y)
struct gsc_irq {
unsigned long txn_addr; /* IRQ "target" */
@@ -59,21 +27,7 @@
extern int gsc_alloc_irq(struct gsc_irq *dev); /* dev needs an irq */
extern int gsc_claim_irq(struct gsc_irq *dev, int irq); /* dev needs this irq */
-struct gsc_bus {
- void *hpa; /* HPA of device 0, function 0 of this bus */
-};
-
-/*
- * There is one gsc_dev structure for each slot-number/function-number
- * combination:
- */
-
-struct gsc_dev *gsc_find_device(u16 hversion, struct gsc_dev *from);
-
extern void probe_serial_gsc(void);
-/* returns a virtual irq for device at dev->hpa (works for all LASI/ASP/WAX) */
-extern int busdevice_alloc_irq( struct hp_device *dev );
-
#endif /* __KERNEL__ */
#endif /* LINUX_GSC_H */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)