-/* $OpenBSD: efiacpi.c,v 1.14 2022/01/02 02:13:33 jsg Exp $ */
+/* $OpenBSD: efiacpi.c,v 1.15 2023/09/12 08:22:07 jmatthew Exp $ */
/*
* Copyright (c) 2018 Mark Kettenis <kettenis@openbsd.org>
static uint32_t phandle = 2;
void *node, *child;
uint64_t reg[2];
+ uint32_t its_id;
char name[32];
snprintf(name, sizeof(name), "gic-its@%llx", its->base_address);
reg[0] = htobe64(its->base_address);
reg[1] = htobe64(0x20000);
+ its_id = htobe32(its->gic_its_id);
/* Create "gic-its" node. */
node = fdt_find_node("/interrupt-controller");
fdt_node_add_property(child, "msi-controller", NULL, 0);
fdt_node_add_property(child, "reg", reg, sizeof(reg));
fdt_node_add_property(child, "phandle", &phandle, sizeof(phandle));
+ fdt_node_add_property(child, "openbsd,gic-its-id", &its_id,
+ sizeof(its_id));
phandle++;
}