Re: SiI3124 + SiI3726 pm

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

 



Jérôme VUARAND wrote:
I just realised after the mail that the driver was really thinking
there are 6 ports on the pm, since it's testing ata3.05 and ata4.05.
These don't exist and generate errors. There's a bug somewhere and
here is a workaround I made quickly to have correct enumeration
behaviour (I hope no automatic process parse mails on this mailing
list for patches, coz this one is not really clean) :

Can you try the attached patch?

--
tejun
diff --git a/drivers/scsi/libata-pm.c b/drivers/scsi/libata-pm.c
index 002d8b2..7a56ab7 100644
--- a/drivers/scsi/libata-pm.c
+++ b/drivers/scsi/libata-pm.c
@@ -327,6 +327,14 @@ static void ata_pm_quirks(u32 *gscr, int
 		*nr_ports -= 2;
 		*link_flags |= ATA_LFLAG_HRST_TO_RESUME;
 	}
+
+	/* Sil3726 reports one extra port and needs hardreset to
+	 * resume PM link.
+	 */
+	if (vendor == 0x1095 && devid == 0x3726) {
+		*nr_ports -= 1;
+		*link_flags |= ATA_LFLAG_HRST_TO_RESUME;
+	}
 }
 
 static int ata_pm_configure(struct ata_device *dev, int *r_nr_ports,

[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