Skip to content

arm64: dts: apple: Add PCIe nodes for t6031#504

Merged
jannau merged 2 commits into
AsahiLinux:asahi-wipfrom
yuyuyureka:t6031-pcie
May 30, 2026
Merged

arm64: dts: apple: Add PCIe nodes for t6031#504
jannau merged 2 commits into
AsahiLinux:asahi-wipfrom
yuyuyureka:t6031-pcie

Conversation

@yuyuyureka
Copy link
Copy Markdown

@yuyuyureka yuyuyureka commented May 28, 2026

Adds the pcie0 node on die0 of all M3 Max / Ultra chips (t6031/t6032/t6034), as
well as pwren-gpios for WiFi and Bluetooth of the MacBook Pros using these
chips.

The M3 Ultra t6032, which is part of this family of devices, theoretically
has a pcie1 node, but it's not directly used for anything except nvme, which
is already present in the device tree.

The pwren- and reset-gpios have been sourced from Apple's device trees, and are
confirmed on the MacBook Pro 14", 14-cores, 2023 (j514m).

Once the t6030 pcie0 node is added, we can move the WiFi / Bluetooth parts into
t603x-j514-j516.dtsi, as the pwren-gpios are the same across all
M3 / M3 Pro / M3 Max MacBook Pros.

@yuyuyureka yuyuyureka force-pushed the t6031-pcie branch 3 times, most recently from 0731d14 to 85c8c3e Compare May 28, 2026 21:32
#iommu-cells = <1>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 0 1492 IRQ_TYPE_LEVEL_HIGH>;
power-domains = <&ps_apcie_sys_gp>;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should have 4 pm domains, right?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure? ps_apcie_sys_gp depends on ps_apcie_gp, ps_afnc3_lw0, ps_afnc3_ls, ps_afnc3_ioa (transitively).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if i am reading the adt right, it also wants ps_apcie_sys_ge, ps_apcie_sys_st, and ps_apcie_sys_st1

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not convinced that ps_apcie_sys_st and ps_apcie_sys_st1 are needed. nvme power-states also has dependencies on apcie_*{ge,gp} but worked without them. ps_apcie_sys_ge is missing

@yuyuyureka yuyuyureka force-pushed the t6031-pcie branch 3 times, most recently from a42322e to 56aa271 Compare May 28, 2026 21:43
@yuyuyureka yuyuyureka marked this pull request as draft May 28, 2026 21:55
@yuyuyureka yuyuyureka force-pushed the t6031-pcie branch 2 times, most recently from fbbc940 to c2d55b6 Compare May 30, 2026 09:27
*/
&port00 {
bus-range = <1 1>;
pwren-gpios = <&smc_gpio 19 GPIO_ACTIVE_HIGH>;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pwren-gpios need top be in a separate commit as that's not upstreamable. Adding the pcie ports to the device .dts is also easier to manage as separate commit.

@jannau
Copy link
Copy Markdown
Member

jannau commented May 30, 2026

partially merged to asahi-wip. I added ps_apcie_sys_ge to the power-domains but skipped all device changes. These can now be done in t603x-j514-j516.dtsi as t6030.dtsi has PCIe nodes as well.

@yuyuyureka yuyuyureka force-pushed the t6031-pcie branch 3 times, most recently from 37c4a7e to 47a392c Compare May 30, 2026 12:34
@yuyuyureka yuyuyureka marked this pull request as ready for review May 30, 2026 12:34
Comment thread arch/arm64/boot/dts/apple/t603x-j514-j516.dtsi
@jannau jannau merged commit fda130d into AsahiLinux:asahi-wip May 30, 2026
@yuyuyureka yuyuyureka deleted the t6031-pcie branch May 30, 2026 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants