mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 06:09:23 -04:00
ARM: dts: msm: Add initial device tree for SA2150P
Add initial device tree for SA2150P target. Change-Id: I107ed97c75f15c91e94a470182d4ec749abce7a8
This commit is contained in:
parent
7dea9d66a7
commit
87c8a2379a
8 changed files with 446 additions and 0 deletions
|
|
@ -163,6 +163,9 @@ Generic board variants:
|
|||
- HDK device:
|
||||
compatible = "qcom,hdk"
|
||||
|
||||
- SA2150P
|
||||
compatible = "qcom,sa2150p"
|
||||
|
||||
|
||||
Boards (SoC type + board variant):
|
||||
|
||||
|
|
@ -272,6 +275,7 @@ compatible = "qcom,sa6155-adp-air"
|
|||
compatible = "qcom,sa6155p-adp-air"
|
||||
compatible = "qcom,qcs405-rumi"
|
||||
compatible = "qcom,qcs405-iot"
|
||||
compatible = "qcom,sa2150p-ccard"
|
||||
compatible = "qcom,qcs403-iot"
|
||||
compatible = "qcom,sa8150-adp-star"
|
||||
compatible = "qcom,adp-star"
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ Properties:
|
|||
"qcom,mpm-gic-scuba"
|
||||
"qcom,mpm-gic-sdxnightjar"
|
||||
"qcom,mpm-gic-monaco"
|
||||
"qcom,mpm-gic-qcs405"
|
||||
|
||||
- interrupts:
|
||||
Usage: required
|
||||
|
|
|
|||
|
|
@ -357,6 +357,8 @@ else
|
|||
dtb-$(CONFIG_ARCH_SA8195) += sa8195p-adp-star.dtb \
|
||||
sa8195p-v2-adp-air.dtb
|
||||
endif
|
||||
|
||||
dtb-$(CONFIG_ARCH_SA2150P) += sa2150p-ccard-emmc.dtb
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_ARCH_LAHAINA), y)
|
||||
|
|
|
|||
114
qcom/qcs405-cpu.dtsi
Normal file
114
qcom/qcs405-cpu.dtsi
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
/ {
|
||||
psci {
|
||||
compatible = "arm,psci-1.0";
|
||||
method = "smc";
|
||||
};
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
cpu-map {
|
||||
cluster0 {
|
||||
core0 {
|
||||
cpu = <&CPU0>;
|
||||
};
|
||||
|
||||
core1 {
|
||||
cpu = <&CPU1>;
|
||||
};
|
||||
|
||||
core2 {
|
||||
cpu = <&CPU2>;
|
||||
};
|
||||
|
||||
core3 {
|
||||
cpu = <&CPU3>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
CPU0: cpu@100 {
|
||||
device_type = "cpu";
|
||||
compatible = "arm,cortex-a53";
|
||||
reg = <0x100>;
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <1024>;
|
||||
next-level-cache = <&L2_1>;
|
||||
#cooling-cells = <2>;
|
||||
L2_1: l2-cache {
|
||||
compatible = "arm,arch-cache";
|
||||
cache-level = <2>;
|
||||
/* A53 L2 dump not supported */
|
||||
qcom,dump-size = <0x0>;
|
||||
};
|
||||
|
||||
L1_I_100: l1-icache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x8800>;
|
||||
};
|
||||
|
||||
L1_D_100: l1-dcache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x9000>;
|
||||
};
|
||||
};
|
||||
|
||||
CPU1: cpu@101 {
|
||||
device_type = "cpu";
|
||||
compatible = "arm,cortex-a53";
|
||||
reg = <0x101>;
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <1024>;
|
||||
next-level-cache = <&L2_1>;
|
||||
#cooling-cells = <2>;
|
||||
L1_I_101: l1-icache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x8800>;
|
||||
};
|
||||
|
||||
L1_D_101: l1-dcache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x9000>;
|
||||
};
|
||||
};
|
||||
|
||||
CPU2: cpu@102 {
|
||||
device_type = "cpu";
|
||||
compatible = "arm,cortex-a53";
|
||||
reg = <0x102>;
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <1024>;
|
||||
next-level-cache = <&L2_1>;
|
||||
#cooling-cells = <2>;
|
||||
L1_I_102: l1-icache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x8800>;
|
||||
};
|
||||
|
||||
L1_D_102: l1-dcache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x9000>;
|
||||
};
|
||||
};
|
||||
|
||||
CPU3: cpu@103 {
|
||||
device_type = "cpu";
|
||||
compatible = "arm,cortex-a53";
|
||||
reg = <0x103>;
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <1024>;
|
||||
next-level-cache = <&L2_1>;
|
||||
#cooling-cells = <2>;
|
||||
L1_I_103: l1-icache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x8800>;
|
||||
};
|
||||
|
||||
L1_D_103: l1-dcache {
|
||||
compatible = "arm,arch-cache";
|
||||
qcom,dump-size = <0x9000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
28
qcom/qcs405-pinctrl.dtsi
Normal file
28
qcom/qcs405-pinctrl.dtsi
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
&soc {
|
||||
tlmm: pinctrl@1000000 {
|
||||
compatible = "qcom,qcs404-pinctrl";
|
||||
reg = <0x01000000 0x200000>,
|
||||
<0x01300000 0x200000>,
|
||||
<0x07b00000 0x200000>;
|
||||
reg-names = "south", "north", "east";
|
||||
interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
gpio-ranges = <&tlmm 0 0 120>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
|
||||
blsp1_uart2_default: blsp1-uart2-default {
|
||||
rx {
|
||||
pins = "gpio18";
|
||||
function = "blsp_uart_rx_a2";
|
||||
};
|
||||
|
||||
tx {
|
||||
pins = "gpio17";
|
||||
function = "blsp_uart_tx_a2";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
286
qcom/qcs405.dtsi
Normal file
286
qcom/qcs405.dtsi
Normal file
|
|
@ -0,0 +1,286 @@
|
|||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/clock/qcom,rpmcc.h>
|
||||
#include <dt-bindings/regulator/qcom,rpm-smd-regulator.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
|
||||
/ {
|
||||
model = "Qualcomm Technologies, Inc. QCS405";
|
||||
compatible = "qcom,qcs405";
|
||||
qcom,msm-id = <352 0x0>, <452 0x0>;
|
||||
interrupt-parent = <&intc>;
|
||||
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
aliases {
|
||||
serial0 = &blsp1_uart2_console;
|
||||
};
|
||||
|
||||
chosen {
|
||||
};
|
||||
|
||||
memory { device_type = "memory"; reg = <0 0 0 0>; };
|
||||
|
||||
reserved_mem: reserved-memory {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
removed_region0: removed_region@85900000 {
|
||||
no-map;
|
||||
reg = <0x0 0x85900000 0x0 0x600000>;
|
||||
};
|
||||
|
||||
smem_region: smem@85f00000 {
|
||||
no-map;
|
||||
reg = <0x0 0x85f00000 0x0 0x200000>;
|
||||
};
|
||||
|
||||
removed_region1: removed_region@86100000 {
|
||||
no-map;
|
||||
reg = <0x0 0x86100000 0x0 0x300000>;
|
||||
};
|
||||
|
||||
wlan_fw_mem: wlan_fw_mem@86400000 {
|
||||
no-map;
|
||||
reg = <0x0 0x86400000 0x0 0x1000000>;
|
||||
};
|
||||
|
||||
adsp_fw_mem: adsp_fw_mem@87400000 {
|
||||
no-map;
|
||||
reg = <0x0 0x87400000 0x0 0x1400000>;
|
||||
};
|
||||
|
||||
cdsp_fw_mem: cdsp_fw_mem@88800000 {
|
||||
no-map;
|
||||
reg = <0x0 0x88800000 0x0 0x800000>;
|
||||
};
|
||||
|
||||
wlan_msa_mem: wlan_msa_region@88E00000 {
|
||||
no-map;
|
||||
reg = <0x0 0x89000000 0x0 0x100000>;
|
||||
};
|
||||
|
||||
secure_mem: secure_region {
|
||||
status = "disabled";
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
alignment = <0 0x400000>;
|
||||
size = <0 0x7000000>;
|
||||
};
|
||||
|
||||
mdf_mem: mdf_region {
|
||||
compatible = "shared-dma-pool";
|
||||
alloc-ranges = <0 0x00000000 0 0xffffffff>;
|
||||
reusable;
|
||||
alignment = <0 0x400000>;
|
||||
size = <0 0x800000>;
|
||||
};
|
||||
|
||||
qseecom_mem: qseecom_region {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
alignment = <0 0x400000>;
|
||||
size = <0 0x1000000>;
|
||||
};
|
||||
|
||||
qseecom_ta_mem: qseecom_ta_region {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
alignment = <0 0x400000>;
|
||||
size = <0 0x400000>;
|
||||
};
|
||||
|
||||
adsp_mem: adsp_region {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
alignment = <0 0x400000>;
|
||||
size = <0 0x800000>;
|
||||
};
|
||||
|
||||
dump_mem: mem_dump_region {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0 0x400000>;
|
||||
};
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
linux,cma {
|
||||
compatible = "shared-dma-pool";
|
||||
alloc-ranges = <0 0x00000000 0 0xffffffff>;
|
||||
reusable;
|
||||
alignment = <0 0x400000>;
|
||||
size = <0 0x1000000>;
|
||||
linux,cma-default;
|
||||
};
|
||||
};
|
||||
|
||||
soc: soc { };
|
||||
|
||||
};
|
||||
|
||||
&soc {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0 0 0 0xffffffff>;
|
||||
compatible = "simple-bus";
|
||||
|
||||
intc: interrupt-controller@b000000 {
|
||||
compatible = "qcom,msm-qgic2";
|
||||
interrupt-controller;
|
||||
interrupt-parent = <&intc>;
|
||||
#interrupt-cells = <3>;
|
||||
reg = <0x0b000000 0x1000>,
|
||||
<0x0b002000 0x1000>;
|
||||
};
|
||||
|
||||
wakegic: wake-gic {
|
||||
compatible = "qcom,mpm-gic-qcs405", "qcom,mpm";
|
||||
interrupts = <GIC_SPI 171 IRQ_TYPE_EDGE_RISING>;
|
||||
reg = <0x601b8 0x1000>,
|
||||
<0xb011008 0x4>; /* MSM_APCS_GCC_BASE 4K */
|
||||
reg-names = "vmpm", "ipc";
|
||||
qcom,num-mpm-irqs = <96>;
|
||||
interrupt-controller;
|
||||
interrupt-parent = <&intc>;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
arch_timer: timer {
|
||||
compatible = "arm,armv8-timer";
|
||||
interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
|
||||
<GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
|
||||
<GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
|
||||
<GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
|
||||
clock-frequency = <19200000>;
|
||||
};
|
||||
|
||||
timer@b120000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
compatible = "arm,armv7-timer-mem";
|
||||
reg = <0xb120000 0x1000>;
|
||||
clock-frequency = <19200000>;
|
||||
|
||||
frame@b121000 {
|
||||
frame-number = <0>;
|
||||
interrupts = <0 8 0x4>,
|
||||
<0 7 0x4>;
|
||||
reg = <0xb121000 0x1000>,
|
||||
<0xb122000 0x1000>;
|
||||
};
|
||||
|
||||
frame@b123000 {
|
||||
frame-number = <1>;
|
||||
interrupts = <0 9 0x4>;
|
||||
reg = <0xb123000 0x1000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
frame@b124000 {
|
||||
frame-number = <2>;
|
||||
interrupts = <0 10 0x4>;
|
||||
reg = <0xb124000 0x1000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
frame@b125000 {
|
||||
frame-number = <3>;
|
||||
interrupts = <0 11 0x4>;
|
||||
reg = <0xb125000 0x1000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
frame@b126000 {
|
||||
frame-number = <4>;
|
||||
interrupts = <0 12 0x4>;
|
||||
reg = <0xb126000 0x1000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
frame@b127000 {
|
||||
frame-number = <5>;
|
||||
interrupts = <0 13 0x4>;
|
||||
reg = <0xb127000 0x1000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
frame@b128000 {
|
||||
frame-number = <6>;
|
||||
interrupts = <0 14 0x4>;
|
||||
reg = <0xb128000 0x1000>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
clocks {
|
||||
xo_board {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <19200000>;
|
||||
clock-output-names = "xo_board";
|
||||
};
|
||||
};
|
||||
|
||||
qcom,msm-rtb {
|
||||
compatible = "qcom,msm-rtb";
|
||||
qcom,rtb-size = <0x100000>;
|
||||
};
|
||||
|
||||
blsp1_uart2_console: serial@78b1000 {
|
||||
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
|
||||
reg = <0x078b1000 0x200>;
|
||||
interrupts = <0 118 0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&blsp1_uart2_default>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
qcom,msm-imem@8600000 {
|
||||
compatible = "qcom,msm-imem";
|
||||
reg = <0x08600000 0x1000>; /* Address and size of IMEM */
|
||||
ranges = <0x0 0x08600000 0x1000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
mem_dump_table@10 {
|
||||
compatible = "qcom,msm-imem-mem_dump_table";
|
||||
reg = <0x10 0x8>;
|
||||
};
|
||||
|
||||
dload_type@18 {
|
||||
compatible = "qcom,msm-imem-dload-type";
|
||||
reg = <0x18 0x4>;
|
||||
};
|
||||
|
||||
restart_reason@65c {
|
||||
compatible = "qcom,msm-imem-restart_reason";
|
||||
reg = <0x65c 0x4>;
|
||||
};
|
||||
|
||||
boot_stats@6b0 {
|
||||
compatible = "qcom,msm-imem-boot_stats";
|
||||
reg = <0x6b0 0x20>;
|
||||
};
|
||||
|
||||
pil@94c {
|
||||
compatible = "qcom,msm-imem-pil";
|
||||
reg = <0x94c 0xc8>;
|
||||
};
|
||||
|
||||
diag_dload@c8 {
|
||||
compatible = "qcom,msm-imem-diag-dload";
|
||||
reg = <0xc8 0xc8>;
|
||||
};
|
||||
|
||||
kaslr_offset@6d0 {
|
||||
compatible = "qcom,msm-imem-kaslr_offset";
|
||||
reg = <0x6d0 0xc>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#include "qcs405-pinctrl.dtsi"
|
||||
#include "qcs405-cpu.dtsi"
|
||||
10
qcom/sa2150p-ccard-emmc.dts
Normal file
10
qcom/sa2150p-ccard-emmc.dts
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
/dts-v1/;
|
||||
|
||||
#include "sa2150p-ccard.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Qualcomm Technologies, Inc. SA2150P CCARD EMMC";
|
||||
compatible = "qcom,sa2150p-ccard", "qcom,qcs405", "qcom,sa2150p",
|
||||
"qcom,ccard";
|
||||
qcom,board-id = <25 0>, <25 0x100>;
|
||||
};
|
||||
1
qcom/sa2150p-ccard.dtsi
Normal file
1
qcom/sa2150p-ccard.dtsi
Normal file
|
|
@ -0,0 +1 @@
|
|||
#include "qcs405.dtsi"
|
||||
Loading…
Reference in a new issue