diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2020-08-23 10:11:18 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2020-08-23 10:11:18 +0000 |
commit | 104471f48cd495ac08bca14820bfa0f349f474b6 (patch) | |
tree | 9be72b98bfd5e078b6b388d5fc3a2e1fe76700c2 /sys | |
parent | 555f34de9a565ba9e2abf9ea1e4a3a3f019fe5c0 (diff) |
Attempt to support IODA2 bridges such as the one found on POWER8 chips.
These lack an "ibm,opal-available-m64-ranges" property, but it seems
we can assume a 0-15 range. At least this is what Linux does.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/arch/powerpc64/dev/phb.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/arch/powerpc64/dev/phb.c b/sys/arch/powerpc64/dev/phb.c index f12b3cd0a33..2b728c0335e 100644 --- a/sys/arch/powerpc64/dev/phb.c +++ b/sys/arch/powerpc64/dev/phb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: phb.c,v 1.12 2020/07/14 20:40:48 kettenis Exp $ */ +/* $OpenBSD: phb.c,v 1.13 2020/08/23 10:11:17 kettenis Exp $ */ /* * Copyright (c) 2020 Mark Kettenis <kettenis@openbsd.org> * @@ -111,7 +111,8 @@ phb_match(struct device *parent, void *match, void *aux) { struct fdt_attach_args *faa = aux; - return OF_is_compatible(faa->fa_node, "ibm,ioda3-phb"); + return (OF_is_compatible(faa->fa_node, "ibm,ioda2-phb") || + OF_is_compatible(faa->fa_node, "ibm,ioda3-phb")); } void @@ -251,7 +252,7 @@ phb_attach(struct device *parent, struct device *self, void *aux) /* * Enable all the 64-bit mmio windows we found. */ - m64ranges[0] = 1; m64ranges[1] = 0; + m64ranges[0] = 0; m64ranges[1] = 16; OF_getpropintarray(sc->sc_node, "ibm,opal-available-m64-ranges", m64ranges, sizeof(m64ranges)); window = m64ranges[0]; |