Skip to content

Commit e2671ad

Browse files
committed
Fix more links
Signed-off-by: Davide Cavalca <[email protected]>
1 parent 932a0a8 commit e2671ad

8 files changed

Lines changed: 23 additions & 23 deletions

docs/Accelerator-Engines.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The SoC has several onboard accelerator units, this is a useful list of the names and what they refer to. Most of the accelerators run firmware that can be found in the pre-boot partition `/System/Volumes/Preboot/[UUID]/restore/Firmware`, packaged as im4p files which may be extracted with https://github.com/19h/ftab-dump/blob/master/rkos.py and some dd.
22

3-
*Update none of the ANE, AVE, ADT im4p's extract with that. I'm not sure which ones do. You are better off following the im4p extraction steps in [[ADT wiki]](https://github.com/AsahiLinux/docs/wiki/FW%3AADT). Can we make a progress matrix regarding firmware?
3+
*Update none of the ANE, AVE, ADT im4p's extract with that. I'm not sure which ones do. You are better off following the im4p extraction steps in [ADT wiki](FW-ADT.md). Can we make a progress matrix regarding firmware?
44

55
## Names
66

@@ -25,4 +25,4 @@ Names can be formatted the following ways depending on their official-ness:
2525
* **PMP**: "Power Management Processor?". Handles power functionality
2626

2727
### S
28-
* **SEP**: **Secure Enclave Processor**. The M1's built-in HSM/TPM/etc device. Handles Touch ID and most crypto, as well as boot policy decisions. Harmless to Linux, but we can use its features if we want to. Contrast to AP.
28+
* **SEP**: **Secure Enclave Processor**. The M1's built-in HSM/TPM/etc device. Handles Touch ID and most crypto, as well as boot policy decisions. Harmless to Linux, but we can use its features if we want to. Contrast to AP.

docs/Developer-Quickstart.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
This guide documents a manual installation process that is only required for kernel developers doing reverse engineering of macOS drivers using the m1n1 hypervisor.
44

5-
If you are a more typical developer and you want to help work on the kernel or just experiment with the platform, and are happy doing tethered boots via USB (uploading the kernel from another machine), have a look [[over here|Tethered Boot Setup (For Developers)]].
5+
If you are a more typical developer and you want to help work on the kernel or just experiment with the platform, and are happy doing tethered boots via USB (uploading the kernel from another machine), have a look [over here][Tethered-Boot-Setup-For-Developers.md].
66

77
If you are an end user or you would otherwise like to set up a stand-alone install, stop now. It isn't ready yet. It will be soon. Just hang tight.
88

@@ -323,7 +323,7 @@ picocom /dev/ttyACM1
323323

324324
Note that this method cannot (yet) be used as an earlycon for Linux, and USB gadget support is not yet in our main Linux tree either.
325325

326-
* See [Running Linux via USB cable](https://github.com/AsahiLinux/docs/wiki/SW:Linux#running-linux-via-usb-cable) for some more details
326+
* See [Running Linux via USB cable](SW-Linux.md#running-linux-via-usb-cable) for some more details
327327

328328
## Using m1n1
329329

@@ -465,7 +465,7 @@ Run `python shell.py` for an interactive debug shell.
465465
00000040 *
466466
00003320 00000000 00000000 00000000 00000001 00000000 00000000 00000000 00000000
467467
[...]
468-
>>> u.msr(DAIF, u.mrs(DAIF) & ~0x3c0) # Enable IRQs
468+
>>> u.msr(DAIF, u.mrs(DAIF) & ~0x3c0) # Enable IRQs
469469
>>> mon.add(AIC, 0x8000) # Monitor the AIC registers
470470
[...]
471471
>>> write32(AIC + 0x2008, 1) # Fire off an IPI to ourselves
@@ -681,4 +681,4 @@ Enter 'help' for a list of built-in commands.
681681

682682
</details>
683683

684-
The script currently supports input and output for the TTY passthrough.
684+
The script currently supports input and output for the TTY passthrough.

docs/Distro-Differences-from-Arch-Linux-ARM.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@ This is a lightweight remix of Arch Linux ARM.
3838

3939
### [linux-asahi](https://github.com/AsahiLinux/PKGBUILDs/tree/main/linux-asahi)
4040

41-
Our main kernel package. Usually built from the `asahi` branch on [AsahiLinux/linux](https://github.com/AsahiLinux/linux). Frequently updated and often based on bleeding-edge kernels (linux-next). Reference kernel config is [here](https://github.com/AsahiLinux/docs/wiki/Reference-Asahi-kernel-config).
41+
Our main kernel package. Usually built from the `asahi` branch on [AsahiLinux/linux](https://github.com/AsahiLinux/linux). Frequently updated and often based on bleeding-edge kernels (linux-next). Reference kernel config is [here](Reference-Asahi-kernel-config.md).
4242

4343
This kernel is built with a large assortment of USB device drivers to allow for external devices, but only the PCI/SPI/I²C/SPMI/etc drivers useful for Apple machines (PCI drivers will be enabled once Thunderbolt works). It is not intended to be bootable on non-Apple systems.
4444

45-
[Notes on modifying your kernel configuration to include Asahi](https://github.com/AsahiLinux/docs/wiki/Kernel-config-notes-for-distros)
45+
[Notes on modifying your kernel configuration to include Asahi](Kernel-config-notes-for-distros.md)
4646

4747
If you need .config options not yet enabled, feel free to request it on IRC or as an issue [here](https://github.com/AsahiLinux/PKGBUILDs).
4848

docs/Glossary.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ If you want to collect a large set of terms specific to a sub-field (such as GPU
9393

9494
### R
9595
* **RecoveryOS:** The recovery environment, which can either be a recovery image paired to an OS install (located inside an APFS subvolume) or the global recovery image installed in the last APFS container on disk. macOS 11.x uses the global image by default, while macOS 12.0 and newer uses a paired recoveryOS.
96-
* **RestoreOS:** The restore environment, loaded onto the device when "reviving" it through DFU mode by Apple Configurator. [more info](more-info.md)(https://www.theiphonewiki.com/wiki/Restore_Ramdisk)
96+
* **RestoreOS:** The restore environment, loaded onto the device when "reviving" it through DFU mode by Apple Configurator. [more info](https://www.theiphonewiki.com/wiki/Restore_Ramdisk)
9797
* **ROM** is an acronym for Read-Only Memory. It refers to computer memory chips containing permanent or semi-permanent data.
9898
* **RTKit:** Apple's proprietary real-time operating system. Most of the accelerators (AGX, ANE, AOP, DCP, AVE, PMP) run RTKit on an internal processor. The string "RTKSTACKRTKSTACK" is characteristic of a firmware containing RTKit.
9999
* **RTOS:** Real-time operating system.

docs/SW-Linux-NVME.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ sudo cp /usr/bin/qemu-aarch64-static debinst/usr/bin
2323
* Install the rootfs you created above onto the drive `sudo cp -a debinst/. /mnt/img`
2424
* Unmount the drive `sudo umount /mnt/img`
2525
### Boot with USB drive as root
26-
* Back to [booting over USB cable](https://github.com/AsahiLinux/docs/wiki/SW%3ALinux#running-linux-via-usb-cable)
26+
* Back to [booting over USB cable](SW-Linux.md#running-linux-via-usb-cable)
2727
* Make sure you have the latest m1n1.macho loaded `python3 proxyclient/tools/chainload.py build/m1n1.macho`
2828
* Build a kernel with builtin features (check for =m and change to =y in .config)
2929
* In particular need CONFIG_EXT4_FS=y is needed to boot!
@@ -52,4 +52,4 @@ python3 proxyclient/tools/linux.py -b 'earlycon console=tty0 console=tty0 debug
5252
* Unmount it `umount /mnt`
5353
* Then try booting via the USB cable with your new root filesystem on the nvme
5454
```
55-
python3 proxyclient/tools/linux.py -b 'earlycon console=tty0 console=tty0 debug net.ifnames=0 rw root=/dev/nvme0n1p6 rootfstype=ext4' Image.gz t8103-j313.dtb
55+
python3 proxyclient/tools/linux.py -b 'earlycon console=tty0 console=tty0 debug net.ifnames=0 rw root=/dev/nvme0n1p6 rootfstype=ext4' Image.gz t8103-j313.dtb

docs/SW-Linux-USBKeyboard.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@
88
* Then I used a Type-C to Type-A adapter to plug in a normal old USB Dell keyboard and enter commands into the /bin/sh running.
99
![Linux running on M1 macbook with input via external USB keyboard](https://github.com/amworsley/asahi-wiki/blob/main/images/linuxOnM1.png)
1010

11-
* You can go one step further and try [booting a USB drive](https://github.com/AsahiLinux/docs/wiki/SW:Linux:USB-drive)
11+
* You can go one step further and try [booting a USB drive](SW-Linux-USB-drive.md)

docs/SW-Linux-WiFi.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@
77
* Grab the firmware into a tar file
88
`python3 -m firmware.wifi /usr/share/firmware/wifi /tmp/linux-firmware.tar`
99
## Install firmware
10-
* Under Linux booted via [USB drive](https://github.com/AsahiLinux/docs/wiki/SW:Linux:USB-drive) or [nvme](https://github.com/AsahiLinux/docs/wiki/SW:Linux:NVME) rootfs Create the firmware directory:
10+
* Under Linux booted via [USB drive](SW-Linux-USB-drive.md) or [nvme](SW-Linux-NVME.md) rootfs Create the firmware directory:
1111
`sudo mkdir -p /usr/lib/firmware`
1212
* Install the wifi firmware you extracted earlier
1313
`sudo tar -C /usr/lib/firmware -xf firmware.tar`
1414
* Install any other networking / WiFi packages you will need. e.g. wpasupplicant
1515
## Enable WiFi
1616
* You need to have built a Asahi Linux kernel with the M1 WiFI support such as the [wifi/take5](https://github.com/AsahiLinux/linux/tree/wifi/take5) branch
17-
* Before you boot that kernel via [m1n1 over USB](https://github.com/AsahiLinux/docs/wiki/SW:Linux#directly) - run this script to enable the WiFi hardware
17+
* Before you boot that kernel via [m1n1 over USB](SW-Linux.md#directly) - run this script to enable the WiFi hardware
1818
`python3 ./proxyclient/experiments/pcie_enable_devices.py`
1919
* There are other ways to do this - this what I did under Debian linux
2020
* Now after the linux kernel has booted you should be able to see a WiFi device (wlan0) via the usual tools
@@ -28,4 +28,4 @@ iface wlan0 inet dhcp
2828
wpa-psk YOUR_WIFI_PASSPHRASE
2929
```
3030
* Then start up the interface (wlan0) via (note -v => verbose info)
31-
`sudo ifup -v wlan0`
31+
`sudo ifup -v wlan0`

docs/SW-Linux.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,13 @@ cp ../linux/arch/arm64/boot/dts/apple/t8103-j274.dtb t8103-j274.dtb
2626
### keyboard + nvme working
2727
* Snapshot of [rev a2281d64fdbc](https://github.com/amworsley/AsahiLinux/tree/asahi-kbd) with config such as [this one](https://raw.githubusercontent.com/amworsley/asahi-wiki/main/images/config-keyboard+nvme)
2828
## Boot with your USB cables plugged in
29-
* Plug your USB cables/hubs/adapters **before** booting your Mac as m1n1/linux doesn't do the USB low level PHY setup yet. Let the iBoot do this when it boots to m1n1 you installed via your [setup of boot to m1n1](https://github.com/AsahiLinux/docs/wiki/Developer-Quickstart#setup)
29+
* Plug your USB cables/hubs/adapters **before** booting your Mac as m1n1/linux doesn't do the USB low level PHY setup yet. Let the iBoot do this when it boots to m1n1 you installed via your [setup of boot to m1n1](Developer-Quickstart.md#setup)
3030
* If m1n1 C code has been updated since the set up you should chain load the new .macho image
3131
```
3232
python3.9 proxyclient/tools/chainload.py build/m1n1.macho
3333
```
3434
# Running Linux via USB cable
35-
* Connecting [USB Type-C to Type A/C cable](https://github.com/AsahiLinux/docs/wiki/Developer-Quickstart#usb-gadget-mode-using-a-standard-usb-cable) to M1 Mac provides two USB serial interfaces on the other computer![USB Type-C to Type A cable connecting M1 MacBookAir and 2012 MacBootAir Pro](https://raw.githubusercontent.com/amworsley/asahi-wiki/main/images/usb-setup.png)
35+
* Connecting [USB Type-C to Type A/C cable](Developer-Quickstart.md#usb-gadget-mode-using-a-standard-usb-cable) to M1 Mac provides two USB serial interfaces on the other computer![USB Type-C to Type A cable connecting M1 MacBookAir and 2012 MacBootAir Pro](https://raw.githubusercontent.com/amworsley/asahi-wiki/main/images/usb-setup.png)
3636
* This can be connected to via the python proxy tool to boot up Linux directly or load up a macho binary like an updated m1n1 version or combined with a Linux image
3737
* Get a 27Mb initrd from debian arm64 installer
3838
```
@@ -385,12 +385,12 @@ Still running 21
385385
</details>
386386

387387
# Root filesystem options
388-
* [initrd + USB keyboard](https://github.com/AsahiLinux/docs/wiki/SW:Linux:USBKeyboard#linux-usb-keyboard)
389-
* [USB drive boot](https://github.com/AsahiLinux/docs/wiki/SW:Linux:USB-drive)
390-
* [USB Drive to NVME partition](https://github.com/AsahiLinux/docs/wiki/SW:Linux:NVME)
388+
* [initrd + USB keyboard](SW-Linux-USBKeyboard.md#linux-usb-keyboard)
389+
* [USB drive boot](SW-Linux-USB-drive.md)
390+
* [USB Drive to NVME partition](SW-Linux-NVME.md)
391391
# Other features
392-
* [WiFi Support](https://github.com/AsahiLinux/docs/wiki/SW:Linux:WiFi)
393-
* [X11 Support](https://github.com/AsahiLinux/docs/wiki/SW:Linux:X11)
392+
* [WiFi Support](SW-Linux-WiFi.md)
393+
* [X11 Support](SW-Linux-X11.md)
394394
# Missing
395395
* Sound
396-
* Power management - do **NOT** shut the lid
396+
* Power management - do **NOT** shut the lid

0 commit comments

Comments
 (0)