Commit 9d8a71ff authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'ux500-v4.2-dt' of...

Merge tag 'ux500-v4.2-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/dt

Merge "Ux500 Device Tree changes for the v4.2 series" form Linus Walleij:

Define CPU topology, connect that with CoreSight blocks,
add sensor information to DT boards.

* tag 'ux500-v4.2-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
  ARM: ux500: add the sensors to the STUIB board
  ARM: ux500: assign the sensor trigger IRQs
  ARM: ux500: fix lsm303dlh magnetometer compat string
  ARM: ux500: add CoreSight blocks to DTS file
  ARM: ux500: define CPU topology
parents 58d2bc7b df44ad87
......@@ -22,6 +22,160 @@ soc {
interrupt-parent = <&intc>;
ranges;
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu-map {
cluster0 {
core0 {
cpu = <&CPU0>;
};
core1 {
cpu = <&CPU1>;
};
};
};
CPU0: cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a9";
reg = <0>;
};
CPU1: cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a9";
reg = <1>;
};
};
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>;
port {
ptm0_out_port: endpoint {
remote-endpoint = <&funnel_in_port0>;
};
};
};
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>;
port {
ptm1_out_port: endpoint {
remote-endpoint = <&funnel_in_port1>;
};
};
};
funnel@801a6000 {
compatible = "arm,coresight-funnel", "arm,primecell";
reg = <0x801a6000 0x1000>;
clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "apb_pclk", "atclk";
ports {
#address-cells = <1>;
#size-cells = <0>;
/* funnel output ports */
port@0 {
reg = <0>;
funnel_out_port: endpoint {
remote-endpoint =
<&replicator_in_port0>;
};
};
/* funnel input ports */
port@1 {
reg = <0>;
funnel_in_port0: endpoint {
slave-mode;
remote-endpoint = <&ptm0_out_port>;
};
};
port@2 {
reg = <1>;
funnel_in_port1: endpoint {
slave-mode;
remote-endpoint = <&ptm1_out_port>;
};
};
};
};
replicator {
compatible = "arm,coresight-replicator";
clocks = <&prcmu_clk PRCMU_APEATCLK>;
clock-names = "atclk";
ports {
#address-cells = <1>;
#size-cells = <0>;
/* replicator output ports */
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>;
};
};
/* replicator input port */
port@2 {
reg = <0>;
replicator_in_port0: endpoint {
slave-mode;
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";
port {
tpiu_in_port: endpoint {
slave-mode;
remote-endpoint = <&replicator_out_port0>;
};
};
};
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";
port {
etb_in_port: endpoint {
slave-mode;
remote-endpoint = <&replicator_out_port1>;
};
};
};
intc: interrupt-controller@a0411000 {
compatible = "arm,cortex-a9-gic";
#interrupt-cells = <3>;
......
......@@ -77,6 +77,34 @@ stmpe_keypad {
};
};
/* Sensors mounted on this board variant */
i2c@80128000 {
lis331dl@1c {
/* Accelerometer */
compatible = "st,lis331dl-accel";
st,drdy-int-pin = <1>;
reg = <0x1c>;
vdd-supply = <&ab8500_ldo_aux1_reg>;
vddio-supply = <&db8500_vsmps2_reg>;
pinctrl-names = "default";
pinctrl-0 = <&accel_stuib_mode>;
interrupt-parent = <&gpio2>;
interrupts = <18 IRQ_TYPE_EDGE_RISING>,
<19 IRQ_TYPE_EDGE_RISING>;
};
ak8974@0f {
/* Magnetometer */
compatible = "asahi-kasei,ak8974";
reg = <0x0f>;
vdd-supply = <&ab8500_ldo_aux1_reg>;
vddio-supply = <&db8500_vsmps2_reg>;
pinctrl-names = "default";
pinctrl-0 = <&magneto_stuib_mode>;
interrupt-parent = <&gpio1>;
interrupts = <0 IRQ_TYPE_EDGE_RISING>;
};
};
i2c@80110000 {
bu21013_tp@5c {
compatible = "rohm,bu21013_tp";
......@@ -116,6 +144,28 @@ stuib_cfg {
};
};
};
accelerometer {
accel_stuib_mode: accel_stuib {
/* Accelerometer interrupt lines 1 & 2 */
stuib_cfg {
pins = "GPIO82_C1", "GPIO83_D3";
ste,config = <&gpio_in_pu>;
};
};
};
magnetometer {
magneto_stuib_mode: magneto_stuib {
/* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */
stuib_cfg1 {
pins = "GPIO31_V3";
ste,config = <&gpio_in_pu>;
};
stuib_cfg2 {
pins = "GPIO32_V2";
ste,config = <&gpio_in_pd>;
};
};
};
};
};
};
......@@ -99,10 +99,13 @@ lsm303dlh@18 {
vddio-supply = <&db8500_vsmps2_reg>;
pinctrl-names = "default";
pinctrl-0 = <&accel_tvk_mode>;
interrupt-parent = <&gpio2>;
interrupts = <18 IRQ_TYPE_EDGE_RISING>,
<19 IRQ_TYPE_EDGE_RISING>;
};
lsm303dlm@1e {
lsm303dlh@1e {
/* Magnetometer */
compatible = "st,lsm303dlm-magn";
compatible = "st,lsm303dlh-magn";
reg = <0x1e>;
vdd-supply = <&ab8500_ldo_aux1_reg>;
vddio-supply = <&db8500_vsmps2_reg>;
......
......@@ -262,15 +262,19 @@ lsm303dlh@18 {
vddio-supply = <&db8500_vsmps2_reg>;
pinctrl-names = "default";
pinctrl-0 = <&accel_snowball_mode>;
interrupt-parent = <&gpio5>;
interrupts = <3 IRQ_TYPE_EDGE_RISING>, /* INT1 */
<4 IRQ_TYPE_EDGE_RISING>; /* INT2 */
};
lsm303dlm@1e {
lsm303dlh@1e {
/* Magnetometer */
compatible = "st,lsm303dlm-magn";
compatible = "st,lsm303dlh-magn";
reg = <0x1e>;
vdd-supply = <&ab8500_ldo_aux1_reg>;
vddio-supply = <&db8500_vsmps2_reg>;
pinctrl-names = "default";
pinctrl-0 = <&magneto_snowball_mode>;
gpios = <&gpio5 5 0x4>; /* DRDY line */
};
l3g4200d@68 {
/* Gyroscope */
......@@ -279,6 +283,11 @@ l3g4200d@68 {
reg = <0x68>;
vdd-supply = <&ab8500_ldo_aux1_reg>;
vddio-supply = <&db8500_vsmps2_reg>;
pinctrl-names = "default";
pinctrl-0 = <&gyro_snowball_mode>;
gpios = <&gpio5 6 0x4>; /* DRDY line */
interrupt-parent = <&gpio5>;
interrupts = <9 IRQ_TYPE_EDGE_RISING>; /* INT1 */
};
lsp001wm@5c {
/* Barometer/pressure sensor */
......@@ -489,6 +498,16 @@ snowball_cfg1 {
};
};
};
gyro {
gyro_snowball_mode: gyro_snowball {
snowball_cfg1 {
pins =
"GPIO166_A22", /* DRDY */
"GPIO169_D22"; /* INT */
ste,config = <&gpio_in_pu>;
};
};
};
magnetometer {
magneto_snowball_mode: magneto_snowball {
snowball_cfg1 {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment