The good news is that running WindowServer with
-virtualonly
bypasses the IOHIDSystem check and gets me to the error message
"unable to register bootstrap port com.apple.CARenderServer"
The bad news is that this means I still need to turn off Backboard/SpringBoard.
Now WindowServer crashes after "MTLDeviceArrayInitialize(): 0 Metal devices" in CA::WindowServer::IOMFBDisplay::IOMFBDisplay -> __CADeviceSupportsUniversalCompression_block_invoke -> MTLCreateSystemDefaultDevice -> WS::Displays::CAManager.
I'm not sure how to get Metal working:
iOS Metal driver uses IOGPU instead of IOServiceMatching(IOAccelerate)
so +[MTLIOAccelDevice registerDevices] is null.
Tried changing it to IOAcceleratorES; didn't work either
Also, the macOS kernel cache has no driver for the A14's GPU.
Tried using the M1 GPU driver on A14: it fails with a
"Failed to create an IOAccelDevice... IOServiceOpen returned kIOReturn(0xE00002C7)"
error.
that's "(iokit/common) unsupported function"
(/`_`)/ _|_|_ I guess IOAcceleratorES is not compatible.
I'm out of ideas: anyone else?
Specifically, iOS uses an IOGPUDeviceUserClient, while macOS expects an IOAccelDevice2.
• • •
Missing some Tweet in this thread? You can try to
force a refresh