diff options
author | Andrew Turner <andrew@FreeBSD.org> | 2018-03-02 13:04:21 +0000 |
---|---|---|
committer | Andrew Turner <andrew@FreeBSD.org> | 2018-03-02 13:04:21 +0000 |
commit | 6d9e17fc83112c05b2858a756a3263c1026527e3 (patch) | |
tree | 927f72b37022c392ba685e38f98b80d734e706f3 /sys/arm64/arm64/gic_v3_acpi.c | |
parent | 86ba49a72276ad7c16d691dc3e8a335c7397b045 (diff) | |
download | src-6d9e17fc83112c05b2858a756a3263c1026527e3.tar.gz src-6d9e17fc83112c05b2858a756a3263c1026527e3.zip |
Count the number of children in the GICv3 ACPI attachment. This is needed
later for assigning IRQ vector space.
Sponsored by: DARPA, AFRL
Sponsored by: Cavium (Hardware)
Notes
Notes:
svn path=/head/; revision=330276
Diffstat (limited to 'sys/arm64/arm64/gic_v3_acpi.c')
-rw-r--r-- | sys/arm64/arm64/gic_v3_acpi.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/arm64/arm64/gic_v3_acpi.c b/sys/arm64/arm64/gic_v3_acpi.c index 00a5e3712087..23b327a24029 100644 --- a/sys/arm64/arm64/gic_v3_acpi.c +++ b/sys/arm64/arm64/gic_v3_acpi.c @@ -297,12 +297,14 @@ gic_v3_add_children(ACPI_SUBTABLE_HEADER *entry, void *arg) { ACPI_MADT_GENERIC_TRANSLATOR *gict; struct gic_v3_acpi_devinfo *di; + struct gic_v3_softc *sc; device_t child, dev; if (entry->Type == ACPI_MADT_TYPE_GENERIC_TRANSLATOR) { /* We have an ITS, add it as a child */ gict = (ACPI_MADT_GENERIC_TRANSLATOR *)entry; dev = arg; + sc = device_get_softc(dev); child = device_add_child(dev, "its", -1); if (child == NULL) @@ -313,6 +315,7 @@ gic_v3_add_children(ACPI_SUBTABLE_HEADER *entry, void *arg) resource_list_add(&di->di_rl, SYS_RES_MEMORY, 0, gict->BaseAddress, gict->BaseAddress + 128 * 1024 - 1, 128 * 1024); + sc->gic_nchildren++; device_set_ivars(child, di); } } |