kernel/nata: Pass interrupt function to ata_setup_interrupt().
There is one strange change ATA_AHCI_GHC_HR 0x80000001 -> 0x00000001.
It is used for AHCI reset, all other bits are already in place so going
with the flow on this one.
Futher reduce differences with FreeBSD r183724:
* add ata_netcell_setmode() instead of relying on ata_generic_chipinit()
* add ata_promise_mio_setprd() for promise
* prepare siliconimage for port multipliers
* spray some KASSERT() here and there
* fix typo for ATA_READ_NATIVE_MAX_ADDRESS
Taken-from: FreeBSD
27 files changed: