PATCH: DRIVERNAME SUPPRESSED DUE TO KERNEL.ORG FILTER BUGS

From: Alan Cox (alan@lxorguk.ukuu.org.uk)
Date: Thu Mar 27 2003 - 13:24:57 EST


PC9800 uses different IDE i/o bases for legacy mode devices

(Osamu Tomita)

diff -u --new-file --recursive --exclude-from /usr/src/exclude linux-2.5.66-bk3/include/asm-i386/ide.h linux-2.5.66-ac1/include/asm-i386/ide.h
--- linux-2.5.66-bk3/include/asm-i386/ide.h 2003-03-27 17:13:28.000000000 +0000
+++ linux-2.5.66-ac1/include/asm-i386/ide.h 2003-03-14 01:19:57.000000000 +0000
@@ -26,6 +26,9 @@
 static __inline__ int ide_default_irq(unsigned long base)
 {
         switch (base) {
+#ifdef CONFIG_X86_PC9800
+ case 0x640: return 9;
+#endif
                 case 0x1f0: return 14;
                 case 0x170: return 15;
                 case 0x1e8: return 11;
@@ -40,12 +43,17 @@
 static __inline__ unsigned long ide_default_io_base(int index)
 {
         switch (index) {
+#ifdef CONFIG_X86_PC9800
+ case 0:
+ case 1: return 0x640;
+#else
                 case 0: return 0x1f0;
                 case 1: return 0x170;
                 case 2: return 0x1e8;
                 case 3: return 0x168;
                 case 4: return 0x1e0;
                 case 5: return 0x160;
+#endif
                 default:
                         return 0;
         }
@@ -56,13 +64,24 @@
 {
         unsigned long reg = data_port;
         int i;
+#ifdef CONFIG_X86_PC9800
+ unsigned long increment = data_port == 0x640 ? 2 : 1;
+#endif
 
         for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) {
                 hw->io_ports[i] = reg;
+#ifdef CONFIG_X86_PC9800
+ reg += increment;
+#else
                 reg += 1;
+#endif
         }
         if (ctrl_port) {
                 hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port;
+#ifdef CONFIG_X86_PC9800
+ } else if (data_port == 0x640) {
+ hw->io_ports[IDE_CONTROL_OFFSET] = 0x74c;
+#endif
         } else {
                 hw->io_ports[IDE_CONTROL_OFFSET] = hw->io_ports[IDE_DATA_OFFSET] + 0x206;
         }
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Mar 31 2003 - 22:00:28 EST