Messages in this thread | | | From | Bartlomiej Zolnierkiewicz <> | Subject | Re: [PATCH 04/22] ide: add ide_deprecated_find_port() helper | Date | Tue, 27 May 2008 20:36:10 +0200 |
| |
On Wednesday 21 May 2008, Sergei Shtylyov wrote: > Hello. > > Bartlomiej Zolnierkiewicz wrote: > > > * Factor out code for finding ide_hwifs[] slot from ide_register_hw() > > to ide_deprecated_find_port(). > > > * Convert bast-ide, ide-cs and delkin_cb host drivers to use ide_device_add() > > instead of ide_register_hw() (while at it drop doing "ide_unregister()" loop > > which tries to unregister _all_ IDE interfaces if useable ide_hwifs[] slot > > cannot be find). > > Er... this patch didn't actually drop that loop (late remark :-). > > > This patch leaves us with only two ide_register_hw() users: > > - drivers/macintosh/mediabay.c > > - drivers/ide/ide.c > > I wonder whether ide_register_hw() was much good at all since it didn't > actually permit to register chips using MMIO: you couldn't pass that info via > 'hw' and it set 'hwif->noprobe' to 0, thus giving you no chance to skip > probing which wouldn't work anyway; for the same reason it was no good for DMA > capable chips since you had not time to install ide_dma_check() and other DMA > methods. Am I right here?
Yes but please remember that before we started the major surgeries ide_register_hw() operated in two modes:
- "post-init-probe" which worked like described above
- "pre-init-probe" which allowed host drivers to do all setup (as the probing was done later by ide_generic host driver)
and the vast majority of host drivers used "pre-init-probe" mode (which doesn't change the fact that ide_register_hw() was not good anyway since it had a number of other problems).
Thanks, Bart
| |