Messages in this thread | | | Date | Wed, 6 Aug 2008 16:06:18 +0100 | From | Alan Cox <> | Subject | Re: [PATCH] ata: Add support for Long Logical Sectors and Long Physical Sectors |
| |
> > - FIFO managed for the odd command thats a funny size > > ... but it's not the odd command, it's going to be the vast majority of > them.
Put a 512 byte and a 2K sector sized disk on the same channel and its probably nearer 50/50.
> > > - Various other levels of software managed controller > > thumping > > > > It's not a passive thing and we'd want to do it post identify on the > > drive pair as it'll often need per channel decisions (eg on FIFO) > > Why can't you just disable the (controller) FIFO whenever any drive > reports != 512 byte sectors?
Because I'd like to do better than that - and FIFO is only one of the cases. I think your proposal basically works - providing you identify both drives before worrying about sector sizes. Most of our other logic is done that way - the drives are all identified then the controller makes decisions.
The setup time method then either vetos the disk or accepts it The existing mode_filter can be used to implement stuff like "PIO only no DMA" cases And if we can do it but have problems the qc_issue or device select methods can be hooked to do the work.
Alan
| |