svn commit: r289967 - head/sys/arm64/arm64
Zbigniew Bodek
zbb at FreeBSD.org
Sun Oct 25 23:27:09 UTC 2015
Author: zbb
Date: Sun Oct 25 23:27:08 2015
New Revision: 289967
URL: https://svnweb.freebsd.org/changeset/base/289967
Log:
Fix bus numbering in ThunderX ITS quirk
Internal busses (thus ECAM access) should be mapped to
all values from 0 to 143.
Obtained from: Semihalf
Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D3753
Modified:
head/sys/arm64/arm64/gic_v3_its.c
Modified: head/sys/arm64/arm64/gic_v3_its.c
==============================================================================
--- head/sys/arm64/arm64/gic_v3_its.c Sun Oct 25 23:22:40 2015 (r289966)
+++ head/sys/arm64/arm64/gic_v3_its.c Sun Oct 25 23:27:08 2015 (r289967)
@@ -59,6 +59,8 @@ __FBSDID("$FreeBSD$");
#include "gic_v3_reg.h"
#include "gic_v3_var.h"
+#define GIC_V3_ITS_QUIRK_THUNDERX_PEM_BUS_OFFSET 144
+
#include "pic_if.h"
/* Device and PIC methods */
@@ -1475,8 +1477,8 @@ its_get_devid_thunder(device_t pci_dev)
bsf = PCI_RID(pci_get_bus(pci_dev), pci_get_slot(pci_dev),
pci_get_function(pci_dev));
- /* ECAM is on bus=0 */
- if (bus == 0) {
+ /* Check if accessing internal PCIe (low bus numbers) */
+ if (bus < GIC_V3_ITS_QUIRK_THUNDERX_PEM_BUS_OFFSET) {
return ((pci_get_domain(pci_dev) << PCI_RID_DOMAIN_SHIFT) |
bsf);
/* PEM otherwise */
More information about the svn-src-all
mailing list