mtip32xx: Fix ERO and NoSnoop values in PCIe upstream on AMD systems
authorAsai Thambi S P <asamymuthupa@micron.com>
Fri, 14 Mar 2014 01:45:15 +0000 (18:45 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 7 Jul 2014 01:57:26 +0000 (18:57 -0700)
commitdaa44169466c2d6a3eeced05bec107fdbcd2207e
treecd2b644e3d503a578274953277a3e111aed907d3
parentd3f891a0ab86ea6b43bd2133a9fac62e5b3581c0
mtip32xx: Fix ERO and NoSnoop values in PCIe upstream on AMD systems

commit d1e714db8129a1d3670e449b87719c78e2c76f9f upstream.

A hardware quirk in P320h/P420m interfere with PCIe transactions on some
AMD chipsets, making P320h/P420m unusable. This workaround is to disable
ERO and NoSnoop bits in the parent and root complex for normal
functioning of these devices

NOTE: This workaround is specific to AMD chipset with a PCIe upstream
device with device id 0x5aXX

Signed-off-by: Asai Thambi S P <asamymuthupa@micron.com>
Signed-off-by: Sam Bradshaw <sbradshaw@micron.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/block/mtip32xx/mtip32xx.c