forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
135 lines
3.1 KiB
135 lines
3.1 KiB
// SPDX-License-Identifier: GPL-2.0+ OR MIT |
|
/* |
|
* Apple T8103 "M1" SoC |
|
* |
|
* Other names: H13G, "Tonga" |
|
* |
|
* Copyright The Asahi Linux Contributors |
|
*/ |
|
|
|
#include <dt-bindings/interrupt-controller/apple-aic.h> |
|
#include <dt-bindings/interrupt-controller/irq.h> |
|
|
|
/ { |
|
compatible = "apple,t8103", "apple,arm-platform"; |
|
|
|
#address-cells = <2>; |
|
#size-cells = <2>; |
|
|
|
cpus { |
|
#address-cells = <2>; |
|
#size-cells = <0>; |
|
|
|
cpu0: cpu@0 { |
|
compatible = "apple,icestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x0>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu1: cpu@1 { |
|
compatible = "apple,icestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x1>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu2: cpu@2 { |
|
compatible = "apple,icestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x2>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu3: cpu@3 { |
|
compatible = "apple,icestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x3>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu4: cpu@10100 { |
|
compatible = "apple,firestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x10100>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu5: cpu@10101 { |
|
compatible = "apple,firestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x10101>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu6: cpu@10102 { |
|
compatible = "apple,firestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x10102>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
|
|
cpu7: cpu@10103 { |
|
compatible = "apple,firestorm"; |
|
device_type = "cpu"; |
|
reg = <0x0 0x10103>; |
|
enable-method = "spin-table"; |
|
cpu-release-addr = <0 0>; /* To be filled by loader */ |
|
}; |
|
}; |
|
|
|
timer { |
|
compatible = "arm,armv8-timer"; |
|
interrupt-parent = <&aic>; |
|
interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt"; |
|
interrupts = <AIC_FIQ AIC_TMR_GUEST_PHYS IRQ_TYPE_LEVEL_HIGH>, |
|
<AIC_FIQ AIC_TMR_GUEST_VIRT IRQ_TYPE_LEVEL_HIGH>, |
|
<AIC_FIQ AIC_TMR_HV_PHYS IRQ_TYPE_LEVEL_HIGH>, |
|
<AIC_FIQ AIC_TMR_HV_VIRT IRQ_TYPE_LEVEL_HIGH>; |
|
}; |
|
|
|
clk24: clock-24m { |
|
compatible = "fixed-clock"; |
|
#clock-cells = <0>; |
|
clock-frequency = <24000000>; |
|
clock-output-names = "clk24"; |
|
}; |
|
|
|
soc { |
|
compatible = "simple-bus"; |
|
#address-cells = <2>; |
|
#size-cells = <2>; |
|
|
|
ranges; |
|
nonposted-mmio; |
|
|
|
serial0: serial@235200000 { |
|
compatible = "apple,s5l-uart"; |
|
reg = <0x2 0x35200000 0x0 0x1000>; |
|
reg-io-width = <4>; |
|
interrupt-parent = <&aic>; |
|
interrupts = <AIC_IRQ 605 IRQ_TYPE_LEVEL_HIGH>; |
|
/* |
|
* TODO: figure out the clocking properly, there may |
|
* be a third selectable clock. |
|
*/ |
|
clocks = <&clk24>, <&clk24>; |
|
clock-names = "uart", "clk_uart_baud0"; |
|
status = "disabled"; |
|
}; |
|
|
|
aic: interrupt-controller@23b100000 { |
|
compatible = "apple,t8103-aic", "apple,aic"; |
|
#interrupt-cells = <3>; |
|
interrupt-controller; |
|
reg = <0x2 0x3b100000 0x0 0x8000>; |
|
}; |
|
}; |
|
};
|
|
|