2019-05-27 08:55:08 +02:00
// SPDX-License-Identifier: GPL-2.0-or-later
2012-03-02 23:07:21 +00:00
/*
* Copyright 2012 Linaro Ltd
*/
2013-05-29 19:15:39 +02:00
#include <dt-bindings/interrupt-controller/irq.h>
2016-03-24 15:48:47 +01:00
#include <dt-bindings/interrupt-controller/arm-gic.h>
2013-09-18 09:53:10 +01:00
#include <dt-bindings/mfd/dbx500-prcmu.h>
2014-10-14 11:12:59 +02:00
#include <dt-bindings/arm/ux500_pm_domains.h>
2016-03-24 15:29:30 +01:00
#include <dt-bindings/gpio/gpio.h>
2019-10-01 09:46:28 +02:00
#include <dt-bindings/thermal/thermal.h>
2012-03-02 23:07:21 +00:00
/ {
2018-07-03 10:03:47 +02:00
#address-cells = <1>;
#size-cells = <1>;
chosen {
};
2015-08-03 09:26:41 +02:00
cpus {
#address-cells = <1>;
#size-cells = <0>;
enable-method = "ste,dbx500-smp";
cpu-map {
cluster0 {
core0 {
cpu = <&CPU0>;
};
core1 {
cpu = <&CPU1>;
};
};
};
CPU0: cpu@300 {
device_type = "cpu";
compatible = "arm,cortex-a9";
reg = <0x300>;
2017-08-22 09:28:20 +02:00
/* cpufreq controls */
operating-points = <998400 0
800000 0
400000 0
200000 0>;
clocks = <&prcmu_clk PRCMU_ARMSS>;
clock-names = "cpu";
clock-latency = <20000>;
2019-08-28 09:55:14 +02:00
#cooling-cells = <2>;
2015-08-03 09:26:41 +02:00
};
CPU1: cpu@301 {
device_type = "cpu";
compatible = "arm,cortex-a9";
reg = <0x301>;
};
};
2019-08-28 09:55:14 +02:00
thermal-zones {
/*
* Thermal zone for the SoC, using the thermal sensor in the
* PRCMU for temperature and the cpufreq driver for passive
* cooling.
*/
cpu_thermal: cpu-thermal {
2019-10-01 09:46:28 +02:00
polling-delay-passive = <250>;
/*
* This sensor fires interrupts to update the thermal
* zone, so no polling is needed.
*/
polling-delay = <0>;
2019-08-28 09:55:14 +02:00
thermal-sensors = <&thermal>;
trips {
cpu_alert: cpu-alert {
temperature = <70000>;
hysteresis = <2000>;
type = "passive";
};
cpu-crit {
temperature = <85000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
trip = <&cpu_alert>;
2019-10-01 09:46:28 +02:00
cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
2019-08-28 09:55:14 +02:00
contribution = <100>;
};
};
};
2013-03-01 14:38:07 +01:00
soc {
2012-03-02 23:07:21 +00:00
#address-cells = <1>;
#size-cells = <1>;
2012-03-15 16:46:17 +00:00
compatible = "stericsson,db8500";
2012-03-07 17:22:30 +00:00
interrupt-parent = <&intc>;
2012-03-02 23:07:21 +00:00
ranges;
2012-03-15 16:46:17 +00:00
2015-04-16 09:08:15 +02:00
ptm@801ae000 {
compatible = "arm,coresight-etm3x", "arm,primecell";
reg = <0x801ae000 0x1000>;
clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "apb_pclk", "atclk";
cpu = <&CPU0>;
2018-09-12 14:53:52 +01:00
out-ports {
port {
ptm0_out_port: endpoint {
remote-endpoint = <&funnel_in_port0>;
};
2015-04-16 09:08:15 +02:00
};
};
};
ptm@801af000 {
compatible = "arm,coresight-etm3x", "arm,primecell";
reg = <0x801af000 0x1000>;
clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "apb_pclk", "atclk";
cpu = <&CPU1>;
2018-09-12 14:53:52 +01:00
out-ports {
port {
ptm1_out_port: endpoint {
remote-endpoint = <&funnel_in_port1>;
};
2015-04-16 09:08:15 +02:00
};
};
};
funnel@801a6000 {
2019-05-08 10:18:55 +08:00
compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
2015-04-16 09:08:15 +02:00
reg = <0x801a6000 0x1000>;
clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "apb_pclk", "atclk";
2018-09-12 14:53:52 +01:00
out-ports {
port {
2015-04-16 09:08:15 +02:00
funnel_out_port: endpoint {
remote-endpoint =
<&replicator_in_port0>;
};
};
2018-09-12 14:53:52 +01:00
};
2015-04-16 09:08:15 +02:00
2018-09-12 14:53:52 +01:00
in-ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
2015-04-16 09:08:15 +02:00
reg = <0>;
funnel_in_port0: endpoint {
remote-endpoint = <&ptm0_out_port>;
};
};
2018-09-12 14:53:52 +01:00
port@1 {
2015-04-16 09:08:15 +02:00
reg = <1>;
funnel_in_port1: endpoint {
remote-endpoint = <&ptm1_out_port>;
};
};
};
};
replicator {
2019-05-08 10:18:55 +08:00
compatible = "arm,coresight-static-replicator";
2015-04-16 09:08:15 +02:00
clocks = <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "atclk";
2018-09-12 14:53:52 +01:00
out-ports {
2015-04-16 09:08:15 +02:00
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
replicator_out_port0: endpoint {
remote-endpoint = <&tpiu_in_port>;
};
};
port@1 {
reg = <1>;
replicator_out_port1: endpoint {
remote-endpoint = <&etb_in_port>;
};
};
2018-09-12 14:53:52 +01:00
};
2015-04-16 09:08:15 +02:00
2018-09-12 14:53:52 +01:00
in-ports {
port {
2015-04-16 09:08:15 +02:00
replicator_in_port0: endpoint {
remote-endpoint = <&funnel_out_port>;
};
};
};
};
tpiu@80190000 {
compatible = "arm,coresight-tpiu", "arm,primecell";
reg = <0x80190000 0x1000>;
clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "apb_pclk", "atclk";
2018-09-12 14:53:52 +01:00
in-ports {
port {
tpiu_in_port: endpoint {
remote-endpoint = <&replicator_out_port0>;
};
2015-04-16 09:08:15 +02:00
};
};
};
etb@801a4000 {
compatible = "arm,coresight-etb10", "arm,primecell";
reg = <0x801a4000 0x1000>;
clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "apb_pclk", "atclk";
2018-09-12 14:53:52 +01:00
in-ports {
port {
etb_in_port: endpoint {
remote-endpoint = <&replicator_out_port1>;
};
2015-04-16 09:08:15 +02:00
};
};
};
2012-03-07 17:22:30 +00:00
intc: interrupt-controller@a0411000 {
compatible = "arm,cortex-a9-gic";
#interrupt-cells = <3>;
#address-cells = <1>;
interrupt-controller;
reg = <0xa0411000 0x1000>,
<0xa0410100 0x100>;
};
2018-06-26 09:50:09 +02:00
scu@a0410000 {
2015-05-14 11:22:34 +02:00
compatible = "arm,cortex-a9-scu";
reg = <0xa0410000 0x100>;
};
2015-05-14 18:02:05 +02:00
/*
* The backup RAM is used for retention during sleep
* and various things like spin tables
*/
backupram@80150000 {
compatible = "ste,dbx500-backupram";
reg = <0x80150000 0x2000>;
};
2012-03-08 09:02:02 +00:00
L2: l2-cache {
compatible = "arm,pl310-cache";
reg = <0xa0412000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
2012-03-08 09:02:02 +00:00
cache-unified;
cache-level = <2>;
};
2012-03-15 16:46:17 +00:00
pmu {
compatible = "arm,cortex-a9-pmu";
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
2012-03-15 16:46:17 +00:00
};
2014-10-14 11:12:58 +02:00
pm_domains: pm_domains0 {
compatible = "stericsson,ux500-pm-domains";
#power-domain-cells = <1>;
};
2013-09-18 09:54:07 +01:00
2013-09-18 09:53:10 +01:00
clocks {
compatible = "stericsson,u8500-clks";
2015-07-30 15:19:25 +02:00
/*
* Registers for the CLKRST block on peripheral
* groups 1, 2, 3, 5, 6,
*/
reg = <0x8012f000 0x1000>, <0x8011f000 0x1000>,
<0x8000f000 0x1000>, <0xa03ff000 0x1000>,
<0xa03cf000 0x1000>;
2013-09-18 09:53:10 +01:00
prcmu_clk: prcmu-clock {
#clock-cells = <1>;
};
2013-06-06 10:51:04 +01:00
prcc_pclk: prcc-periph-clock {
#clock-cells = <2>;
};
2013-06-06 10:52:50 +01:00
prcc_kclk: prcc-kernel-clock {
#clock-cells = <2>;
};
2013-06-06 10:54:27 +01:00
rtc_clk: rtc32k-clock {
#clock-cells = <0>;
};
2013-06-06 10:54:48 +01:00
smp_twd_clk: smp-twd-clock {
#clock-cells = <0>;
};
2013-09-18 09:53:10 +01:00
};
2013-09-18 09:54:07 +01:00
mtu@a03c6000 {
/* Nomadik System Timer */
compatible = "st,nomadik-mtu";
reg = <0xa03c6000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
2013-09-18 09:54:07 +01:00
clocks = <&prcmu_clk PRCMU_TIMCLK>, <&prcc_pclk 6 6>;
clock-names = "timclk", "apb_pclk";
};
2012-03-16 09:53:24 +00:00
timer@a0410600 {
compatible = "arm,cortex-a9-twd-timer";
reg = <0xa0410600 0x20>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
2013-06-05 12:26:52 +01:00
clocks = <&smp_twd_clk>;
2012-03-16 09:53:24 +00:00
};
2015-05-14 11:22:34 +02:00
watchdog@a0410620 {
compatible = "arm,cortex-a9-twd-wdt";
reg = <0xa0410620 0x20>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
2015-05-14 11:22:34 +02:00
clocks = <&smp_twd_clk>;
};
2012-03-15 16:46:17 +00:00
rtc@80154000 {
2012-05-26 07:01:31 +01:00
compatible = "arm,rtc-pl031", "arm,primecell";
2012-03-15 16:46:17 +00:00
reg = <0x80154000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
2013-06-05 12:27:24 +01:00
clocks = <&rtc_clk>;
clock-names = "apb_pclk";
2012-03-15 16:46:17 +00:00
};
gpio0: gpio@8012e000 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8012e000 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <0>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 0 32>;
2013-06-03 13:07:51 +01:00
clocks = <&prcc_pclk 1 9>;
2012-03-15 16:46:17 +00:00
};
gpio1: gpio@8012e080 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8012e080 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <1>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 32 5>;
2013-06-03 13:07:51 +01:00
clocks = <&prcc_pclk 1 9>;
2012-03-15 16:46:17 +00:00
};
gpio2: gpio@8000e000 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8000e000 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <2>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 64 32>;
2013-06-03 13:07:51 +01:00
clocks = <&prcc_pclk 3 8>;
2012-03-15 16:46:17 +00:00
};
gpio3: gpio@8000e080 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8000e080 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <3>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 96 2>;
2013-06-03 13:07:51 +01:00
clocks = <&prcc_pclk 3 8>;
2012-03-15 16:46:17 +00:00
};
gpio4: gpio@8000e100 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8000e100 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <4>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 128 32>;
2013-06-03 13:07:51 +01:00
clocks = <&prcc_pclk 3 8>;
2012-03-15 16:46:17 +00:00
};
gpio5: gpio@8000e180 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8000e180 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <5>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 160 12>;
2013-06-03 13:07:51 +01:00
clocks = <&prcc_pclk 3 8>;
2012-03-15 16:46:17 +00:00
};
gpio6: gpio@8011e000 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8011e000 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <6>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 192 32>;
2013-10-18 09:49:21 +02:00
clocks = <&prcc_pclk 2 11>;
2012-03-15 16:46:17 +00:00
};
gpio7: gpio@8011e080 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0x8011e080 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <7>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 224 7>;
2013-10-18 09:49:21 +02:00
clocks = <&prcc_pclk 2 11>;
2012-03-15 16:46:17 +00:00
};
gpio8: gpio@a03fe000 {
compatible = "stericsson,db8500-gpio",
2012-04-13 15:05:03 +01:00
"st,nomadik-gpio";
2012-03-15 16:46:17 +00:00
reg = <0xa03fe000 0x80>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
2012-05-29 14:17:36 +08:00
interrupt-controller;
#interrupt-cells = <2>;
2012-06-14 11:16:03 +01:00
st,supports-sleepmode;
2012-03-15 16:46:17 +00:00
gpio-controller;
2012-04-13 15:05:05 +01:00
#gpio-cells = <2>;
gpio-bank = <8>;
2015-07-23 09:09:49 +02:00
gpio-ranges = <&pinctrl 0 256 12>;
2013-10-18 09:45:07 +02:00
clocks = <&prcc_pclk 5 1>;
2012-03-15 16:46:17 +00:00
};
2015-07-23 09:09:49 +02:00
pinctrl: pinctrl {
2013-05-22 15:22:55 +01:00
compatible = "stericsson,db8500-pinctrl";
2015-07-23 09:09:49 +02:00
nomadik-gpio-chips = <&gpio0>, <&gpio1>, <&gpio2>, <&gpio3>,
<&gpio4>, <&gpio5>, <&gpio6>, <&gpio7>,
<&gpio8>;
2013-01-11 15:45:28 +00:00
prcm = <&prcmu>;
2012-05-26 06:25:36 +01:00
};
2013-05-03 15:31:51 +01:00
usb_per5@a03e0000 {
2013-08-20 18:40:27 +02:00
compatible = "stericsson,db8500-musb";
2012-03-15 16:46:17 +00:00
reg = <0xa03e0000 0x10000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:51 +01:00
interrupt-names = "mc";
dr_mode = "otg";
dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */
<&dma 38 0 0x0>, /* Logical - MemToDev */
<&dma 37 0 0x2>, /* Logical - DevToMem */
<&dma 37 0 0x0>, /* Logical - MemToDev */
<&dma 36 0 0x2>, /* Logical - DevToMem */
<&dma 36 0 0x0>, /* Logical - MemToDev */
<&dma 19 0 0x2>, /* Logical - DevToMem */
<&dma 19 0 0x0>, /* Logical - MemToDev */
<&dma 18 0 0x2>, /* Logical - DevToMem */
<&dma 18 0 0x0>, /* Logical - MemToDev */
<&dma 17 0 0x2>, /* Logical - DevToMem */
<&dma 17 0 0x0>, /* Logical - MemToDev */
<&dma 16 0 0x2>, /* Logical - DevToMem */
<&dma 16 0 0x0>, /* Logical - MemToDev */
<&dma 39 0 0x2>, /* Logical - DevToMem */
<&dma 39 0 0x0>; /* Logical - MemToDev */
dma-names = "iep_1_9", "oep_1_9",
"iep_2_10", "oep_2_10",
"iep_3_11", "oep_3_11",
"iep_4_12", "oep_4_12",
"iep_5_13", "oep_5_13",
"iep_6_14", "oep_6_14",
"iep_7_15", "oep_7_15",
"iep_8", "oep_8";
2013-06-03 13:08:26 +01:00
clocks = <&prcc_pclk 5 0>;
2012-03-15 16:46:17 +00:00
};
2013-05-03 15:31:48 +01:00
dma: dma-controller@801C0000 {
compatible = "stericsson,db8500-dma40", "stericsson,dma40";
2012-03-15 16:46:17 +00:00
reg = <0x801C0000 0x1000 0x40010000 0x800>;
2013-05-03 15:31:47 +01:00
reg-names = "base", "lcpa";
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:48 +01:00
#dma-cells = <3>;
2013-05-03 15:31:52 +01:00
memcpy-channels = <56 57 58 59 60>;
2013-06-03 13:13:54 +01:00
clocks = <&prcmu_clk PRCMU_DMACLK>;
2012-03-15 16:46:17 +00:00
};
2013-01-11 15:45:28 +00:00
prcmu: prcmu@80157000 {
2018-07-12 14:52:00 +02:00
compatible = "stericsson,db8500-prcmu", "syscon";
ARM: arm-soc non-critical fixes for 3.10
Here is a collection of fixes (and some intermixed cleanups) that were
considered less important and thus not included in the later parts of
the 3.9-rc cycle.
It's a bit all over the map, contents wise. A series of ux500 fixes
and cleanups, a bunch of various fixes for OMAP and tegra, and some for
Freescale i.MX and even Qualcomm MSM.
Note that there's also a patch on this branch to globally turn off
-Wmaybe-uninitialized when building with -Os. It's been posted several
times by Arnd and no dissent was raised, but nobody seemed interested
to pick it up. So here it is, as the topmost patch.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQIcBAABAgAGBQJRggtQAAoJEIwa5zzehBx3TmYP/i4Kt3JDYEbYyAqNsH3nb0mN
3kLwViUxDdS/aZCXEaNYLwZBUgl1Zyz3oRd39zFCo4dRM2uG1AW+lC73AP3/eW6n
2oHxI43xzwjDNPxRkiipB4NXPyIoIdbRXM6/QIxXzM9zD3MJXj7BpBBpDgGAsLov
BQ2r28idxZE6jB4puPjVZCuyG5UMjA0Ko2Fp2em7QXarQBBscDvhAtjqNZ3JPtlN
thASsou1B8805J7jf5G8Wz6fNeVJg2wlWMgE9ywJpKFbut4cGM4riS/QvB0fTe6d
tmkCae0bw3UD+D+N1gYcZpeGve8oPSHbeyhrSPAfI/wAVBh0J397MgJW5/f0vW8p
DffLjQI+S450Kw0Bab41Tn0JnMnXtYUo56yjemdxa/NQJF34ycBFQ3HOm6nFxo7U
6tce2O775uvG0+rJfDbX6M+Mu7QoIi0p8sOdg0/W+pFK08xvaezsOc1NjqTvuYoC
s/2LYiIJqVG6tFVU0i/46duQhdp0I/Oj7wXtFXH0ZvZPBz0cDaSU3irB3QA9pNt5
PI6JEBg0FUPUork24gShSUf7un4Itrjlq20HTkC9/z1skx87PbB3Wa7A8jnHeFme
tpuPRvmfBWhIhp06AIA8znhDik9xuJ4B7ypsFNM0VyoV/qx+TSIHbViVQuwcOf9b
nAidtuhMjE+P2sAu+VGU
=bzsu
-----END PGP SIGNATURE-----
Merge tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC non-critical fixes from Olof Johansson:
"Here is a collection of fixes (and some intermixed cleanups) that were
considered less important and thus not included in the later parts of
the 3.9-rc cycle.
It's a bit all over the map, contents wise. A series of ux500 fixes
and cleanups, a bunch of various fixes for OMAP and tegra, and some
for Freescale i.MX and even Qualcomm MSM.
Note that there's also a patch on this branch to globally turn off
-Wmaybe-uninitialized when building with -Os. It's been posted
several times by Arnd and no dissent was raised, but nobody seemed
interested to pick it up. So here it is, as the topmost patch."
* tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (70 commits)
Turn off -Wmaybe-uninitialized when building with -Os
ARM: orion5x: include linux/cpu.h
ARM: tegra: call cpu_do_idle from C code
ARM: u300: fix ages old copy/paste bug
ARM: OMAP2+: add dependencies on ARCH_MULTI_V6/V7
ARM: tegra: solve adr range issue with THUMB2_KERNEL enabled
ARM: tegra: fix relocation truncated error when THUMB2_KERNEL enabled
ARM: tegra: fix build error when THUMB2_KERNEL enabled
ARM: msm: Fix uncompess.h tx underrun check
ARM: vexpress: Remove A9 PMU compatible values for non-A9 platforms
ARM: cpuimx27 and mbimx27: prepend CONFIG_ to Kconfig macro
ARM: OMAP2+: fix typo "CONFIG_BRIDGE_DVFS"
ARM: OMAP1: remove "config MACH_OMAP_HTCWIZARD"
ARM: mach-imx: mach-imx6q: Fix sparse warnings
ARM: mach-imx: src: Include "common.h
ARM: mach-imx: gpc: Include "common.h"
ARM: mach-imx: avic: Staticize *avic_base
ARM: mach-imx: tzic: Staticize *tzic_base
ARM: mach-imx: clk: Include "clk.h"
ARM: mach-imx: clk-busy: Staticize clk_busy_mux_ops
...
2013-05-02 08:56:55 -07:00
reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x1000>;
2013-03-26 10:26:15 +00:00
reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm";
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
2012-04-24 10:00:15 +01:00
#size-cells = <1>;
2012-08-03 15:42:25 +01:00
interrupt-controller;
#interrupt-cells = <2>;
2012-04-24 10:00:15 +01:00
ranges;
2012-05-28 16:50:49 +08:00
prcmu-timer-4@80157450 {
2012-04-24 10:00:15 +01:00
compatible = "stericsson,db8500-prcmu-timer-4";
reg = <0x80157450 0xC>;
};
2012-03-15 16:46:17 +00:00
2019-08-28 09:55:14 +02:00
thermal: thermal@801573c0 {
2012-11-15 18:56:43 +08:00
compatible = "stericsson,db8500-thermal";
reg = <0x801573c0 0x40>;
2019-07-15 10:05:02 +02:00
interrupt-parent = <&prcmu>;
2013-05-29 19:15:39 +02:00
interrupts = <21 IRQ_TYPE_LEVEL_HIGH>,
<22 IRQ_TYPE_LEVEL_HIGH>;
2012-11-15 18:56:43 +08:00
interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH";
2019-08-28 09:55:14 +02:00
#thermal-sensor-cells = <0>;
2013-06-06 12:21:15 +01:00
};
2012-11-15 18:56:43 +08:00
2012-05-04 13:32:34 +01:00
db8500-prcmu-regulators {
compatible = "stericsson,db8500-prcmu-regulator";
// DB8500_REGULATOR_VAPE
db8500_vape_reg: db8500_vape {
regulator-always-on;
};
// DB8500_REGULATOR_VARM
db8500_varm_reg: db8500_varm {
};
// DB8500_REGULATOR_VMODEM
db8500_vmodem_reg: db8500_vmodem {
};
// DB8500_REGULATOR_VPLL
db8500_vpll_reg: db8500_vpll {
};
// DB8500_REGULATOR_VSMPS1
db8500_vsmps1_reg: db8500_vsmps1 {
};
// DB8500_REGULATOR_VSMPS2
db8500_vsmps2_reg: db8500_vsmps2 {
};
// DB8500_REGULATOR_VSMPS3
db8500_vsmps3_reg: db8500_vsmps3 {
};
// DB8500_REGULATOR_VRF1
db8500_vrf1_reg: db8500_vrf1 {
};
// DB8500_REGULATOR_SWITCH_SVAMMDSP
db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
};
// DB8500_REGULATOR_SWITCH_SVAMMDSPRET
db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
};
// DB8500_REGULATOR_SWITCH_SVAPIPE
db8500_sva_pipe_reg: db8500_sva_pipe {
};
// DB8500_REGULATOR_SWITCH_SIAMMDSP
db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
};
// DB8500_REGULATOR_SWITCH_SIAMMDSPRET
db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
};
// DB8500_REGULATOR_SWITCH_SIAPIPE
db8500_sia_pipe_reg: db8500_sia_pipe {
};
// DB8500_REGULATOR_SWITCH_SGA
db8500_sga_reg: db8500_sga {
vin-supply = <&db8500_vape_reg>;
};
// DB8500_REGULATOR_SWITCH_B2R2_MCDE
db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
vin-supply = <&db8500_vape_reg>;
};
// DB8500_REGULATOR_SWITCH_ESRAM12
db8500_esram12_reg: db8500_esram12 {
};
// DB8500_REGULATOR_SWITCH_ESRAM12RET
db8500_esram12_ret_reg: db8500_esram12_ret {
};
// DB8500_REGULATOR_SWITCH_ESRAM34
db8500_esram34_reg: db8500_esram34 {
};
// DB8500_REGULATOR_SWITCH_ESRAM34RET
db8500_esram34_ret_reg: db8500_esram34_ret {
};
};
2012-03-15 16:46:17 +00:00
};
i2c@80004000 {
2012-06-18 09:55:44 +01:00
compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
2012-03-15 16:46:17 +00:00
reg = <0x80004000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
2012-10-24 11:07:02 +01:00
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
#size-cells = <0>;
2012-06-18 09:55:44 +01:00
v-i2c-supply = <&db8500_vape_reg>;
clock-frequency = <400000>;
2013-06-03 13:15:22 +01:00
clocks = <&prcc_kclk 3 3>, <&prcc_pclk 3 3>;
clock-names = "i2cclk", "apb_pclk";
2014-10-14 11:13:01 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2012-03-15 16:46:17 +00:00
};
i2c@80122000 {
2012-06-18 09:55:44 +01:00
compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
2012-03-15 16:46:17 +00:00
reg = <0x80122000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
2012-10-24 11:07:02 +01:00
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
#size-cells = <0>;
2012-06-18 09:55:44 +01:00
v-i2c-supply = <&db8500_vape_reg>;
clock-frequency = <400000>;
2013-06-03 13:15:22 +01:00
clocks = <&prcc_kclk 1 2>, <&prcc_pclk 1 2>;
clock-names = "i2cclk", "apb_pclk";
2014-10-14 11:13:01 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2012-03-15 16:46:17 +00:00
};
i2c@80128000 {
2012-06-18 09:55:44 +01:00
compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
2012-03-15 16:46:17 +00:00
reg = <0x80128000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
2012-10-24 11:07:02 +01:00
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
#size-cells = <0>;
2012-06-18 09:55:44 +01:00
v-i2c-supply = <&db8500_vape_reg>;
clock-frequency = <400000>;
2013-06-03 13:15:22 +01:00
clocks = <&prcc_kclk 1 6>, <&prcc_pclk 1 6>;
clock-names = "i2cclk", "apb_pclk";
2014-10-14 11:13:01 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2012-03-15 16:46:17 +00:00
};
i2c@80110000 {
2012-06-18 09:55:44 +01:00
compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
2012-03-15 16:46:17 +00:00
reg = <0x80110000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
2012-10-24 11:07:02 +01:00
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
#size-cells = <0>;
2012-06-18 09:55:44 +01:00
v-i2c-supply = <&db8500_vape_reg>;
clock-frequency = <400000>;
2013-06-03 13:15:22 +01:00
clocks = <&prcc_kclk 2 0>, <&prcc_pclk 2 0>;
clock-names = "i2cclk", "apb_pclk";
2014-10-14 11:13:01 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2012-03-15 16:46:17 +00:00
};
i2c@8012a000 {
2012-06-18 09:55:44 +01:00
compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
2012-03-15 16:46:17 +00:00
reg = <0x8012a000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
2012-10-24 11:07:02 +01:00
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
#size-cells = <0>;
2012-06-18 09:55:44 +01:00
v-i2c-supply = <&db8500_vape_reg>;
clock-frequency = <400000>;
2013-06-03 13:15:22 +01:00
2013-10-18 10:39:58 +02:00
clocks = <&prcc_kclk 1 9>, <&prcc_pclk 1 10>;
2013-06-03 13:15:22 +01:00
clock-names = "i2cclk", "apb_pclk";
2014-10-14 11:13:01 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2012-03-15 16:46:17 +00:00
};
2018-09-13 13:12:34 -05:00
spi@80002000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl022", "arm,primecell";
2012-09-07 12:09:34 +01:00
reg = <0x80002000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
2012-03-15 16:46:17 +00:00
#address-cells = <1>;
#size-cells = <0>;
2013-10-18 10:25:52 +02:00
clocks = <&prcc_kclk 3 1>, <&prcc_pclk 3 1>;
2014-02-24 13:30:15 +01:00
clock-names = "SSPCLK", "apb_pclk";
2013-10-18 10:25:52 +02:00
dmas = <&dma 8 0 0x2>, /* Logical - DevToMem */
<&dma 8 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2014-10-14 11:13:00 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-10-18 10:25:52 +02:00
};
2018-09-13 13:12:34 -05:00
spi@80003000 {
2013-10-18 10:25:52 +02:00
compatible = "arm,pl022", "arm,primecell";
reg = <0x80003000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
2013-10-18 10:25:52 +02:00
#address-cells = <1>;
#size-cells = <0>;
clocks = <&prcc_kclk 3 2>, <&prcc_pclk 3 2>;
2014-02-24 13:30:15 +01:00
clock-names = "SSPCLK", "apb_pclk";
2013-10-18 10:25:52 +02:00
dmas = <&dma 9 0 0x2>, /* Logical - DevToMem */
<&dma 9 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2014-10-14 11:13:00 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-10-18 10:25:52 +02:00
};
spi@8011a000 {
compatible = "arm,pl022", "arm,primecell";
reg = <0x8011a000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
2013-10-18 10:25:52 +02:00
#address-cells = <1>;
#size-cells = <0>;
/* Same clock wired to kernel and pclk */
clocks = <&prcc_pclk 2 8>, <&prcc_pclk 2 8>;
2014-02-24 13:30:15 +01:00
clock-names = "SSPCLK", "apb_pclk";
2013-10-18 10:25:52 +02:00
dmas = <&dma 0 0 0x2>, /* Logical - DevToMem */
<&dma 0 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2014-10-14 11:13:00 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-10-18 10:25:52 +02:00
};
spi@80112000 {
compatible = "arm,pl022", "arm,primecell";
reg = <0x80112000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
2013-10-18 10:25:52 +02:00
#address-cells = <1>;
#size-cells = <0>;
/* Same clock wired to kernel and pclk */
clocks = <&prcc_pclk 2 2>, <&prcc_pclk 2 2>;
2014-02-24 13:30:15 +01:00
clock-names = "SSPCLK", "apb_pclk";
2013-10-18 10:25:52 +02:00
dmas = <&dma 35 0 0x2>, /* Logical - DevToMem */
<&dma 35 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2014-10-14 11:13:00 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-10-18 10:25:52 +02:00
};
spi@80111000 {
compatible = "arm,pl022", "arm,primecell";
reg = <0x80111000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
2013-10-18 10:25:52 +02:00
#address-cells = <1>;
#size-cells = <0>;
/* Same clock wired to kernel and pclk */
clocks = <&prcc_pclk 2 1>, <&prcc_pclk 2 1>;
2014-02-24 13:30:15 +01:00
clock-names = "SSPCLK", "apb_pclk";
2013-10-18 10:25:52 +02:00
dmas = <&dma 33 0 0x2>, /* Logical - DevToMem */
<&dma 33 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2014-10-14 11:13:00 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-10-18 10:25:52 +02:00
};
spi@80129000 {
compatible = "arm,pl022", "arm,primecell";
reg = <0x80129000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
2013-10-18 10:25:52 +02:00
#address-cells = <1>;
#size-cells = <0>;
/* Same clock wired to kernel and pclk */
clocks = <&prcc_pclk 1 7>, <&prcc_pclk 1 7>;
2014-02-24 13:30:15 +01:00
clock-names = "SSPCLK", "apb_pclk";
2013-10-18 10:25:52 +02:00
dmas = <&dma 40 0 0x2>, /* Logical - DevToMem */
<&dma 40 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2014-10-14 11:13:00 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2012-03-15 16:46:17 +00:00
};
2015-07-10 11:32:15 +02:00
ux500_serial0: uart@80120000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl011", "arm,primecell";
reg = <0x80120000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:49 +01:00
dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
<&dma 13 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-03 13:17:17 +01:00
clocks = <&prcc_kclk 1 0>, <&prcc_pclk 1 0>;
clock-names = "uart", "apb_pclk";
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2013-05-03 15:31:49 +01:00
2015-07-10 11:32:15 +02:00
ux500_serial1: uart@80121000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl011", "arm,primecell";
reg = <0x80121000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:49 +01:00
dmas = <&dma 12 0 0x2>, /* Logical - DevToMem */
<&dma 12 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-03 13:17:17 +01:00
clocks = <&prcc_kclk 1 1>, <&prcc_pclk 1 1>;
clock-names = "uart", "apb_pclk";
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2013-05-03 15:31:49 +01:00
2015-07-10 11:32:15 +02:00
ux500_serial2: uart@80007000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl011", "arm,primecell";
reg = <0x80007000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:49 +01:00
dmas = <&dma 11 0 0x2>, /* Logical - DevToMem */
<&dma 11 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-03 13:17:17 +01:00
clocks = <&prcc_kclk 3 6>, <&prcc_pclk 3 6>;
clock-names = "uart", "apb_pclk";
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-09-26 12:55:56 +01:00
sdi0_per1@80126000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl18x", "arm,primecell";
reg = <0x80126000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:50 +01:00
dmas = <&dma 29 0 0x2>, /* Logical - DevToMem */
<&dma 29 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-06 12:28:50 +01:00
clocks = <&prcc_kclk 1 5>, <&prcc_pclk 1 5>;
clock-names = "sdi", "apb_pclk";
2014-10-14 11:12:59 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-06-06 12:28:50 +01:00
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-10-24 11:10:05 +01:00
2012-09-26 12:55:56 +01:00
sdi1_per2@80118000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl18x", "arm,primecell";
reg = <0x80118000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:50 +01:00
dmas = <&dma 32 0 0x2>, /* Logical - DevToMem */
<&dma 32 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-06 12:28:50 +01:00
clocks = <&prcc_kclk 2 4>, <&prcc_pclk 2 6>;
clock-names = "sdi", "apb_pclk";
2014-10-14 11:12:59 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-06-06 12:28:50 +01:00
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-10-24 11:10:05 +01:00
2012-09-26 12:55:56 +01:00
sdi2_per3@80005000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl18x", "arm,primecell";
reg = <0x80005000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:50 +01:00
dmas = <&dma 28 0 0x2>, /* Logical - DevToMem */
<&dma 28 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-06 12:28:50 +01:00
clocks = <&prcc_kclk 3 4>, <&prcc_pclk 3 4>;
clock-names = "sdi", "apb_pclk";
2014-10-14 11:12:59 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-06-06 12:28:50 +01:00
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-10-24 11:10:05 +01:00
2012-09-26 12:55:56 +01:00
sdi3_per2@80119000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl18x", "arm,primecell";
reg = <0x80119000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
2013-06-06 12:28:50 +01:00
2014-06-11 10:45:50 +02:00
dmas = <&dma 41 0 0x2>, /* Logical - DevToMem */
<&dma 41 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-06 12:28:50 +01:00
clocks = <&prcc_kclk 2 5>, <&prcc_pclk 2 7>;
clock-names = "sdi", "apb_pclk";
2014-10-14 11:12:59 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-06-06 12:28:50 +01:00
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-10-24 11:10:05 +01:00
2012-09-26 12:55:56 +01:00
sdi4_per2@80114000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl18x", "arm,primecell";
reg = <0x80114000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
2013-05-03 15:31:50 +01:00
dmas = <&dma 42 0 0x2>, /* Logical - DevToMem */
<&dma 42 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-06 12:28:50 +01:00
clocks = <&prcc_kclk 2 2>, <&prcc_pclk 2 4>;
clock-names = "sdi", "apb_pclk";
2014-10-14 11:12:59 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-06-06 12:28:50 +01:00
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-10-24 11:10:05 +01:00
2012-09-26 12:55:56 +01:00
sdi5_per3@80008000 {
2012-03-15 16:46:17 +00:00
compatible = "arm,pl18x", "arm,primecell";
2012-10-24 11:10:05 +01:00
reg = <0x80008000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
2013-06-06 12:28:50 +01:00
2014-06-11 10:45:50 +02:00
dmas = <&dma 43 0 0x2>, /* Logical - DevToMem */
<&dma 43 0 0x0>; /* Logical - MemToDev */
dma-names = "rx", "tx";
2013-06-06 12:28:50 +01:00
clocks = <&prcc_kclk 3 7>, <&prcc_pclk 3 7>;
clock-names = "sdi", "apb_pclk";
2014-10-14 11:12:59 +02:00
power-domains = <&pm_domains DOMAIN_VAPE>;
2013-06-06 12:28:50 +01:00
2012-03-15 16:46:17 +00:00
status = "disabled";
};
2012-04-24 10:53:18 +01:00
2017-02-26 01:02:09 +01:00
sound {
compatible = "stericsson,snd-soc-mop500";
stericsson,cpu-dai = <&msp1 &msp3>;
};
2012-07-31 12:37:16 +01:00
msp0: msp@80123000 {
compatible = "stericsson,ux500-msp-i2s";
reg = <0x80123000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
2012-07-31 12:37:16 +01:00
v-ape-supply = <&db8500_vape_reg>;
2013-06-03 13:18:00 +01:00
2013-11-06 10:16:16 +00:00
dmas = <&dma 31 0 0x12>, /* Logical - DevToMem - HighPrio */
<&dma 31 0 0x10>; /* Logical - MemToDev - HighPrio */
dma-names = "rx", "tx";
2013-06-03 13:18:00 +01:00
clocks = <&prcc_kclk 1 3>, <&prcc_pclk 1 3>;
clock-names = "msp", "apb_pclk";
2012-07-31 12:37:16 +01:00
status = "disabled";
};
msp1: msp@80124000 {
compatible = "stericsson,ux500-msp-i2s";
reg = <0x80124000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
2012-07-31 12:37:16 +01:00
v-ape-supply = <&db8500_vape_reg>;
2013-06-03 13:18:00 +01:00
2014-06-11 10:45:50 +02:00
/* This DMA channel only exist on DB8500 v1 */
2013-11-06 10:16:16 +00:00
dmas = <&dma 30 0 0x10>; /* Logical - MemToDev - HighPrio */
dma-names = "tx";
2013-06-03 13:18:00 +01:00
clocks = <&prcc_kclk 1 4>, <&prcc_pclk 1 4>;
clock-names = "msp", "apb_pclk";
2012-07-31 12:37:16 +01:00
status = "disabled";
};
// HDMI sound
msp2: msp@80117000 {
compatible = "stericsson,ux500-msp-i2s";
reg = <0x80117000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
2012-07-31 12:37:16 +01:00
v-ape-supply = <&db8500_vape_reg>;
2013-06-03 13:18:00 +01:00
2013-11-06 10:16:16 +00:00
dmas = <&dma 14 0 0x12>, /* Logical - DevToMem - HighPrio */
<&dma 14 1 0x19>; /* Physical Chan 1 - MemToDev
HighPrio - Fixed */
dma-names = "rx", "tx";
2013-06-03 13:18:00 +01:00
clocks = <&prcc_kclk 2 3>, <&prcc_pclk 2 5>;
clock-names = "msp", "apb_pclk";
2012-07-31 12:37:16 +01:00
status = "disabled";
};
msp3: msp@80125000 {
compatible = "stericsson,ux500-msp-i2s";
reg = <0x80125000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
2012-07-31 12:37:16 +01:00
v-ape-supply = <&db8500_vape_reg>;
2013-06-03 13:18:00 +01:00
2014-06-11 10:45:50 +02:00
/* This DMA channel only exist on DB8500 v2 */
2013-11-06 10:16:16 +00:00
dmas = <&dma 30 0 0x12>; /* Logical - DevToMem - HighPrio */
dma-names = "rx";
2013-06-03 13:18:00 +01:00
clocks = <&prcc_kclk 1 10>, <&prcc_pclk 1 11>;
clock-names = "msp", "apb_pclk";
2012-07-31 12:37:16 +01:00
status = "disabled";
};
2012-04-24 10:53:18 +01:00
external-bus@50000000 {
compatible = "simple-bus";
reg = <0x50000000 0x4000000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x50000000 0x4000000>;
status = "disabled";
};
2012-11-15 18:56:43 +08:00
2019-04-12 15:02:20 +02:00
gpu@a0300000 {
/*
* This block is referred to as "Smart Graphics Adapter SGA500"
* in documentation but is in practice a pretty straight-forward
* MALI-400 GPU block.
*/
compatible = "stericsson,db8500-mali", "arm,mali-400";
reg = <0xa0300000 0x10000>;
interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "gp",
"gpmmu",
"pp0",
"ppmmu0",
"combined";
clocks = <&prcmu_clk PRCMU_ACLK>, <&prcmu_clk PRCMU_SGACLK>;
clock-names = "bus", "core";
mali-supply = <&db8500_sga_reg>;
power-domains = <&pm_domains DOMAIN_VAPE>;
};
2013-11-14 15:21:00 +01:00
mcde@a0350000 {
2018-10-08 13:27:55 +02:00
compatible = "ste,mcde";
reg = <0xa0350000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
2018-10-08 13:27:55 +02:00
epod-supply = <&db8500_b2r2_mcde_reg>;
2013-11-14 15:21:00 +01:00
clocks = <&prcmu_clk PRCMU_MCDECLK>, /* Main MCDE clock */
<&prcmu_clk PRCMU_LCDCLK>, /* LCD clock */
2018-10-08 13:27:55 +02:00
<&prcmu_clk PRCMU_PLLDSI>; /* HDMI clock */
clock-names = "mcde", "lcd", "hdmi";
#address-cells = <1>;
#size-cells = <1>;
ranges;
status = "disabled";
dsi0: dsi@a0351000 {
compatible = "ste,mcde-dsi";
reg = <0xa0351000 0x1000>;
clocks = <&prcmu_clk PRCMU_DSI0CLK>, <&prcmu_clk PRCMU_DSI0ESCCLK>;
clock-names = "hs", "lp";
#address-cells = <1>;
#size-cells = <0>;
};
dsi1: dsi@a0352000 {
compatible = "ste,mcde-dsi";
reg = <0xa0352000 0x1000>;
clocks = <&prcmu_clk PRCMU_DSI1CLK>, <&prcmu_clk PRCMU_DSI1ESCCLK>;
clock-names = "hs", "lp";
#address-cells = <1>;
#size-cells = <0>;
};
dsi2: dsi@a0353000 {
compatible = "ste,mcde-dsi";
reg = <0xa0353000 0x1000>;
/* This DSI port only has the Low Power / Energy Save clock */
clocks = <&prcmu_clk PRCMU_DSI2ESCCLK>;
clock-names = "lp";
#address-cells = <1>;
#size-cells = <0>;
};
2013-11-14 15:21:00 +01:00
};
2013-05-16 12:27:21 +01:00
cryp@a03cb000 {
compatible = "stericsson,ux500-cryp";
reg = <0xa03cb000 0x1000>;
2016-03-24 15:48:47 +01:00
interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
2013-05-16 12:27:21 +01:00
v-ape-supply = <&db8500_vape_reg>;
2013-09-18 16:05:52 +01:00
clocks = <&prcc_pclk 6 1>;
2013-05-16 12:27:21 +01:00
};
2013-05-16 12:27:22 +01:00
hash@a03c2000 {
compatible = "stericsson,ux500-hash";
reg = <0xa03c2000 0x1000>;
v-ape-supply = <&db8500_vape_reg>;
2013-09-18 16:07:27 +01:00
clocks = <&prcc_pclk 6 2>;
2013-05-16 12:27:22 +01:00
};
2012-03-02 23:07:21 +00:00
};
};