Annotation of wikisrc/ports/evbarm/apple.mdwn, revision 1.14

1.1       wiki        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: 
1.14    ! wiki        7: As of April 2022 it is best to use the Asahi installer.
        !             8: 
        !             9: - Follow instruction as documented here: <https://asahilinux.org/2022/03/asahi-linux-alpha-release/> to get the "UEFI environment" 
        !            10: 
        !            11: - 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 May 7th, 2022*
        !            12: 
        !            13: - Reboot with an arm64.img USB drive plugged into a USB C port.
        !            14: 
        !            15: The old installation instructions are:
        !            16: 
1.1       wiki       17: Please note that installation on an Apple M1 requires macOS 11.2 or later to be installed first.
                     18: 
1.3       wiki       19: - 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!*
1.1       wiki       20: 
                     21: - Build and install `sysutils/u-boot-apple-m1` from pkgsrc.
1.6       wiki       22:    - The bootloader for the Mac mini (M1, 2020) will be installed to `/usr/pkg/share/u-boot/apple-m1/u-boot-t8103-j274.macho`.
1.7       wiki       23:    - j274 - Mac mini (M1, 2020)
                     24:    - j293 - MacBook Pro (13-inch, M1, 2020)
1.1       wiki       25: 
                     26: - 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.
                     27:    - In the Utilities menu, select Terminal to bring up a root shell.
                     28: 
                     29: - Downgrade security and disable SIP. (If you get any errors while doing this, first run `csrutil clear`, reboot, and try again)
                     30:     - `# bputil -nkcas`
                     31:     - `# csrutil disable`
                     32: 
                     33: - Copy the u-boot.macho from pkgsrc to the mini over the network (curl, sftp, etc).
                     34: 
                     35: - Install the new bootloader:
1.7       wiki       36:     - `# kmutil configure-boot -c u-boot-t8103-j274.macho -C -v /Volumes/Macintosh\ HD/`
1.1       wiki       37: 
1.12      wiki       38: - Reboot with an arm64.img USB drive plugged in.
1.1       wiki       39: 
                     40: # Supported hardware
                     41: - Apple Mac mini (M1, 2020)
                     42:     - SMP
                     43:     - Interrupt controller
                     44:     - IOMMU
                     45:     - PCIe
1.8       wiki       46:         - USB (Type-A ports)
1.1       wiki       47:         - Ethernet
1.8       wiki       48:     - USB (Type-C ports)
1.1       wiki       49:     - Framebuffer console
1.9       wiki       50:         - X11 (requires `startx -- -depth 30`)
1.4       wiki       51: 
1.7       wiki       52: # Back to MacOS
                     53: 
1.4       wiki       54: # Commits
                     55: 
                     56: Add some missing barriers:
                     57: 
                     58: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131945.html>
                     59: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131946.html>
                     60: 
                     61: Support EL2 host mode:
                     62: 
                     63: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131947.html>
                     64: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131948.html>
                     65: 
                     66: Add 10-bit pixel format support:
                     67: 
                     68: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131949.html>
                     69: 
                     70: Fix bus_dmamap_sync usage in bge(4):
                     71: 
                     72: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131950.html>
                     73: 
                     74: Fix PCI resource allocation:
                     75: 
                     76: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131951.html>
                     77: 
                     78: Disable dwc3 when iommu support is required:
                     79: 
                     80: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131952.html>
                     81: 
                     82: Do not touch CNTCTL_IMASK in generic timer driver:
                     83: 
                     84: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131953.html>
                     85: 
                     86: Fix incorrect KASSERT in cpu_lwp_fork:
                     87: 
                     88: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131954.html>
                     89: 
                     90: Add IOMMU support to arm bus_dma:
                     91: 
                     92: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131955.html>
                     93: 
                     94: Identify M1 CPU IDs:
                     95: 
                     96: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131956.html>
                     97: 
                     98: Support 64-bit cpu-release-addr for spin-table:
                     99: 
                    100: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131959.html>
                    101: 
                    102: Add support for FIQs:
                    103: 
                    104: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131960.html>
                    105: 
                    106: Initial Apple M1 support:
                    107: 
                    108: - <https://mail-index.netbsd.org/source-changes/2021/08/30/msg131961.html>
1.5       wiki      109: 
                    110: Make scheduler aware of efficiency and performance cores:
                    111: 
                    112: - <https://mail-index.netbsd.org/source-changes/2021/09/01/msg131982.html>
1.10      skrll     113: 
                    114: Support 8-bit ASID field in pmap:
                    115: 
                    116: - <https://mail-index.netbsd.org/source-changes/2021/10/10/msg132887.html>
                    117: - <https://mail-index.netbsd.org/source-changes/2021/10/10/msg132889.html>
1.11      wiki      118: 
                    119: Add mailbox and power-domain support:
                    120: 
                    121: - <https://mail-index.netbsd.org/source-changes/2022/03/04/msg137351.html>
1.13      skrll     122: 
                    123: EFI boot from 4K devices support:
                    124: 
                    125: - <https://mail-index.netbsd.org/source-changes/2022/04/24/msg138177.html>
                    126: - <https://mail-index.netbsd.org/source-changes/2022/04/24/msg138178.html>
                    127: 
                    128: Sync DART and PCIE with OpenBSD:
                    129: 
                    130: - <https://mail-index.netbsd.org/source-changes/2022/04/27/msg138239.html>
                    131: - <https://mail-index.netbsd.org/source-changes/2022/04/27/msg138242.html>
                    132: 
                    133: Power domain controller support:
                    134: 
                    135: - <https://mail-index.netbsd.org/source-changes/2022/04/27/msg138240.html>
                    136: 
                    137: GPIO controller support:
                    138: 
                    139: - <https://mail-index.netbsd.org/source-changes/2022/04/27/msg138241.html>
                    140: 
                    141: Mailbox and RTKit OS communications protocol support:
                    142: 
                    143: - <https://mail-index.netbsd.org/source-changes/2022/04/27/msg138243.html>
                    144: 
                    145: Pointer Authentication fix:
                    146: 
                    147: - <https://mail-index.netbsd.org/source-changes/2022/05/06/msg138377.html>
1.14    ! wiki      148: 
        !           149: NVME support:
        !           150: 
        !           151: - <https://mail-index.netbsd.org/source-changes/2022/05/07/msg138395.html>

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