lkml.org 
[lkml]   [2009]   [Jan]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 2.6.29-rc libata sff 32bit PIO regression
O> > +	ata_for_each_dev(adev, &ap->link, ENABLED) {
> > + if (adev->class == ATA_DEV_ATAPI)
> > + fifo = 0;
> > + }
>
> Er, couldn't we do that dynamically, based on which device is
> executing the command now?

Possibly but PCI command cycles are expensive so you'd want to cache the
state and stuff. Better to get it correct firstly.

> > + if (pdev->device == PCI_DEVICE_ID_AMD_VIPER_7411) /* FIFO is broken */
> > + fifo = 0;
> > +
> > + /* On the later chips the read prefetch bits become no-op bits */
> > + pci_read_config_byte(pdev, 0x41, &r);
> > + r &= ~fifobit[ap->port_no];
> >
>
> Why not:
>
> r &= ~fifo;

Because then it wouldn't clear the bits if they were set already and we
wanted them off!


\
 
 \ /
  Last update: 2009-01-31 17:09    [from the cache]
©2003-2011 Jasper Spaans