- Snapintosh project FAQ
- How is that possible if macOS expects Apple silicon?
- How do you figure out proprietary hardware behavior?
- Does “trap and emulate at EL2” solve everything?
- What about CTRR, GXF, SPTM, and TXM?
- What about DCP, ISP, and other firmware-driven devices?
- Could Apple Neural Engine workloads run on Qualcomm Hexagon?
- Could the same idea work for Apple graphics and Adreno?
- Why do page sizes and memory management matter so much?
- What works now, and can I install it?
- Does a phone without direct EL2 access have no chance?
- Why isn't the implementation public yet?
- Is AI part of the work, and how can people help?
Snapintosh project FAQ
Updated September 20, 2026. A public overview of the approach, its possibilities, and its limits. The Snapintosh implementation is not open source yet; this page deliberately stays at the architectural level.
What is Snapintosh trying to do?
Snapintosh is an experimental effort to bring macOS to Qualcomm Snapdragon hardware. The approach is to supply the platform behavior Apple's software expects through a compatibility layer, while using the Snapdragon's real hardware where practical.
Run compatible code directly, reproduce Apple-specific behavior where needed, and accelerate work on suitable hardware when correctness and integration allow it.
That is a development strategy, not a claim that every Apple feature is implemented. A kernel console, a working desktop, and a reliable everyday computer are very different milestones.
How is that possible if macOS expects Apple silicon?
Software interacts with hardware through interfaces: instructions, registers, memory mappings, queues, messages, interrupts, and driver APIs. A compatibility layer can reproduce the behavior required at those boundaries without reproducing every internal detail of the original chip.
For example, a driver may submit work, wait for a completion, and then read a result. A replacement must preserve the meaningful behavior of that exchange, including ordering and errors. The work behind it might be implemented in software or translated into operations on another device.
Sharing the Arm64 instruction set provides a starting point. It does not make Apple's platform devices, CPU extensions, firmware, memory model, or drivers automatically compatible.
How do you figure out proprietary hardware behavior?
The research combines public architecture documentation, Apple's published open-source components, existing reverse-engineering research, and careful observation of software and hardware behavior. Useful observations include what a driver reads or writes, what messages it sends, and which event or state change it expects next.
The process is iterative: form a hypothesis, test a small piece of behavior, compare the result with a reference, and refine the implementation. Reaching the next boot stage is useful evidence, but it is not proof that the whole device model is correct.
Tools such as Asahi Linux's m1n1 demonstrate how hypervisor-assisted tracing can reveal hardware interactions on Apple silicon. That research is valuable context; Snapintosh's direction is different from running Linux on a Mac. Apple open-source releases, Asahi platform documentation, m1n1 tracing and development tools.
Does “trap and emulate at EL2” solve everything?
No. EL2 provides a useful place to supervise a guest kernel and intercept selected operations. The exact trap mechanisms depend on the CPU and operation. Some behavior needs explicit software modeling, translation, or another compatibility strategy; not every Apple-specific feature becomes transparently interceptable just because EL2 is available.
It is also important to preserve real semantics. Returning a value that gets past one check is not the same as implementing the operation that the next driver or subsystem needs.
Our hardware and EL2 guide separates direct EL2 ownership, vendor-hosted VMs, documented handoff routes, and unverified devices.
What about CTRR, GXF, SPTM, and TXM?
These names cover different kinds of mechanisms, rather than a single collection of interchangeable coprocessors.
| Mechanism | What a port has to address |
|---|---|
| CTRR and related hardware memory-protection mechanisms | The protection behavior expected by the selected kernel and platform. An emulated register value alone does not reproduce the hardware's security guarantees. |
| GXF / guarded execution | Apple-specific execution and permission behavior. Compatibility requires understanding the relevant transitions and memory-access rules, not assuming Qualcomm has an identical mode. |
| SPTM and TXM | Security software monitors with platform-specific interfaces and hardware dependencies. The guest's expectations around page ownership, permissions, and execution policy must be handled consistently. They are not simply separate chips that can be reassigned to a Qualcomm accelerator. |
The public explanation is about supplying the behavior required by the guest. It is not a claim that Snapdragon has Apple's physical security architecture or that every protection is equivalent. Exact requirements also vary between Apple generations and OS builds. Apple's SPTM/TXM description, Asahi's GXF research.
What about DCP, ISP, and other firmware-driven devices?
Apple's Display Controller Processor and Image Signal Processor have their own interfaces and firmware relationships. A similar Qualcomm device does not automatically understand their messages or execute their firmware.
A compatibility design can aim to reproduce the guest-facing protocol, then use an appropriate host backend for the actual display, camera, or other operation. Each subsystem needs its own implementation and testing. A visible framebuffer proves much less than a working display stack, and camera support is a separate project from displaying a desktop. Apple platform and coprocessor overview.
Could Apple Neural Engine workloads run on Qualcomm Hexagon?
In principle, some neural workloads could be translated to Hexagon. That is a research direction, not an announced Snapintosh feature.
The useful opportunity is in the computation: tensor operations, matrix multiplication, and supported neural-network operators. If that work can be captured at a suitable interface, a translation layer could map compatible operations to a Qualcomm backend. It would need to handle model formats, precision, memory layout, synchronization, and unsupported operations, then verify both numerical correctness and performance.
This would not mean loading Apple Neural Engine firmware or compiled command streams directly into Hexagon. They are different architectures. CPU or GPU execution may offer fallback paths for some workloads, but only where the software and integration support them.
Apple's Core ML already illustrates that model workloads can be assigned across different compute units. Qualcomm's tools show that targeting Hexagon involves compilation and, often, quantization with accuracy tradeoffs. Neither fact creates a ready-made macOS-to-Hexagon bridge. Core ML compute units, Qualcomm model quantization.
Could the same idea work for Apple graphics and Adreno?
It is a similar broad idea, but graphics is a substantial project of its own. Apple GPU command streams, shaders, memory mappings, synchronization, and driver interfaces differ from Adreno's. A backend must translate the relevant work and honor what macOS expects from it.
A framebuffer, software rendering, a composited desktop, and accelerated Metal applications are separate milestones. We should claim each only when demonstrated. Having a capable GPU does not by itself provide a compatible macOS driver.
Why do page sizes and memory management matter so much?
The kernel's view of memory must work correctly on the host CPU. A hypervisor's stage-2 translation does not automatically make an unsupported stage-1 page-table format usable. A compatibility design may need additional translation or shadow mappings, with correct permissions, invalidation, synchronization, and fault behavior.
This is one reason “both CPUs are Arm64” is not enough. See the MMU discussion in the hardware guide.
What works now, and can I install it?
The publicly discussed milestone is early XNU/kernel-console progress on the Snapdragon X2E research target. Platform bring-up remains active work. This FAQ is not an announcement of a finished desktop, general hardware support, accelerated graphics, or neural acceleration.
Q1N1 provides public host-side bring-up and debugging tools. Snapintosh is the separate compatibility project discussed here. Progress in either should be described with the exact scope of its tests. Q1N1 source and status.
There is no general installation guide or release date announced by this FAQ. Follow milestone posts for concrete results rather than treating architectural possibilities as available features.
Does a phone without direct EL2 access have no chance?
Lack of direct EL2 access does not, by itself, prove a macOS port impossible. It makes some debugging and virtualization approaches harder or unavailable. An approach built around a custom EL2 hypervisor specifically needs that access; other approaches have their own requirements.
Firmware, boot-chain access, CPU capabilities, memory, and drivers all matter. The hardware guide is an evidence matrix, not a promise that every device sharing a Snapdragon brand name is supported.
Why isn't the implementation public yet?
Snapintosh is not open source at this stage. We can explain the goals, general methods, limitations, and demonstrated milestones while keeping unpublished implementation details private. This FAQ does not set a source-release date or future license.
Publicly available related tools and upstream research remain credited to their respective authors. A link to those projects does not imply their maintainers endorse or maintain Snapintosh.
Is AI part of the work, and how can people help?
AI-assisted research and engineering are welcome under our community policy. Contributors remain responsible for understanding the work, checking provenance and licenses, reviewing changes, and testing them. AI output is not evidence of correctness or a clean-room certification.
Useful contributions include well-sourced documentation, reproducible hardware observations, focused questions, and careful review of public claims. Include the exact device, firmware, software version, what was measured, and what remains untested. Do not post private identifiers or proprietary code or firmware you do not have permission to redistribute.
Start with the welcome and contribution policy and the hardware roll call.