Jeff Garzik wrote:
Tejun Heo wrote:
dev->sata_spd_limit contrains SATA PHY speed of the device and is
initialized to the configured value on probing.
Currently, This is only valid for dev[0] but still put into ata_device
instead of ata_port. This is because 1. it's device constraints
(ie. when hotpluggin, it should be cleared with other device info)
2. for port multiplier, link actually belongs to each device.
Three helper functions - ata_down_sata_spd_limit(),
ata_set_sata_spd_needed() and ata_set_sata_spd() - are implemented.
They will be used by ata_bus_probe() rewrite and later by EH.
Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
NAK, I definitely don't want to closely associate phy and device
parameters, because they are fundamentally two different things.
We program and address PHYs, so perhaps a sata_phy struct is needed.
Port multipliers also get interesting because we need to use ATA-ish
commands to talk to the PM phys. Perhaps a struct ata_port_mult inside
ata_device is warranted, where one stores an array of sata_phy structs,
and other PM-specific details.
Hmmm... Yeah I also thought about extracting out PHY related information
out such that PATAs share them, SATA and PM have their own maybe marked
to indicate how they are connected. But that looked like going too far
especially because we don't have PM support yet. So, sticking it into
dev was sorta middle-ground.
How about putting it into ata_port around ap->cbl? This fits the current
model better and should work the same.
--
tejun
-
: 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