Update of /cvsroot/linux-mips/linux/include/asm-mips/rc32300
In directory usw-pr-cvs1:/tmp/cvs-serv9531
Modified Files:
rc32300.h
Log Message:
H/W PCI byte-swapping on the RC32334 does not work - disable and
use s/w swapping instead (CONFIG_SWAP_IO_SPACE).
Index: rc32300.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips/rc32300/rc32300.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- rc32300.h 2002/01/17 21:06:46 1.2
+++ rc32300.h 2002/01/24 20:13:54 1.3
@@ -59,6 +59,44 @@
}
/*
+ * Macros to access internal RC32300 registers. No byte
+ * swapping should be done when accessing the internal
+ * registers.
+ */
+static inline u8 rc32300_inb(unsigned long pa)
+{
+ return *((volatile u8 *)(mips_io_port_base + pa));
+}
+static inline u16 rc32300_inw(unsigned long pa)
+{
+ return *((volatile u16 *)(mips_io_port_base + pa));
+}
+static inline u32 rc32300_inl(unsigned long pa)
+{
+ return *((volatile u32 *)(mips_io_port_base + pa));
+}
+static inline void rc32300_outb(u8 val, unsigned long pa)
+{
+ *((volatile u8 *)(mips_io_port_base + pa)) = val;
+}
+static inline void rc32300_outw(u16 val, unsigned long pa)
+{
+ *((volatile u16 *)(mips_io_port_base + pa)) = val;
+}
+static inline void rc32300_outl(u32 val, unsigned long pa)
+{
+ *((volatile u32 *)(mips_io_port_base + pa)) = val;
+}
+static inline u32 rc32300_readl(unsigned long va)
+{
+ return *((volatile u32 *)va);
+}
+static inline void rc32300_writel(u32 val, unsigned long va)
+{
+ *((volatile u32 *)va) = val;
+}
+
+/*
* C access to CLZ and CLO instructions
* (count leading zeroes/ones).
*/
|