Re: [PATCH] IDE cable detection on Apple PowerBook

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 23 Mar 2009 13:57:03 +0300
Sergei Shtylyov <sshtylyov@xxxxxxxxxxxxx> wrote:

>     Unacceptable style, brace should be on the same line with *if*; run your 
> patch thru scripts/checkpatch.pl please...
Thank you for telling me the error. Now, this one should be all right.

---

Signed-off-by: TOMARI Hisanobu <posco.grubb@xxxxxxxxx>
This patch against 2.6.28.8 modifies the behavior of 80c cable detection 
of drivers/ide/pmac.c.
As IDE cable used on Apple PowerBook/iBook laptops are always of "Short 40" 
type when the firmware says it's 80 conductor one, the cable detection should 
return ATA_CBL_PATA40_SHORT on those machines.
This enables to automatically use UDMA5 even with drives that doesn't correctly 
detect those cables on Apple laptops.

--- linux-2.6.28.8/drivers/ide/pmac.c.orig	2009-03-21 23:07:19.177956922 +0900
+++ linux-2.6.28.8/drivers/ide/pmac.c	2009-03-23 20:03:51.010964084 +0900
@@ -917,10 +917,18 @@ static u8 pmac_ide_cable_detect(ide_hwif
 		(pmac_ide_hwif_t *)dev_get_drvdata(hwif->gendev.parent);
 	struct device_node *np = pmif->node;
 	const char *cable = of_get_property(np, "cable-type", NULL);
+	struct device_node *root = of_find_node_by_path("/");
+	const char *model = of_get_property(root, "model", NULL);
 
 	/* Get cable type from device-tree. */
-	if (cable && !strncmp(cable, "80-", 3))
-		return ATA_CBL_PATA80;
+	if (cable && !strncmp(cable, "80-", 3)) {
+		/* Some drives fail to detect 80c cable in PowerBook */
+		/* These machine use proprietary short IDE cable anyway */
+		if (!strncmp(model, "PowerBook", 9))
+			return ATA_CBL_PATA40_SHORT;
+		else
+			return ATA_CBL_PATA80;
+	}
 
 	/*
 	 * G5's seem to have incorrect cable type in device-tree.

--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux