On Sun, 07 Jan 2007 20:38:56 -0500, Jeff Garzik wrote:
> > This alternative patch is based on the observation that ap->flags
> > isn't really used until after ->port_start() has been invoked.
> > So this patch places the "exceptional" per-port flags array in
> > the driver's private host structure, and uses it in ->port_start()
> > to finalise the flags.
>
> I agree with this approach, modulo a minor change...
Excellent.
> > @@ -386,7 +392,7 @@ static u32 pdc_sata_scr_read (struct ata
> > static void pdc_sata_scr_write (struct ata_port *ap, unsigned int sc_reg,
> > u32 val)
> > {
> > - if (sc_reg > SCR_CONTROL)
> > + if ((sc_reg > SCR_CONTROL) || (ap->flags & ATA_FLAG_SLAVE_POSS))
> > return;
> > writel(val, (void __iomem *) ap->ioaddr.scr_addr + (sc_reg * 4));
> > }
>
> Seems like a better test than ATA_FLAG_SLAVE_POSS would be to test the
> cable type.
Agreed. This test is what #promise-sata-pata does now, but
I'll change it inspect the cable type instead.
/Mikael
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html