File:  [NetBSD Developer Wiki] / wikisrc / ports / evbarm / apple.mdwn
Revision 1.8: download - view: text, annotated - select for diffs
Tue Sep 14 22:02:38 2021 UTC (14 months, 3 weeks ago) by wiki
Branches: MAIN
CVS tags: HEAD
web commit by jmcneill: USB Type-C ports work now

    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 for the Mac mini (M1, 2020) will be installed to `/usr/pkg/share/u-boot/apple-m1/u-boot-t8103-j274.macho`.
   13:    - j274 - Mac mini (M1, 2020)
   14:    - j293 - MacBook Pro (13-inch, M1, 2020)
   15: 
   16: - 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.
   17:    - In the Utilities menu, select Terminal to bring up a root shell.
   18: 
   19: - Downgrade security and disable SIP. (If you get any errors while doing this, first run `csrutil clear`, reboot, and try again)
   20:     - `# bputil -nkcas`
   21:     - `# csrutil disable`
   22: 
   23: - Copy the u-boot.macho from pkgsrc to the mini over the network (curl, sftp, etc).
   24: 
   25: - Install the new bootloader:
   26:     - `# kmutil configure-boot -c u-boot-t8103-j274.macho -C -v /Volumes/Macintosh\ HD/`
   27: 
   28: - Reboot with a arm64.img USB drive plugged in.
   29: 
   30: # Supported hardware
   31: - Apple Mac mini (M1, 2020)
   32:     - SMP
   33:     - Interrupt controller
   34:     - IOMMU
   35:     - PCIe
   36:         - USB (Type-A ports)
   37:         - Ethernet
   38:     - USB (Type-C ports)
   39:     - Framebuffer console
   40: 
   41: # Back to MacOS
   42: 
   43: # Commits
   44: 
   45: Add some missing barriers:
   46: 
   47: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131945.html>
   48: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131946.html>
   49: 
   50: Support EL2 host mode:
   51: 
   52: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131947.html>
   53: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131948.html>
   54: 
   55: Add 10-bit pixel format support:
   56: 
   57: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131949.html>
   58: 
   59: Fix bus_dmamap_sync usage in bge(4):
   60: 
   61: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131950.html>
   62: 
   63: Fix PCI resource allocation:
   64: 
   65: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131951.html>
   66: 
   67: Disable dwc3 when iommu support is required:
   68: 
   69: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131952.html>
   70: 
   71: Do not touch CNTCTL_IMASK in generic timer driver:
   72: 
   73: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131953.html>
   74: 
   75: Fix incorrect KASSERT in cpu_lwp_fork:
   76: 
   77: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131954.html>
   78: 
   79: Add IOMMU support to arm bus_dma:
   80: 
   81: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131955.html>
   82: 
   83: Identify M1 CPU IDs:
   84: 
   85: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131956.html>
   86: 
   87: Support 64-bit cpu-release-addr for spin-table:
   88: 
   89: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131959.html>
   90: 
   91: Add support for FIQs:
   92: 
   93: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131960.html>
   94: 
   95: Initial Apple M1 support:
   96: 
   97: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131961.html>
   98: 
   99: Make scheduler aware of efficiency and performance cores:
  100: 
  101: - <https://mail-index.netbsd.org/source-changes/2021/09/01/msg131982.html>

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb