ahci - Add quirks for Marvell devices
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 19 Dec 2016 07:21:19 +0000 (23:21 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 19 Dec 2016 18:20:49 +0000 (10:20 -0800)
commiteb9f4c83beec582df5ea926726ded82a89810ea5
tree3b0a306cfff764295d70daea66f32261d7b1caad
parent0e589b85686434c5a4deb4cf3514d3e9f02df367
ahci - Add quirks for Marvell devices

* Add some quirks for badly broken Marvell devices.

* 88SE9172 - This badly broken AHCI chipset does not support FR *or*
     CR responses.

* 88SE9230 - This badly broken AHCI chipset supports FR and CR, but
     cannot maintain FR across a disconnect.  FRE must be
     cycled on the insertion detect in order to re-assert
     FR and be able to detect the new device.

     This chipset also seems to have other problems, sometimes
     generating an error (TFES error) on SET_FEATURES, which
     does not happen when the drive is connected to the Intel
     AHCI chipset.

* Implement quirks for these devices.  Also, don't enable FRE with
  POD and SUD (do it separately), and sequence CMD_ICC_ACTIVE a bit
  differently than before.
sys/dev/disk/ahci/ahci.c
sys/dev/disk/ahci/ahci.h
sys/dev/disk/ahci/ahci_attach.c