Skip to content

Commit e8e014b

Browse files
authored
feature-support: reset M3/M4 support lists (#257)
I marked all the M3/M4 features as 'TBA', except those M3 features where someone is actively working on them, which are now 'WIP'. Signed-off-by: Alyssa Milburn <amilburn@zall.org>
1 parent cfb2b6b commit e8e014b

File tree

2 files changed

+63
-97
lines changed

2 files changed

+63
-97
lines changed

docs/platform/feature-support/m3.md

Lines changed: 43 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -18,107 +18,90 @@ If a feature is not ready, then there is no estimation on when it will be ready.
1818
- [SoC blocks](#soc-blocks)
1919
- [M3 devices](#m3-devices)
2020
- [M3 Pro/Max devices](#m3-promax-devices)
21-
- [Notes](#notes)
2221

2322
## SoC blocks
2423
These are features/hardware blocks that are present on all devices with the given SoC.
2524

2625
| | M3<br>(T8122) | M3 Pro/Max<br>(T603x) |
2726
|------------------|:--------------------:|:---------------------------:|
2827
| DCP | TBA | TBA |
29-
| USB2 (TB ports) | linux-asahi | linux-asahi |
30-
| USB3 (TB ports) | linux-asahi | linux-asahi |
28+
| USB2 (TB ports) | WIP | WIP |
29+
| USB3 (TB ports) | WIP | WIP |
3130
| Thunderbolt | TBA | TBA |
3231
| DP Alt Mode | WIP | WIP |
33-
| GPU | TBA | TBA |
32+
| GPU | WIP | WIP |
3433
| Video Decoder | TBA | TBA |
35-
| NVMe | 5.19 | 5.19 |
36-
| PCIe | TBA | TBA |
34+
| NVMe | WIP | WIP |
35+
| PCIe | WIP | WIP |
3736
| PCIe (GE) | - | - |
38-
| cpufreq | 6.2 | 6.2 |
39-
| cpuidle | linux-asahi ([notes](#cpuidle-situation)) | linux-asahi ([notes](#cpuidle-situation)) |
40-
| Suspend/sleep | asahi-edge | asahi-edge |
37+
| cpufreq | TBA | TBA |
38+
| cpuidle | TBA | TBA |
39+
| Suspend/sleep | TBA | TBA |
4140
| Video Encoder | TBA | TBA |
4241
| ProRes Codec | TBA | TBA |
43-
| AICv3 | TBA | TBA |
42+
| AICv3 | WIP | WIP |
4443
| DART | TBA | TBA |
4544
| PMU | TBA | TBA |
46-
| UART | 5.13 | 5.13 |
47-
| Watchdog | 5.17 | 5.17 |
48-
| I<sup>2</sup>C | 5.16 | 5.16 |
49-
| GPIO | 5.16 | 5.16 |
50-
| USB-PD | 5.16 | 5.16 |
51-
| MCA | 6.1 / 6.4 (dts) | linux-asahi |
52-
| SPI | linux-asahi | linux-asahi |
53-
| SPI NOR | linux-asahi | linux-asahi |
54-
| SMC | linux-asahi | linux-asahi |
55-
| SPMI | linux-asahi | linux-asahi |
56-
| RTC | linux-asahi | linux-asahi |
45+
| UART | WIP | WIP |
46+
| Watchdog | TBA | TBA |
47+
| I<sup>2</sup>C | TBA | TBA |
48+
| GPIO | TBA | TBA |
49+
| USB-PD | WIP | WIP |
50+
| MCA | TBA | TBA |
51+
| SPI | TBA | TBA |
52+
| SPI NOR | TBA | TBA |
53+
| SMC | TBA | TBA |
54+
| SPMI | WIP | WIP |
55+
| RTC | TBA | TBA |
5756
| SEP | WIP | WIP |
58-
| Neural Engine | out of tree ([notes](#ane-driver)) | out of tree ([notes](#ane-driver)) |
57+
| Neural Engine | TBA | TBA |
5958

6059

6160
## M3 devices
6261
| | iMac<br>(2023) | MacBook Pro<br>(14-inch, late 2023) | MacBook Air<br>(13” and 15” 2024) |
6362
|--------------------|:------------------:|:-----------------------------------:|:------------------------------:|
64-
| Installer | no | no | |
65-
| Devicetree | TBA | TBA | |
66-
| Main display | TBA | TBA | |
67-
| Keyboard | - | TBA | |
68-
| KB backlight | - | TBA | |
69-
| Touchpad | - | TBA | |
70-
| Brightness | TBA | TBA | |
71-
| Battery info | - | TBA | |
72-
| WiFi | TBA | TBA | |
73-
| Bluetooth | TBA | TBA | |
63+
| Installer | no | no | no |
64+
| Devicetree | TBA | WIP | WIP |
65+
| Main display | TBA | TBA | TBA |
66+
| Keyboard | - | TBA | WIP |
67+
| KB backlight | - | TBA | WIP |
68+
| Touchpad | - | TBA | WIP |
69+
| Brightness | TBA | TBA | TBA |
70+
| Battery info | - | TBA | TBA |
71+
| WiFi | TBA | TBA | WIP |
72+
| Bluetooth | TBA | TBA | TBA |
7473
| HDMI Out | - | TBA | - |
75-
| 3.5mm jack | TBA | TBA | |
76-
| Speakers | TBA | TBA | |
77-
| Microphones | TBA | TBA | |
78-
| Webcam | TBA | TBA | |
74+
| 3.5mm jack | TBA | TBA | TBA |
75+
| Speakers | TBA | TBA | TBA |
76+
| Microphones | TBA | TBA | TBA |
77+
| Webcam | TBA | TBA | TBA |
7978
| SD card slot | - | TBA | - |
8079
| 1Gbps Ethernet | TBA | - | - |
8180
| 10Gbps Ethernet | - | - | - |
82-
| TouchID | - | TBA | |
81+
| TouchID | - | TBA | TBA |
8382

8483
## M3 Pro/Max devices
8584
| | MacBook Pro<br>(14/16-inch, late 2023) |
8685
|--------------------|:---------------------------------:|
8786
| Installer | no |
8887
| Devicetree | TBA |
8988
| Main display | TBA |
90-
| Keyboard | linux-asahi |
91-
| KB backlight | linux-asahi |
92-
| Touchpad | linux-asahi |
89+
| Keyboard | WIP |
90+
| KB backlight | WIP |
91+
| Touchpad | WIP |
9392
| Brightness | TBA |
94-
| Battery info | linux-asahi |
93+
| Battery info | TBA |
9594
| WiFi | TBA |
9695
| Bluetooth | TBA |
9796
| HDMI Out | TBA |
98-
| 3.5mm jack | linux-asahi |
99-
| Speakers | WIP |
97+
| 3.5mm jack | TBA |
98+
| Speakers | TBA |
10099
| Microphones | TBA |
101100
| Webcam | TBA |
102-
| SD card slot | 5.17 |
101+
| SD card slot | TBA |
103102
| 1Gbps Ethernet | - |
104103
| 10Gbps Ethernet | - |
105104
| TouchID | TBA |
106105

107106
Note: Many peripherals depend on DART and PCIe support.
108107

109-
110-
## Notes
111-
112-
### cpuidle situation
113-
Some power management functionality on ARM machines is controlled via the PSCI interface. The
114-
kernel has a specific way of talking to PSCI that is not compatible with Apple Silicon, and a
115-
discussion is required with upstream maintainers in order to figure out the best way forward. Given
116-
that this discussion has failed to materialise for two years, the decision has been
117-
made to hack together a driver that directly calls WFI/WFE instructions in order to bring
118-
this functionality to Asahi Linux. This greatly improves the UX on laptops when coupled with
119-
energy-aware scheduling, as it resolves the issue of the machines running warm to the touch
120-
and significantly improves battery life. This can never be upstreamed, however the hope is
121-
that this hacked together driver becomes unnecessary at some point in the near future.
122-
123-
### ANE driver
124-
An out of tree [kernel module](https://github.com/eiln/ane/tree/main) is available. It will be merged into linux-asahi.

docs/platform/feature-support/m4.md

Lines changed: 20 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -18,44 +18,43 @@ If a feature is not ready, then there is no estimation on when it will be ready.
1818
- [SoC blocks](#soc-blocks)
1919
- [M4 devices](#m4-devices)
2020
- [M4 Pro/Max devices](#m4-promax-devices)
21-
- [Notes](#notes)
2221

2322
## SoC blocks
2423
These are features/hardware blocks that are present on all devices with the given SoC.
2524

2625
| | M4<br>(T8132) | M4 Pro/Max<br>(T604x) |
2726
|------------------|:--------------------:|:---------------------------:|
2827
| DCP | TBA | TBA |
29-
| USB2 (TB ports) | linux-asahi | linux-asahi |
30-
| USB3 (TB ports) | linux-asahi | linux-asahi |
28+
| USB2 (TB ports) | TBA | TBA |
29+
| USB3 (TB ports) | TBA | TBA |
3130
| Thunderbolt | TBA | TBA |
32-
| DP Alt Mode | WIP | WIP |
31+
| DP Alt Mode | TBA | TBA |
3332
| GPU | TBA | TBA |
3433
| Video Decoder | TBA | TBA |
35-
| NVMe | 5.19 | 5.19 |
34+
| NVMe | TBA | TBA |
3635
| PCIe | TBA | TBA |
3736
| PCIe (GE) | - | - |
38-
| cpufreq | 6.2 | 6.2 |
39-
| cpuidle | linux-asahi ([notes](#cpuidle-situation)) | linux-asahi ([notes](#cpuidle-situation)) |
40-
| Suspend/sleep | asahi-edge | asahi-edge |
37+
| cpufreq | TBA | TBA |
38+
| cpuidle | TBA | TBA |
39+
| Suspend/sleep | TBA | TBA |
4140
| Video Encoder | TBA | TBA |
4241
| ProRes Codec | TBA | TBA |
4342
| AICv3 | TBA | TBA |
4443
| DART | TBA | TBA |
4544
| PMU | TBA | TBA |
46-
| UART | 5.13 | 5.13 |
47-
| Watchdog | 5.17 | 5.17 |
48-
| I<sup>2</sup>C | 5.16 | 5.16 |
49-
| GPIO | 5.16 | 5.16 |
50-
| USB-PD | 5.16 | 5.16 |
51-
| MCA | 6.1 / 6.4 (dts) | linux-asahi |
52-
| SPI | linux-asahi | linux-asahi |
53-
| SPI NOR | linux-asahi | linux-asahi |
54-
| SMC | linux-asahi | linux-asahi |
55-
| SPMI | linux-asahi | linux-asahi |
56-
| RTC | linux-asahi | linux-asahi |
57-
| SEP | WIP | WIP |
58-
| Neural Engine | out of tree ([notes](#ane-driver)) | out of tree ([notes](#ane-driver)) |
45+
| UART | TBA | TBA |
46+
| Watchdog | TBA | TBA |
47+
| I<sup>2</sup>C | TBA | TBA |
48+
| GPIO | TBA | TBA |
49+
| USB-PD | TBA | TBA |
50+
| MCA | TBA | TBA |
51+
| SPI | TBA | TBA |
52+
| SPI NOR | TBA | TBA |
53+
| SMC | TBA | TBA |
54+
| SPMI | TBA | TBA |
55+
| RTC | TBA | TBA |
56+
| SEP | TBA | TBA |
57+
| Neural Engine | TBA | TBA |
5958

6059

6160
## M4 devices
@@ -104,19 +103,3 @@ These are features/hardware blocks that are present on all devices with the give
104103

105104
Note: Many peripherals depend on DART and PCIe support.
106105

107-
108-
## Notes
109-
110-
### cpuidle situation
111-
Some power management functionality on ARM machines is controlled via the PSCI interface. The
112-
kernel has a specific way of talking to PSCI that is not compatible with Apple Silicon, and a
113-
discussion is required with upstream maintainers in order to figure out the best way forward. Given
114-
that this discussion has failed to materialise for two years, the decision has been
115-
made to hack together a driver that directly calls WFI/WFE instructions in order to bring
116-
this functionality to Asahi Linux. This greatly improves the UX on laptops when coupled with
117-
energy-aware scheduling, as it resolves the issue of the machines running warm to the touch
118-
and significantly improves battery life. This can never be upstreamed, however the hope is
119-
that this hacked together driver becomes unnecessary at some point in the near future.
120-
121-
### ANE driver
122-
An out of tree [kernel module](https://github.com/eiln/ane/tree/main) is available. It will be merged into linux-asahi.

0 commit comments

Comments
 (0)