1: [[!meta title="NetBSD/evbarm on Apple Silicon"]]
2:
3: Initial support was added to NetBSD -current for Apple M1 systems on Aug 30, 2021.
4:
5: # Installation
6:
7: Please note that installation on an Apple M1 requires macOS 11.2 or later to be installed first.
8:
9: - Uncompress <http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz> and write it to a USB drive. *Make sure this file was built after Aug 30, 2021!*
10:
11: - Build and install `sysutils/u-boot-apple-m1` from pkgsrc.
12: - The bootloader will be installed to `/usr/pkg/share/u-boot/apple-m1/u-boot.macho`.
13:
14: - Boot the M1 system into 1TR mode by holding the power button at startup. Until the "Loading startup options..." message is displayed, then select Options.
15: - In the Utilities menu, select Terminal to bring up a root shell.
16:
17: - Downgrade security and disable SIP. (If you get any errors while doing this, first run `csrutil clear`, reboot, and try again)
18: - `# bputil -nkcas`
19: - `# csrutil disable`
20:
21: - Copy the u-boot.macho from pkgsrc to the mini over the network (curl, sftp, etc).
22:
23: - Install the new bootloader:
24: - `# kmutil configure-boot -c u-boot.macho -C -v /Volumes/Macintosh\ HD/`
25:
26: - Reboot with a USB drive plugged in.
27:
28: # Supported hardware
29: - Apple Mac mini (M1, 2020)
30: - SMP
31: - Interrupt controller
32: - IOMMU
33: - PCIe
34: - USB
35: - Ethernet
36: - Framebuffer console
37:
38: # Commits
39:
40: Add some missing barriers:
41:
42: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131945.html>
43: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131946.html>
44:
45: Support EL2 host mode:
46:
47: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131947.html>
48: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131948.html>
49:
50: Add 10-bit pixel format support:
51:
52: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131949.html>
53:
54: Fix bus_dmamap_sync usage in bge(4):
55:
56: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131950.html>
57:
58: Fix PCI resource allocation:
59:
60: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131951.html>
61:
62: Disable dwc3 when iommu support is required:
63:
64: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131952.html>
65:
66: Do not touch CNTCTL_IMASK in generic timer driver:
67:
68: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131953.html>
69:
70: Fix incorrect KASSERT in cpu_lwp_fork:
71:
72: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131954.html>
73:
74: Add IOMMU support to arm bus_dma:
75:
76: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131955.html>
77:
78: Identify M1 CPU IDs:
79:
80: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131956.html>
81:
82: Support 64-bit cpu-release-addr for spin-table:
83:
84: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131959.html>
85:
86: Add support for FIQs:
87:
88: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131960.html>
89:
90: Initial Apple M1 support:
91:
92: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131961.html>
93:
94: Make scheduler aware of efficiency and performance cores:
95:
96: - <https://mail-index.netbsd.org/source-changes/2021/09/01/msg131982.html>
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb