Re: [PATCH 2/7] libata: implement ap->sata_spd_limit and helpers

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

 



Tejun Heo wrote:
On Sun, Apr 02, 2006 at 06:43:01AM -0400, Jeff Garzik wrote:
Tejun Heo wrote:
-	/* Issue phy wake/reset */
+	/* SATA spec says nothing about how to reconfigure spd.
+	 * Configuring before starting hardreset works for both of my
+	 * test cases - ICH7 AHCI and sil3124.  Configuring while phy
+	 * is off sounds nice but ICH7 chokes on that.  It preserves
+	 * configured value but does not apply it.
+	 */
+	ata_set_sata_spd(ap);
+
+	/* issue phy wake/reset */
	scontrol = scr_read(ap, SCR_CONTROL);
	scontrol = (scontrol & 0x0f0) | 0x301;
	scr_write_flush(ap, SCR_CONTROL, scontrol);
This code is an example of configuring the phy while its off... You put the speed setting before the phy wake.

Everything else looks OK.


This is embarrasing. :( I was being delusional.  I somehow thought

Well on the bright side the other 21 patches are OK :)


DET=1 was PHY off and DET=0 was wake.  I'll test with actual PHY off
(DET=2) and redo this patch.  Sorry about the confusion.

Well, whatever the results of testing, I don't want to deviate from scr_write([0x301 or 0x300]) being the first thing we do with the phy. That's what's tested and working in both Linux and Windows. Don't be surprised at nutty hackery on Gen-1 controllers (PATA chips w/ SATA bridge), where deviating from the few tested SControl values and "programming situations" (chip states) can lead to trouble.

	Jeff


-
: 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