Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions arch/arm64/boot/dts/apple/t6030-j514s.dts
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@
&bluetooth0 {
brcm,board-type = "apple,texa";
};

&sound {
compatible = "apple,j514-macaudio", "apple,j314-macaudio", "apple,macaudio";
model = "MacBook Pro J514";
};
5 changes: 5 additions & 0 deletions arch/arm64/boot/dts/apple/t6030-j516s.dts
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@
&bluetooth0 {
brcm,board-type = "apple,jura";
};

&sound {
compatible = "apple,j516-macaudio", "apple,j316-macaudio", "apple,macaudio";
model = "MacBook Pro J516";
};
4 changes: 4 additions & 0 deletions arch/arm64/boot/dts/apple/t6030-pmgr.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -552,6 +552,7 @@
#reset-cells = <0>;
label = "mca0";
power-domains = <&ps_sio_adma>, <&ps_audio_p>;
apple,externally-clocked;
};

ps_dcs0: power-controller@320 {
Expand Down Expand Up @@ -669,6 +670,7 @@
#reset-cells = <0>;
label = "mca1";
power-domains = <&ps_sio_adma>, <&ps_audio_p>;
apple,externally-clocked;
};

ps_mca2: power-controller@390 {
Expand All @@ -678,6 +680,7 @@
#reset-cells = <0>;
label = "mca2";
power-domains = <&ps_sio_adma>, <&ps_audio_p>;
apple,externally-clocked;
};

ps_mca3: power-controller@398 {
Expand All @@ -687,6 +690,7 @@
#reset-cells = <0>;
label = "mca3";
power-domains = <&ps_sio_adma>, <&ps_audio_p>;
apple,externally-clocked;
};

ps_ioa1: power-controller@3a0 {
Expand Down
65 changes: 65 additions & 0 deletions arch/arm64/boot/dts/apple/t6030.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -424,6 +424,16 @@
clock-output-names = "clk_200m";
};

/*
* This is a fabulated representation of the input clock
* to NCO since we don't know the true clock tree.
*/
nco_clkref: clock-ref-nco {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-output-names = "nco_ref";
};

reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
Expand Down Expand Up @@ -559,6 +569,54 @@
status = "disabled";
};

sio_dart: iommu@289004000 {
compatible = "apple,t6030-dart", "apple,t8110-dart";
reg = <0x2 0x89004000 0x0 0x4000>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 901 IRQ_TYPE_LEVEL_HIGH>;
#iommu-cells = <1>;
power-domains = <&ps_sio>;
//apple,dma-range = <0x100 0x0001c000 0x2ff 0xfffe4000>;
};

admac: dma-controller@28b200000 {
compatible = "apple,t6030-admac", "apple,t8103-admac";
reg = <0x2 0x8b200000 0x0 0x34000>;
#dma-cells = <1>;
dma-channels = <24>;
interrupts-extended = <0>,
<&aic AIC_IRQ 888 IRQ_TYPE_LEVEL_HIGH>,
<0>,
<0>;
iommus = <&sio_dart 2>;
power-domains = <&ps_sio_adma>;
resets = <&ps_audio_p>;
};

mca: mca@28b400000 {
compatible = "apple,t6030-mca", "apple,t8103-mca";
reg = <0x2 0x8b400000 0x0 0x10000>,
<0x2 0x8b300000 0x0 0x20000>;
clocks = <&nco 0>, <&nco 1>, <&nco 2>, <&nco 3>;
dmas = <&admac 0>, <&admac 1>, <&admac 2>, <&admac 3>,
<&admac 4>, <&admac 5>, <&admac 6>, <&admac 7>,
<&admac 8>, <&admac 9>, <&admac 10>, <&admac 11>,
<&admac 12>, <&admac 13>, <&admac 14>, <&admac 15>;
dma-names = "tx0a", "rx0a", "tx0b", "rx0b",
"tx1a", "rx1a", "tx1b", "rx1b",
"tx2a", "rx2a", "tx2b", "rx2b",
"tx3a", "rx3a", "tx3b", "rx3b";
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 881 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 882 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 883 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 884 IRQ_TYPE_LEVEL_HIGH>;
power-domains = <&ps_audio_p>, <&ps_mca0>, <&ps_mca1>,
<&ps_mca2>, <&ps_mca3>;
resets = <&ps_audio_p>;
#sound-dai-cells = <1>;
};

pmgr_gfx: power-management@290e80000 {
compatible = "apple,t6030-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
#address-cells = <1>;
Expand Down Expand Up @@ -662,6 +720,13 @@
/* child nodes are added in t6030-pmgr.dtsi */
};

nco: clock-controller@350044000 {
compatible = "apple,t6030-nco", "apple,t8103-nco";
reg = <0x3 0x50044000 0x0 0x14000>;
clocks = <&nco_clkref>;
#clock-cells = <1>;
};

aic: interrupt-controller@351000000 {
compatible = "apple,t6030-aic3", "apple,t8122-aic3";
#interrupt-cells = <3>;
Expand Down
10 changes: 10 additions & 0 deletions arch/arm64/boot/dts/apple/t6031-base.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -471,6 +471,16 @@
clock-output-names = "clk_200m";
};

/*
* This is a fabulated representation of the input clock
* to NCO since we don't know the true clock tree.
*/
nco_clkref: clock-ref-nco {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-output-names = "nco_ref";
};

reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
Expand Down
45 changes: 45 additions & 0 deletions arch/arm64/boot/dts/apple/t6031-die0.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@
* Copyright The Asahi Linux Contributors
*/

nco: clock-controller@29003c000 {
compatible = "apple,t6031-nco", "apple,t8103-nco";
reg = <0x2 0x9003c000 0x0 0x14000>;
clocks = <&nco_clkref>;
#clock-cells = <1>;
};

wdt: watchdog@2a02d4000 {
compatible = "apple,t6031-wdt", "apple,t8103-wdt";
reg = <0x2 0xa02d4000 0x0 0x4000>;
Expand Down Expand Up @@ -395,6 +402,44 @@
status = "disabled";
};

admac: dma-controller@393200000 {
compatible = "apple,t6031-admac", "apple,t8103-admac";
reg = <0x3 0x93200000 0x0 0x34000>;
#dma-cells = <1>;
dma-channels = <24>;
interrupts-extended = <0>,
<&aic AIC_IRQ 0 1325 IRQ_TYPE_LEVEL_HIGH>,
<0>,
<0>;
iommus = <&sio_dart 2>;
power-domains = <&ps_sio_adma>;
resets = <&ps_audio_p>;
};

mca: mca@393400000 {
compatible = "apple,t6031-mca", "apple,t8103-mca";
reg = <0x3 0x93400000 0x0 0x10000>,
<0x3 0x93300000 0x0 0x20000>;
clocks = <&nco 0>, <&nco 1>, <&nco 2>, <&nco 3>;
dmas = <&admac 0>, <&admac 1>, <&admac 2>, <&admac 3>,
<&admac 4>, <&admac 5>, <&admac 6>, <&admac 7>,
<&admac 8>, <&admac 9>, <&admac 10>, <&admac 11>,
<&admac 12>, <&admac 13>, <&admac 14>, <&admac 15>;
dma-names = "tx0a", "rx0a", "tx0b", "rx0b",
"tx1a", "rx1a", "tx1b", "rx1b",
"tx2a", "rx2a", "tx2b", "rx2b",
"tx3a", "rx3a", "tx3b", "rx3b";
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 0 1318 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 0 1319 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 0 1320 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 0 1321 IRQ_TYPE_LEVEL_HIGH>;
power-domains = <&ps_audio_p>, <&ps_mca0>, <&ps_mca1>,
<&ps_mca2>, <&ps_mca3>;
resets = <&ps_audio_p>;
#sound-dai-cells = <1>;
};

pcie0: pcie@580000000 {
compatible = "apple,t6031-pcie", "apple,t6020-pcie";
device_type = "pci";
Expand Down
10 changes: 10 additions & 0 deletions arch/arm64/boot/dts/apple/t6031-dieX.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,16 @@
<AIC_IRQ DIE_NO 601 IRQ_TYPE_LEVEL_HIGH>;
};

DIE_NODE(sio_dart): iommu@391004000 {
compatible = "apple,t6031-dart", "apple,t8110-dart";
reg = <0x3 0x91004000 0x0 0x4000>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ DIE_NO 1338 IRQ_TYPE_LEVEL_HIGH>;
#iommu-cells = <1>;
power-domains = <&DIE_NODE(ps_sio)>;
//apple,dma-range = <0x100 0x0001c000 0x2ff 0xfffe4000>;
};

DIE_NODE(pinctrl_ap): pinctrl@2b3000000 {
compatible = "apple,t6031-pinctrl", "apple,t8103-pinctrl", "apple,pinctrl";
reg = <0x2 0xb3000000 0x0 0x4000>;
Expand Down
5 changes: 5 additions & 0 deletions arch/arm64/boot/dts/apple/t6031-j514c.dts
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@
&bluetooth0 {
brcm,board-type = "apple,texa";
};

&sound {
compatible = "apple,j514-macaudio", "apple,j314-macaudio", "apple,macaudio";
model = "MacBook Pro J514";
};
5 changes: 5 additions & 0 deletions arch/arm64/boot/dts/apple/t6031-j516c.dts
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@
&bluetooth0 {
brcm,board-type = "apple,jura";
};

&sound {
compatible = "apple,j516-macaudio", "apple,j316-macaudio", "apple,macaudio";
model = "MacBook Pro J516";
};
4 changes: 4 additions & 0 deletions arch/arm64/boot/dts/apple/t6031-pmgr.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -764,6 +764,7 @@
#reset-cells = <0>;
label = DIE_LABEL(mca0);
power-domains = <&DIE_NODE(ps_audio_p)>, <&DIE_NODE(ps_sio_adma)>;
apple,externally-clocked;
};

DIE_NODE(ps_mca1): power-controller@4f0 {
Expand All @@ -773,6 +774,7 @@
#reset-cells = <0>;
label = DIE_LABEL(mca1);
power-domains = <&DIE_NODE(ps_audio_p)>, <&DIE_NODE(ps_sio_adma)>;
apple,externally-clocked;
};

DIE_NODE(ps_mca2): power-controller@4f8 {
Expand All @@ -782,6 +784,7 @@
#reset-cells = <0>;
label = DIE_LABEL(mca2);
power-domains = <&DIE_NODE(ps_audio_p)>, <&DIE_NODE(ps_sio_adma)>;
apple,externally-clocked;
};

DIE_NODE(ps_mca3): power-controller@500 {
Expand All @@ -791,6 +794,7 @@
#reset-cells = <0>;
label = DIE_LABEL(mca3);
power-domains = <&DIE_NODE(ps_audio_p)>, <&DIE_NODE(ps_sio_adma)>;
apple,externally-clocked;
};

DIE_NODE(ps_msr1): power-controller@508 {
Expand Down
61 changes: 61 additions & 0 deletions arch/arm64/boot/dts/apple/t6032-j575d.dts
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,67 @@
status = "okay";
};

/* Audio */
&i2c1 {
status = "okay";

speaker: codec@38 {
compatible = "ti,sn012776", "ti,tas2764";
reg = <0x38>;
shutdown-gpios = <&pinctrl_ap 28 GPIO_ACTIVE_HIGH>;
#sound-dai-cells = <0>;
interrupts-extended = <&pinctrl_ap 29 IRQ_TYPE_LEVEL_LOW>;
ti,imon-slot-no = <0>;
ti,vmon-slot-no = <2>;
};
};

&i2c2 {
status = "okay";

jack_codec: codec@4b {
compatible = "cirrus,cs42l84";
reg = <0x4b>;
reset-gpios = <&pinctrl_nub 58 GPIO_ACTIVE_HIGH>;
#sound-dai-cells = <0>;
interrupts-extended = <&pinctrl_ap 30 IRQ_TYPE_LEVEL_LOW>;
sound-name-prefix = "Jack";
};
};

&nco_clkref {
clock-frequency = <900000000>;
};

/ {
sound: sound {
compatible = "apple,j575-macaudio", "apple,j375-macaudio", "apple,macaudio";
model = "Mac Studio J575";

dai-link@0 {
link-name = "Speaker";

cpu {
sound-dai = <&mca 0>;
};
codec {
sound-dai = <&speaker>;
};
};

dai-link@1 {
link-name = "Headphone Jack";

cpu {
sound-dai = <&mca 2>;
};
codec {
sound-dai = <&jack_codec>;
};
};
};
};

#include "spi1-nvram.dtsi"
#include "hwmon-common.dtsi"
#include "hwmon-fan-dual.dtsi"
5 changes: 5 additions & 0 deletions arch/arm64/boot/dts/apple/t6034-j514m.dts
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@
&bluetooth0 {
brcm,board-type = "apple,texa";
};

&sound {
compatible = "apple,j514-macaudio", "apple,j314-macaudio", "apple,macaudio";
model = "MacBook Pro J514";
};
5 changes: 5 additions & 0 deletions arch/arm64/boot/dts/apple/t6034-j516m.dts
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@
&bluetooth0 {
brcm,board-type = "apple,jura";
};

&sound {
compatible = "apple,j516-macaudio", "apple,j316-macaudio", "apple,macaudio";
model = "MacBook Pro J516";
};
Loading