mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-17 08:43:07 +00:00
60 lines
1.6 KiB
ReStructuredText
60 lines
1.6 KiB
ReStructuredText
|
.. SPDX-License-Identifier: GPL-2.0+
|
||
|
|
||
|
U-Boot for Apple Silicon Macs
|
||
|
=============================
|
||
|
|
||
|
Allows Apple Silicon Macs to boot U-Boot via the m1n1 bootloader
|
||
|
developed by the Asahi Linux project. At this point the machines with
|
||
|
the following SoCs work:
|
||
|
|
||
|
- Apple M1 SoC
|
||
|
|
||
|
On these SoCs the following hardware is supported:
|
||
|
|
||
|
- S5L serial port
|
||
|
- Framebuffer
|
||
|
- USB 3.1 Type-C ports
|
||
|
|
||
|
Device trees are currently provided for the M1 Mac mini (2020, J274)
|
||
|
and M1 MacBook Pro 13" (2020, J293). The M1 MacBook Air (2020) is
|
||
|
expected to work with the J293 device tree. The M1 iMac (2021) may
|
||
|
work with the J274 device tree.
|
||
|
|
||
|
Building U-Boot
|
||
|
---------------
|
||
|
|
||
|
.. code-block:: bash
|
||
|
|
||
|
$ export CROSS_COMPILE=aarch64-none-elf-
|
||
|
$ make apple_m1_defconfig
|
||
|
$ make
|
||
|
|
||
|
This will build ``u-boot-nodtb.bin`` as well as devices trees for some
|
||
|
of the supported machines. These device trees can be found in the
|
||
|
``arch/arm/dts`` subdirectory of your build.
|
||
|
|
||
|
Image creation
|
||
|
--------------
|
||
|
|
||
|
In order to run U-Boot on an Apple Silicon Mac, U-Boot has to be used
|
||
|
as a payload for the m1n1 bootloader. Instructions for building m1n1
|
||
|
can be found here:
|
||
|
|
||
|
https://github.com/AsahiLinux/docs/wiki/SW%3Am1n1
|
||
|
|
||
|
.. code-block:: bash
|
||
|
|
||
|
$ cat m1n1.macho t8103-j274.dtb u-boot-nodtb.bin > u-boot.macho
|
||
|
|
||
|
This uses ``u-boot-nodtb.bin`` as the device tree is passed to U-Boot
|
||
|
by m1n1 after making some adjustments.
|
||
|
|
||
|
Image installation
|
||
|
------------------
|
||
|
|
||
|
Instructions on how to install U-Boot on your Mac can be found at:
|
||
|
|
||
|
https://github.com/AsahiLinux/docs/wiki/Developer-Quickstart
|
||
|
|
||
|
Just replace ``m1n1.macho`` with ``u-boot.macho`` in the instructions.
|