Commit f237822f authored by Yann Gautier's avatar Yann Gautier
Browse files

fdts: stm32mp1: realign device tree files with internal devs



Update DDR parameters to version 1.45.
Remove useless sdmmc1_dir_pins_b node.
Add USART3 and UART7 nodes.
Correct a PMIC value for USB regulator.
Add TIMER12, TIMER15, CRYP, HASH and USBOTG_HS nodes.
Update DTSI file for SDMMC compatible, but overwrite it with the former
name.
Move BSEC board_id node to boards DTS files, as this OTP is specific to
STMicroelectronics boards.

Change-Id: If4d2fe090c6a8368afe8e21e5ac70579911d3939
Signed-off-by: default avatarYann Gautier <yann.gautier@st.com>
parent 0a016775
// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause // SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
/* /*
* Copyright (C) 2018, STMicroelectronics - All Rights Reserved * Copyright (C) 2018, STMicroelectronics - All Rights Reserved
*/ *
/* STM32MP157C DK1/DK2 BOARD configuration * STM32MP157C DK1/DK2 BOARD configuration
* 1x DDR3L 4Gb, 16-bit, 533MHz. * 1x DDR3L 4Gb, 16-bit, 533MHz.
* Reference used NT5CC256M16DP-DI from NANYA * Reference used NT5CC256M16DP-DI from NANYA
* *
...@@ -16,8 +16,7 @@ ...@@ -16,8 +16,7 @@
* address mapping : RBC * address mapping : RBC
* Tc > + 85C : N * Tc > + 85C : N
*/ */
#define DDR_MEM_NAME "DDR3-1066/888 bin G 1x4Gb 533MHz v1.45"
#define DDR_MEM_NAME "DDR3-1066/888 bin G 1x4Gb 533MHz v1.41"
#define DDR_MEM_SPEED 533000 #define DDR_MEM_SPEED 533000
#define DDR_MEM_SIZE 0x20000000 #define DDR_MEM_SIZE 0x20000000
...@@ -90,7 +89,7 @@ ...@@ -90,7 +89,7 @@
#define DDR_PTR2 0x042DA068 #define DDR_PTR2 0x042DA068
#define DDR_ACIOCR 0x10400812 #define DDR_ACIOCR 0x10400812
#define DDR_DXCCR 0x00000C40 #define DDR_DXCCR 0x00000C40
#define DDR_DSGCR 0xF200001F #define DDR_DSGCR 0xF200011F
#define DDR_DCR 0x0000000B #define DDR_DCR 0x0000000B
#define DDR_DTPR0 0x38D488D0 #define DDR_DTPR0 0x38D488D0
#define DDR_DTPR1 0x098B00D8 #define DDR_DTPR1 0x098B00D8
...@@ -109,11 +108,11 @@ ...@@ -109,11 +108,11 @@
#define DDR_DX1DLLCR 0x40000000 #define DDR_DX1DLLCR 0x40000000
#define DDR_DX1DQTR 0xFFFFFFFF #define DDR_DX1DQTR 0xFFFFFFFF
#define DDR_DX1DQSTR 0x3DB02000 #define DDR_DX1DQSTR 0x3DB02000
#define DDR_DX2GCR 0x0000CE81 #define DDR_DX2GCR 0x0000CE80
#define DDR_DX2DLLCR 0x40000000 #define DDR_DX2DLLCR 0x40000000
#define DDR_DX2DQTR 0xFFFFFFFF #define DDR_DX2DQTR 0xFFFFFFFF
#define DDR_DX2DQSTR 0x3DB02000 #define DDR_DX2DQSTR 0x3DB02000
#define DDR_DX3GCR 0x0000CE81 #define DDR_DX3GCR 0x0000CE80
#define DDR_DX3DLLCR 0x40000000 #define DDR_DX3DLLCR 0x40000000
#define DDR_DX3DQTR 0xFFFFFFFF #define DDR_DX3DQTR 0xFFFFFFFF
#define DDR_DX3DQSTR 0x3DB02000 #define DDR_DX3DQSTR 0x3DB02000
......
// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause // SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
/* /*
* Copyright (C) 2018, STMicroelectronics - All Rights Reserved * Copyright (C) 2018, STMicroelectronics - All Rights Reserved
*/ *
* STM32MP157C ED1 BOARD configuration
/* STM32MP157C ED1 BOARD configuration
* 2x DDR3L 4Gb each, 16-bit, 533MHz, Single Die Package in flyby topology. * 2x DDR3L 4Gb each, 16-bit, 533MHz, Single Die Package in flyby topology.
* Reference used NT5CC256M16DP-DI from NANYA * Reference used NT5CC256M16DP-DI from NANYA
* *
...@@ -17,8 +16,7 @@ ...@@ -17,8 +16,7 @@
* address mapping : RBC * address mapping : RBC
* Tc > + 85C : N * Tc > + 85C : N
*/ */
#define DDR_MEM_NAME "DDR3-1066/888 bin G 2x4Gb 533MHz v1.45"
#define DDR_MEM_NAME "DDR3-1066/888 bin G 2x4Gb 533MHz v1.41"
#define DDR_MEM_SPEED 533000 #define DDR_MEM_SPEED 533000
#define DDR_MEM_SIZE 0x40000000 #define DDR_MEM_SIZE 0x40000000
...@@ -91,7 +89,7 @@ ...@@ -91,7 +89,7 @@
#define DDR_PTR2 0x042DA068 #define DDR_PTR2 0x042DA068
#define DDR_ACIOCR 0x10400812 #define DDR_ACIOCR 0x10400812
#define DDR_DXCCR 0x00000C40 #define DDR_DXCCR 0x00000C40
#define DDR_DSGCR 0xF200001F #define DDR_DSGCR 0xF200011F
#define DDR_DCR 0x0000000B #define DDR_DCR 0x0000000B
#define DDR_DTPR0 0x38D488D0 #define DDR_DTPR0 0x38D488D0
#define DDR_DTPR1 0x098B00D8 #define DDR_DTPR1 0x098B00D8
......
...@@ -214,21 +214,6 @@ ...@@ -214,21 +214,6 @@
}; };
}; };
sdmmc1_dir_pins_b: sdmmc1-dir-1 {
pins1 {
pinmux = <STM32_PINMUX('E', 12, AF8)>, /* SDMMC1_D0DIR */
<STM32_PINMUX('E', 14, AF11)>, /* SDMMC1_D123DIR */
<STM32_PINMUX('B', 9, AF11)>; /* SDMMC1_CDIR */
slew-rate = <3>;
drive-push-pull;
bias-pull-up;
};
pins2 {
pinmux = <STM32_PINMUX('E', 4, AF8)>; /* SDMMC1_CKIN */
bias-pull-up;
};
};
sdmmc2_b4_pins_a: sdmmc2-b4-0 { sdmmc2_b4_pins_a: sdmmc2-b4-0 {
pins1 { pins1 {
pinmux = <STM32_PINMUX('B', 14, AF9)>, /* SDMMC2_D0 */ pinmux = <STM32_PINMUX('B', 14, AF9)>, /* SDMMC2_D0 */
...@@ -286,6 +271,19 @@ ...@@ -286,6 +271,19 @@
}; };
}; };
uart7_pins_a: uart7-0 {
pins1 {
pinmux = <STM32_PINMUX('E', 8, AF7)>; /* USART7_TX */
bias-disable;
drive-push-pull;
slew-rate = <0>;
};
pins2 {
pinmux = <STM32_PINMUX('E', 7, AF7)>; /* USART7_RX */
bias-disable;
};
};
usart3_pins_a: usart3-0 { usart3_pins_a: usart3-0 {
pins1 { pins1 {
pinmux = <STM32_PINMUX('B', 10, AF7)>, /* USART3_TX */ pinmux = <STM32_PINMUX('B', 10, AF7)>, /* USART3_TX */
...@@ -300,6 +298,21 @@ ...@@ -300,6 +298,21 @@
bias-disable; bias-disable;
}; };
}; };
usart3_pins_b: usart3-1 {
pins1 {
pinmux = <STM32_PINMUX('B', 10, AF7)>, /* USART3_TX */
<STM32_PINMUX('G', 8, AF8)>; /* USART3_RTS */
bias-disable;
drive-push-pull;
slew-rate = <0>;
};
pins2 {
pinmux = <STM32_PINMUX('B', 12, AF8)>, /* USART3_RX */
<STM32_PINMUX('B', 13, AF7)>; /* USART3_CTS_NSS */
bias-disable;
};
};
}; };
pinctrl_z: pin-controller-z@54004000 { pinctrl_z: pin-controller-z@54004000 {
......
...@@ -15,6 +15,8 @@ ...@@ -15,6 +15,8 @@
aliases { aliases {
serial0 = &uart4; serial0 = &uart4;
serial1 = &usart3;
serial2 = &uart7;
}; };
chosen { chosen {
...@@ -176,6 +178,18 @@ ...@@ -176,6 +178,18 @@
status = "okay"; status = "okay";
}; };
&uart7 {
pinctrl-names = "default";
pinctrl-0 = <&uart7_pins_a>;
status = "disabled";
};
&usart3 {
pinctrl-names = "default";
pinctrl-0 = <&usart3_pins_b>;
status = "disabled";
};
/* ATF Specific */ /* ATF Specific */
#include <dt-bindings/clock/stm32mp1-clksrc.h> #include <dt-bindings/clock/stm32mp1-clksrc.h>
#include "stm32mp15-ddr3-1x4Gb-1066-binG.dtsi" #include "stm32mp15-ddr3-1x4Gb-1066-binG.dtsi"
...@@ -287,3 +301,11 @@ ...@@ -287,3 +301,11 @@
cfg = < 3 98 5 7 7 PQR(1,1,1) >; cfg = < 3 98 5 7 7 PQR(1,1,1) >;
}; };
}; };
&bsec {
board_id: board_id@ec {
reg = <0xec 0x4>;
status = "okay";
secure-status = "okay";
};
};
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
st,main-control-register = <0x04>; st,main-control-register = <0x04>;
st,vin-control-register = <0xc0>; st,vin-control-register = <0xc0>;
st,usb-control-register = <0x30>; st,usb-control-register = <0x20>;
regulators { regulators {
compatible = "st,stpmic1-regulators"; compatible = "st,stpmic1-regulators";
...@@ -308,4 +308,10 @@ ...@@ -308,4 +308,10 @@
}; };
}; };
/delete-node/ &clk_csi; &bsec {
board_id: board_id@ec {
reg = <0xec 0x4>;
status = "okay";
secure-status = "okay";
};
};
...@@ -26,9 +26,12 @@ ...@@ -26,9 +26,12 @@
status = "okay"; status = "okay";
secure-status = "okay"; secure-status = "okay";
}; };
board_id: board_id@ec { };
reg = <0xec 0x4>;
status = "okay"; &sdmmc1 {
secure-status = "okay"; compatible = "st,stm32-sdmmc2";
}; };
&sdmmc2 {
compatible = "st,stm32-sdmmc2";
}; };
...@@ -70,6 +70,16 @@ ...@@ -70,6 +70,16 @@
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
ranges; ranges;
timers12: timer@40006000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32-timers";
reg = <0x40006000 0x400>;
clocks = <&rcc TIM12_K>;
clock-names = "int";
status = "disabled";
};
usart2: serial@4000e000 { usart2: serial@4000e000 {
compatible = "st,stm32h7-uart"; compatible = "st,stm32h7-uart";
reg = <0x4000e000 0x400>; reg = <0x4000e000 0x400>;
...@@ -127,8 +137,19 @@ ...@@ -127,8 +137,19 @@
status = "disabled"; status = "disabled";
}; };
timers15: timer@44006000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32-timers";
reg = <0x44006000 0x400>;
clocks = <&rcc TIM15_K>;
clock-names = "int";
status = "disabled";
};
sdmmc3: sdmmc@48004000 { sdmmc3: sdmmc@48004000 {
compatible = "st,stm32-sdmmc2"; compatible = "arm,pl18x", "arm,primecell";
arm,primecell-periphid = <0x00253180>;
reg = <0x48004000 0x400>, <0x48005000 0x400>; reg = <0x48004000 0x400>, <0x48005000 0x400>;
clocks = <&rcc SDMMC3_K>; clocks = <&rcc SDMMC3_K>;
clock-names = "apb_pclk"; clock-names = "apb_pclk";
...@@ -139,6 +160,16 @@ ...@@ -139,6 +160,16 @@
status = "disabled"; status = "disabled";
}; };
usbotg_hs: usb-otg@49000000 {
compatible = "st,stm32mp1-hsotg", "snps,dwc2";
reg = <0x49000000 0x10000>;
clocks = <&rcc USBO_K>;
clock-names = "otg";
resets = <&rcc USBO_R>;
reset-names = "dwc2";
status = "disabled";
};
rcc: rcc@50000000 { rcc: rcc@50000000 {
compatible = "st,stm32mp1-rcc", "syscon"; compatible = "st,stm32mp1-rcc", "syscon";
reg = <0x50000000 0x1000>; reg = <0x50000000 0x1000>;
...@@ -176,6 +207,24 @@ ...@@ -176,6 +207,24 @@
clocks = <&rcc SYSCFG>; clocks = <&rcc SYSCFG>;
}; };
cryp1: cryp@54001000 {
compatible = "st,stm32mp1-cryp";
reg = <0x54001000 0x400>;
interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc CRYP1>;
resets = <&rcc CRYP1_R>;
status = "disabled";
};
hash1: hash@54002000 {
compatible = "st,stm32f756-hash";
reg = <0x54002000 0x400>;
interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc HASH1>;
resets = <&rcc HASH1_R>;
status = "disabled";
};
rng1: rng@54003000 { rng1: rng@54003000 {
compatible = "st,stm32-rng"; compatible = "st,stm32-rng";
reg = <0x54003000 0x400>; reg = <0x54003000 0x400>;
...@@ -208,7 +257,8 @@ ...@@ -208,7 +257,8 @@
}; };
sdmmc1: sdmmc@58005000 { sdmmc1: sdmmc@58005000 {
compatible = "st,stm32-sdmmc2"; compatible = "arm,pl18x", "arm,primecell";
arm,primecell-periphid = <0x00253180>;
reg = <0x58005000 0x1000>, <0x58006000 0x1000>; reg = <0x58005000 0x1000>, <0x58006000 0x1000>;
clocks = <&rcc SDMMC1_K>; clocks = <&rcc SDMMC1_K>;
clock-names = "apb_pclk"; clock-names = "apb_pclk";
...@@ -220,7 +270,8 @@ ...@@ -220,7 +270,8 @@
}; };
sdmmc2: sdmmc@58007000 { sdmmc2: sdmmc@58007000 {
compatible = "st,stm32-sdmmc2"; compatible = "arm,pl18x", "arm,primecell";
arm,primecell-periphid = <0x00253180>;
reg = <0x58007000 0x1000>, <0x58008000 0x1000>; reg = <0x58007000 0x1000>, <0x58008000 0x1000>;
clocks = <&rcc SDMMC2_K>; clocks = <&rcc SDMMC2_K>;
clock-names = "apb_pclk"; clock-names = "apb_pclk";
......
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