int drive_is_flashcard (ide_drive_t * drive);
CompactFlash cards and their brethern pretend to be removable hard disks, except: (1) they never have a slave unit, and (2) they don't have doorlock mechanisms. This test catches them, and is invoked elsewhere when setting appropriate config bits.
This treatment is probably applicable for *all* PCMCIA (PC CARD) devices, so in linux 2.3.x we should change this to just treat all PCMCIA drives this way, and get rid of the model-name tests below (too big of an interface change for 2.4.x). At that time, we might also consider parameterizing the timeouts and retries, since these are MUCH faster than mechanical drives. -M.Lord