mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-15 23:14:31 +08:00
839c291de9
1. Support for Fixed Virtual Platforms(FVP) Base RevC model to enable development of software around the new features available 2. Addition of dynamic-power-coefficient information for CPUs on Juno 3. Miscellaneous changes like re-ordering device nodes, using existing macros for GIC flags in interrupt-maps and using list instead of tuple(which is wrong but works as number of interrupt cells is 1) for mmci interrupts -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAlxRk+0ACgkQAEG6vDF+ 4pis2A//UfGqSJ4xYdw9kSrM1kSXP1KmV7pm8iIDiPicK1Idi/W9qexrC8Fyp9uC 5nwgsDKrNOv/trnsovMjqXtfpAV2as+4addETAoO/kmXIHXQKBnsBIGmdhyXHeiT YEaSqoOnRo/s0sNyX5hY76TIzkiUxexD+5LBN90fCblURSQ9Cf40BRqR2BmkSOhD mFklMUborkz8qvahiQsdlWEdZvY35s+q6i7GUwcAsTpv6dFALUJrTxFNwlnXNFPL MGcIw5cmRb4wQ0BBDwigI00PJIL+XkyFLfvKtT+dN84bi/VqYb/8lrYw1kArQDfj jA7xF+oo75SGUV8Eyygcu/0VeLtufUakEZnEP5kQ3hlNNdwSyLJRRpUlT4KOmKTO AcbNdbkDi9LSSQu8JOoiLRYQFIHK+mXWjYhS0FJoewNdNm+O8IspnU2Pnn9UpnWf rfCPPiH0MPdaKkTeBJtHI0OpP1daFR1MdDcme6M4fukShK2TMC9w8aqOZZkx1ujv nlsvJ/JukAy+Vbsu1HSq/apWs0Xj6vM4xyGmQgd09UWJKny5YpurUX6opWs8QTkh c7nrh19jPLep+ItJl/v8FaoNRNksfLS+pNGiFpEYAIzdlPCNKr909UC+Mh/gzu64 OcHRHL8lYmVmlQq4Q2+XSr/WlOxz69/fSGow5wLvxFq7idQLEP4= =UqJG -----END PGP SIGNATURE----- Merge tag 'juno-updates-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into arm/dt ARMv8 Juno/fast models updates for v5.1 1. Support for Fixed Virtual Platforms(FVP) Base RevC model to enable development of software around the new features available 2. Addition of dynamic-power-coefficient information for CPUs on Juno 3. Miscellaneous changes like re-ordering device nodes, using existing macros for GIC flags in interrupt-maps and using list instead of tuple(which is wrong but works as number of interrupt cells is 1) for mmci interrupts * tag 'juno-updates-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux: arm64: dts: juno: Add cpu dynamic-power-coefficient information arm64: dts: fast models: Add DTS fo Base RevC FVP arm64: dts: juno/fast models: sort couple of device nodes arm64: dts: models: use list instead of tuple for mmci interrupts arm64: dts: juno/fast models: using GIC macros instead of hardcoded values Signed-off-by: Arnd Bergmann <arnd@arndb.de>
298 lines
5.6 KiB
Plaintext
298 lines
5.6 KiB
Plaintext
/*
|
|
* ARM Ltd. Juno Platform
|
|
*
|
|
* Copyright (c) 2013-2014 ARM Ltd.
|
|
*
|
|
* This file is licensed under a dual GPLv2 or BSD license.
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
#include "juno-base.dtsi"
|
|
|
|
/ {
|
|
model = "ARM Juno development board (r0)";
|
|
compatible = "arm,juno", "arm,vexpress";
|
|
interrupt-parent = <&gic>;
|
|
#address-cells = <2>;
|
|
#size-cells = <2>;
|
|
|
|
aliases {
|
|
serial0 = &soc_uart0;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
psci {
|
|
compatible = "arm,psci-0.2";
|
|
method = "smc";
|
|
};
|
|
|
|
cpus {
|
|
#address-cells = <2>;
|
|
#size-cells = <0>;
|
|
|
|
cpu-map {
|
|
cluster0 {
|
|
core0 {
|
|
cpu = <&A57_0>;
|
|
};
|
|
core1 {
|
|
cpu = <&A57_1>;
|
|
};
|
|
};
|
|
|
|
cluster1 {
|
|
core0 {
|
|
cpu = <&A53_0>;
|
|
};
|
|
core1 {
|
|
cpu = <&A53_1>;
|
|
};
|
|
core2 {
|
|
cpu = <&A53_2>;
|
|
};
|
|
core3 {
|
|
cpu = <&A53_3>;
|
|
};
|
|
};
|
|
};
|
|
|
|
idle-states {
|
|
entry-method = "psci";
|
|
|
|
CPU_SLEEP_0: cpu-sleep-0 {
|
|
compatible = "arm,idle-state";
|
|
arm,psci-suspend-param = <0x0010000>;
|
|
local-timer-stop;
|
|
entry-latency-us = <300>;
|
|
exit-latency-us = <1200>;
|
|
min-residency-us = <2000>;
|
|
};
|
|
|
|
CLUSTER_SLEEP_0: cluster-sleep-0 {
|
|
compatible = "arm,idle-state";
|
|
arm,psci-suspend-param = <0x1010000>;
|
|
local-timer-stop;
|
|
entry-latency-us = <400>;
|
|
exit-latency-us = <1200>;
|
|
min-residency-us = <2500>;
|
|
};
|
|
};
|
|
|
|
A57_0: cpu@0 {
|
|
compatible = "arm,cortex-a57";
|
|
reg = <0x0 0x0>;
|
|
device_type = "cpu";
|
|
enable-method = "psci";
|
|
i-cache-size = <0xc000>;
|
|
i-cache-line-size = <64>;
|
|
i-cache-sets = <256>;
|
|
d-cache-size = <0x8000>;
|
|
d-cache-line-size = <64>;
|
|
d-cache-sets = <256>;
|
|
next-level-cache = <&A57_L2>;
|
|
clocks = <&scpi_dvfs 0>;
|
|
cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
|
|
capacity-dmips-mhz = <1024>;
|
|
dynamic-power-coefficient = <530>;
|
|
};
|
|
|
|
A57_1: cpu@1 {
|
|
compatible = "arm,cortex-a57";
|
|
reg = <0x0 0x1>;
|
|
device_type = "cpu";
|
|
enable-method = "psci";
|
|
i-cache-size = <0xc000>;
|
|
i-cache-line-size = <64>;
|
|
i-cache-sets = <256>;
|
|
d-cache-size = <0x8000>;
|
|
d-cache-line-size = <64>;
|
|
d-cache-sets = <256>;
|
|
next-level-cache = <&A57_L2>;
|
|
clocks = <&scpi_dvfs 0>;
|
|
cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
|
|
capacity-dmips-mhz = <1024>;
|
|
dynamic-power-coefficient = <530>;
|
|
};
|
|
|
|
A53_0: cpu@100 {
|
|
compatible = "arm,cortex-a53";
|
|
reg = <0x0 0x100>;
|
|
device_type = "cpu";
|
|
enable-method = "psci";
|
|
i-cache-size = <0x8000>;
|
|
i-cache-line-size = <64>;
|
|
i-cache-sets = <256>;
|
|
d-cache-size = <0x8000>;
|
|
d-cache-line-size = <64>;
|
|
d-cache-sets = <128>;
|
|
next-level-cache = <&A53_L2>;
|
|
clocks = <&scpi_dvfs 1>;
|
|
cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
|
|
capacity-dmips-mhz = <578>;
|
|
dynamic-power-coefficient = <140>;
|
|
};
|
|
|
|
A53_1: cpu@101 {
|
|
compatible = "arm,cortex-a53";
|
|
reg = <0x0 0x101>;
|
|
device_type = "cpu";
|
|
enable-method = "psci";
|
|
i-cache-size = <0x8000>;
|
|
i-cache-line-size = <64>;
|
|
i-cache-sets = <256>;
|
|
d-cache-size = <0x8000>;
|
|
d-cache-line-size = <64>;
|
|
d-cache-sets = <128>;
|
|
next-level-cache = <&A53_L2>;
|
|
clocks = <&scpi_dvfs 1>;
|
|
cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
|
|
capacity-dmips-mhz = <578>;
|
|
dynamic-power-coefficient = <140>;
|
|
};
|
|
|
|
A53_2: cpu@102 {
|
|
compatible = "arm,cortex-a53";
|
|
reg = <0x0 0x102>;
|
|
device_type = "cpu";
|
|
enable-method = "psci";
|
|
i-cache-size = <0x8000>;
|
|
i-cache-line-size = <64>;
|
|
i-cache-sets = <256>;
|
|
d-cache-size = <0x8000>;
|
|
d-cache-line-size = <64>;
|
|
d-cache-sets = <128>;
|
|
next-level-cache = <&A53_L2>;
|
|
clocks = <&scpi_dvfs 1>;
|
|
cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
|
|
capacity-dmips-mhz = <578>;
|
|
dynamic-power-coefficient = <140>;
|
|
};
|
|
|
|
A53_3: cpu@103 {
|
|
compatible = "arm,cortex-a53";
|
|
reg = <0x0 0x103>;
|
|
device_type = "cpu";
|
|
enable-method = "psci";
|
|
i-cache-size = <0x8000>;
|
|
i-cache-line-size = <64>;
|
|
i-cache-sets = <256>;
|
|
d-cache-size = <0x8000>;
|
|
d-cache-line-size = <64>;
|
|
d-cache-sets = <128>;
|
|
next-level-cache = <&A53_L2>;
|
|
clocks = <&scpi_dvfs 1>;
|
|
cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
|
|
capacity-dmips-mhz = <578>;
|
|
dynamic-power-coefficient = <140>;
|
|
};
|
|
|
|
A57_L2: l2-cache0 {
|
|
compatible = "cache";
|
|
cache-size = <0x200000>;
|
|
cache-line-size = <64>;
|
|
cache-sets = <2048>;
|
|
};
|
|
|
|
A53_L2: l2-cache1 {
|
|
compatible = "cache";
|
|
cache-size = <0x100000>;
|
|
cache-line-size = <64>;
|
|
cache-sets = <1024>;
|
|
};
|
|
};
|
|
|
|
pmu-a57 {
|
|
compatible = "arm,cortex-a57-pmu";
|
|
interrupts = <GIC_SPI 02 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 06 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-affinity = <&A57_0>,
|
|
<&A57_1>;
|
|
};
|
|
|
|
pmu-a53 {
|
|
compatible = "arm,cortex-a53-pmu";
|
|
interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-affinity = <&A53_0>,
|
|
<&A53_1>,
|
|
<&A53_2>,
|
|
<&A53_3>;
|
|
};
|
|
};
|
|
|
|
&etm0 {
|
|
cpu = <&A57_0>;
|
|
};
|
|
|
|
&etm1 {
|
|
cpu = <&A57_1>;
|
|
};
|
|
|
|
&etm2 {
|
|
cpu = <&A53_0>;
|
|
};
|
|
|
|
&etm3 {
|
|
cpu = <&A53_1>;
|
|
};
|
|
|
|
&etm4 {
|
|
cpu = <&A53_2>;
|
|
};
|
|
|
|
&etm5 {
|
|
cpu = <&A53_3>;
|
|
};
|
|
|
|
&etf0_out_port {
|
|
remote-endpoint = <&replicator_in_port0>;
|
|
};
|
|
|
|
&replicator_in_port0 {
|
|
remote-endpoint = <&etf0_out_port>;
|
|
};
|
|
|
|
&stm_out_port {
|
|
remote-endpoint = <&main_funnel_in_port2>;
|
|
};
|
|
|
|
&main_funnel_in_ports {
|
|
port@2 {
|
|
reg = <2>;
|
|
main_funnel_in_port2: endpoint {
|
|
remote-endpoint = <&stm_out_port>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&cpu_debug0 {
|
|
cpu = <&A57_0>;
|
|
};
|
|
|
|
&cpu_debug1 {
|
|
cpu = <&A57_1>;
|
|
};
|
|
|
|
&cpu_debug2 {
|
|
cpu = <&A53_0>;
|
|
};
|
|
|
|
&cpu_debug3 {
|
|
cpu = <&A53_1>;
|
|
};
|
|
|
|
&cpu_debug4 {
|
|
cpu = <&A53_2>;
|
|
};
|
|
|
|
&cpu_debug5 {
|
|
cpu = <&A53_3>;
|
|
};
|