[OpenBIOS] [PATCH] mac: Don't set APPL, address properties on NewWorld

Benjamin Herrenschmidt benh at kernel.crashing.org
Thu Aug 4 03:16:43 CEST 2016

They are created by the MacOS ROM and in some cases MacOS X to contain
the *virtual* addresses of the BARs as mapped by the kernel.

Having these already there with the wrong values causes the hangs
with MacOS X 10.5 and the video driver.

The reason is that the IONDRVFramebuffer code in OS X 10.5 won't replace
those properties if they already exist, so the driver ends up accessing
the addresses put in there by OpenBIOS which aren't valid mapped virtual
addresses under OS X.

Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
 drivers/pci.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/pci.c b/drivers/pci.c
index 0cdf0bf..9813086 100644
--- a/drivers/pci.c
+++ b/drivers/pci.c
@@ -1029,10 +1029,9 @@ static void ob_pci_add_properties(phandle_t phandle,
 	pci_set_assigned_addresses(phandle, config, num_bars);
-	if (is_apple()) {
+	if (is_apple() && is_oldworld())
-	}

More information about the OpenBIOS mailing list