Treat internal bridge as subtractive on ThunderX ARM64

Internal bridges in Cavium ThunderX SoC behave as subtractive,
but they are unable to be identified. Force setting an appropriate
flag.

Reviewed by:   emaste, imp
Obtained from: Semihalf
Sponsored by:  The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D3277
This commit is contained in:
Zbigniew Bodek 2015-08-08 21:46:38 +00:00
parent d2b5ade3f4
commit 4718610d0d

View File

@ -960,9 +960,10 @@ pcib_attach_common(device_t dev)
* The i82380FB mobile docking controller is a PCI-PCI bridge,
* and it is a subtractive bridge. However, the ProgIf is wrong
* so the normal setting of PCIB_SUBTRACTIVE bit doesn't
* happen. There's also a Toshiba bridge that behaves this
* way.
* happen. There are also Toshiba and Cavium ThunderX bridges
* that behave this way.
*/
case 0xa002177d: /* Cavium ThunderX */
case 0x124b8086: /* Intel 82380FB Mobile */
case 0x060513d7: /* Toshiba ???? */
sc->flags |= PCIB_SUBTRACTIVE;