aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ixp4xx/patches-2.6.23/015-nas100d_pata_artop_single_port.patch
blob: e6b717147c8f7b226b2ed19dccad7b13e191b9e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
diff -uprN linux-2.6.23.orig/drivers/ata/pata_artop.c linux-2.6.23/drivers/ata/pata_artop.c
--- linux-2.6.23.orig/drivers/ata/pata_artop.c	2007-10-09 15:31:38.000000000 -0500
+++ linux-2.6.23/drivers/ata/pata_artop.c	2007-10-11 00:59:14.000000000 -0500
@@ -27,6 +27,7 @@
 #include <scsi/scsi_host.h>
 #include <linux/libata.h>
 #include <linux/ata.h>
+#include <asm/mach-types.h>
 
 #define DRV_NAME	"pata_artop"
 #define DRV_VERSION	"0.4.4"
@@ -489,6 +490,11 @@ static int artop_init_one (struct pci_de
 		pci_read_config_byte(pdev, 0x4a, &reg);
 		pci_write_config_byte(pdev, 0x4a, (reg & ~0x01) | 0x80);
 
+		/* NAS100D workaround - probing second port kills uhci_hcd */
+#ifdef CONFIG_MACH_NAS100D
+		if (machine_is_nas100d())
+			ppi[1] = &ata_dummy_port_info;
+#endif
 	}
 
 	BUG_ON(ppi[0] == NULL);