Overall looks pretty good, from a technical review perspective.
1) exporting ata_scsi_find_dev(), and assuming a scsi device is
attached. the latter can be fixed by a !NULL check (and should be), but
its a bit of a layering violation since long term we want to make the
SCSI simulator optional for all ATA devices.
2) vaguely related to #1, I'm not so sure the attributes should be
implemented directly in ahci. if this __or something like it__ appears
on non-Intel hardware, the code should be somewhere more generic.