All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10
@ 2019-07-30 17:16 Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 01/48] stm32mp1: cosmetic: remove comment Patrick Delaunay
                   ` (47 more replies)
  0 siblings, 48 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot


Second serie of patches for stm32mp1 support in U-Boot
- sync device tree with kernel v5.3-rc2
- update configs
- update board stm32mp1
- few ram and clk driver update


Christophe Kerello (1):
  mmc: stm32_sdmmc2: reload watchdog

Patrice Chotard (2):
  pinctrl: pinctrl_stm32: cosmetic: Reorder include files
  stm32mp1: configs: Set bootdelay to 1

Patrick Delaunay (45):
  stm32mp1: cosmetic: remove comment
  pinctrl: stmfx: update pinconf settings
  ARM: dts: stm32mp1: sync device tree with v5.3-rc2
  ARM: dts: stm32mp1: DDR config v1.45
  ARM: dts: stm32mp1: Add iwdg2 support for SPL
  ARM: dts: stm32mp1: Add PSCI node access before relocation
  ARM: dts: stm32mp1: add ldtc pre-reloc proper in SOC file
  ARM: dts: stm32mp1: add key support on DK1/DK2
  ARM: dts: stm32mp1: add pull-up on serial rx of console connected to
    STLINK
  dt-bindings: clock: stm32mp1: support disabled fixed clock
  stpmic1: program pmic to keep only the debug unit on
  stm32mp1: configs: remove CONFIG_SYS_HZ
  stm32mp1: configs: activate CONFIG_SILENT_CONSOLE
  stm32mp1: configs: activate PRE_CONSOLE_BUFFER
  stm32mp1: configs: deactivate ARMV7_VIRT for basic boot
  stm32mp1: configs: select CONFIG_STM32_SERIAL
  stm32mp1: configs: Activate DISABLE_CONSOLE
  stm32mp1: configs: support MTDPARTS only if needed
  stm32mp1: configs: imply CONFIG_OF_LIBFDT_OVERLAY
  stm32mp1: configs: Deactivate SPI_FLASH_BAR
  stm32mp1: configs: add CONFIG_DM_VIDEO
  stm32mp1: configs: add BACKLIGHT_GPIO support
  stm32mp1: configs: add CONFIG_CMD_BMP
  stm32mp1: configs: add condition to activate WATCHDOG in SPL
  stm32mp1: configs: add altbootcmd
  stm32mp1: configs: add spi load support in spl
  stm32mp1: board: add environment variable for board id and board rev
  stm32mp1: board: enable v1v2_hdmi and v3v3_hdmi regulator on dk2 boot
  stm32mp1: board: support of error led on ed1/ev1 board
  stm32mp1: board: protect the led function calls
  stm32mp1: board: check the boot-source to disable bootdelay
  stm32mp1: board: Update the way vdd-supply is retrieved from DT
  stm32mp1: board: remove board_check_usb_power when ADC is not
    activated
  stm32mp1: board: cosmetic: cleanup file
  serial: stm32: add Framing error support
  serial: stm32: remove unused include
  stm32mp1: ram: cosmetic: remove unused prototype
  stm32mp1: ram: fix address issue in 2 tests
  stm32mp1: ram: update loop management in infinite test
  stm32mp1: ram: reload watchdog during ddr test
  stm32mp1: ram: add pattern parameter in infinite write test
  stm32mp1: Makefile cleanup
  stm32mp1: clk: remove debug traces
  stm32mp1: clk: use gd to store frequency information
  MAINTAINERS: update ARM STM STM32MP and STM32MP1 BOARD

 MAINTAINERS                                      |  19 +-
 arch/arm/Kconfig                                 |   1 +
 arch/arm/dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi |   4 +-
 arch/arm/dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi |   5 +-
 arch/arm/dts/stm32mp157-pinctrl.dtsi             | 234 +++++++++++++++++++----
 arch/arm/dts/stm32mp157-u-boot.dtsi              |  14 ++
 arch/arm/dts/stm32mp157a-avenger96.dts           |  44 +++--
 arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi         |   4 +
 arch/arm/dts/stm32mp157a-dk1.dts                 |  73 ++++++-
 arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi         |   6 +
 arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi         |  23 +--
 arch/arm/dts/stm32mp157c-ed1.dts                 |  23 ++-
 arch/arm/dts/stm32mp157c-ev1-u-boot.dtsi         |   5 -
 arch/arm/dts/stm32mp157c-ev1.dts                 | 109 ++++++++++-
 arch/arm/dts/stm32mp157c.dtsi                    | 180 +++++++++++++++++
 arch/arm/dts/stm32mp157xaa-pinctrl.dtsi          |  90 +++++++++
 arch/arm/dts/stm32mp157xab-pinctrl.dtsi          |  62 ++++++
 arch/arm/dts/stm32mp157xac-pinctrl.dtsi          |  78 ++++++++
 arch/arm/dts/stm32mp157xad-pinctrl.dtsi          |  62 ++++++
 arch/arm/mach-stm32mp/Kconfig                    |  14 +-
 arch/arm/mach-stm32mp/Makefile                   |   3 +-
 arch/arm/mach-stm32mp/include/mach/stm32.h       |   1 +
 board/st/stm32mp1/Kconfig                        |   4 +
 board/st/stm32mp1/MAINTAINERS                    |   5 +-
 board/st/stm32mp1/spl.c                          |  14 ++
 board/st/stm32mp1/stm32mp1.c                     | 162 ++++++++++++++--
 configs/stm32mp15_basic_defconfig                |   6 +-
 configs/stm32mp15_optee_defconfig                |   5 +-
 configs/stm32mp15_trusted_defconfig              |   5 +-
 doc/device-tree-bindings/clock/st,stm32mp1.txt   |   4 +-
 drivers/clk/clk_stm32mp1.c                       |  37 ++--
 drivers/mmc/stm32_sdmmc2.c                       |   3 +
 drivers/pinctrl/pinctrl-stmfx.c                  |  20 +-
 drivers/pinctrl/pinctrl_stm32.c                  |   4 +-
 drivers/ram/stm32mp1/stm32mp1_ddr.h              |   4 -
 drivers/ram/stm32mp1/stm32mp1_tests.c            |  97 ++++++----
 drivers/serial/serial_stm32.c                    |   5 +-
 drivers/serial/serial_stm32.h                    |   2 +
 include/configs/stm32mp1.h                       |  17 +-
 include/dm/platform_data/serial_stm32.h          |  15 --
 include/power/stpmic1.h                          |   5 +-
 41 files changed, 1250 insertions(+), 218 deletions(-)
 create mode 100644 arch/arm/dts/stm32mp157xaa-pinctrl.dtsi
 create mode 100644 arch/arm/dts/stm32mp157xab-pinctrl.dtsi
 create mode 100644 arch/arm/dts/stm32mp157xac-pinctrl.dtsi
 create mode 100644 arch/arm/dts/stm32mp157xad-pinctrl.dtsi
 delete mode 100644 include/dm/platform_data/serial_stm32.h

-- 
2.7.4

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 01/48] stm32mp1: cosmetic: remove comment
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 02/48] pinctrl: pinctrl_stm32: cosmetic: Reorder include files Patrick Delaunay
                   ` (46 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Remove unnecessary comment.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 include/configs/stm32mp1.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/include/configs/stm32mp1.h b/include/configs/stm32mp1.h
index 24f7b9d..1bed570 100644
--- a/include/configs/stm32mp1.h
+++ b/include/configs/stm32mp1.h
@@ -52,7 +52,6 @@
 
 /* SPL support */
 #ifdef CONFIG_SPL
-/* BOOTROM load address */
 /* SPL use DDR */
 #define CONFIG_SPL_BSS_START_ADDR	0xC0200000
 #define CONFIG_SPL_BSS_MAX_SIZE		0x00100000
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 02/48] pinctrl: pinctrl_stm32: cosmetic: Reorder include files
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 01/48] stm32mp1: cosmetic: remove comment Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 03/48] pinctrl: stmfx: update pinconf settings Patrick Delaunay
                   ` (45 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

From: Patrice Chotard <patrice.chotard@st.com>

Reorder include files

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/pinctrl/pinctrl_stm32.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/pinctrl/pinctrl_stm32.c b/drivers/pinctrl/pinctrl_stm32.c
index cdbe463..3a235ae 100644
--- a/drivers/pinctrl/pinctrl_stm32.c
+++ b/drivers/pinctrl/pinctrl_stm32.c
@@ -1,11 +1,11 @@
 #include <common.h>
 #include <dm.h>
-#include <dm/lists.h>
-#include <dm/pinctrl.h>
 #include <hwspinlock.h>
 #include <asm/arch/gpio.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
+#include <dm/lists.h>
+#include <dm/pinctrl.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 03/48] pinctrl: stmfx: update pinconf settings
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 01/48] stm32mp1: cosmetic: remove comment Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 02/48] pinctrl: pinctrl_stm32: cosmetic: Reorder include files Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 04/48] ARM: dts: stm32mp1: sync device tree with v5.3-rc2 Patrick Delaunay
                   ` (44 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Alignment with kernel driver.

According to the following tab (coming from STMFX datasheet), updates
have to done in stmfx_pinctrl_conf_set function:

-"type" has to be set when "bias" is configured as "pull-up or pull-down"
-PIN_CONFIG_DRIVE_PUSH_PULL should only be used when gpio is configured as
 output. There is so no need to check direction.

  DIR | TYPE | PUPD | MFX GPIO configuration
  ----|------|------|---------------------------------------------------
  1   | 1    | 1    | OUTPUT open drain with internal pull-up resistor
  ----|------|------|---------------------------------------------------
  1   | 1    | 0    | OUTPUT open drain with internal pull-down resistor
  ----|------|------|---------------------------------------------------
  1   | 0    | 0/1  | OUTPUT push pull no pull
  ----|------|------|---------------------------------------------------
  0   | 1    | 1    | INPUT with internal pull-up resistor
  ----|------|------|---------------------------------------------------
  0   | 1    | 0    | INPUT with internal pull-down resistor
  ----|------|------|---------------------------------------------------
  0   | 0    | 1    | INPUT floating
  ----|------|------|---------------------------------------------------
  0   | 0    | 0    | analog (GPIO not used, default setting)

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/pinctrl/pinctrl-stmfx.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c
index 5431df9..0b5a043 100644
--- a/drivers/pinctrl/pinctrl-stmfx.c
+++ b/drivers/pinctrl/pinctrl-stmfx.c
@@ -231,23 +231,23 @@ static int stmfx_pinctrl_conf_set(struct udevice *dev, unsigned int pin,
 	switch (param) {
 	case PIN_CONFIG_BIAS_PULL_PIN_DEFAULT:
 	case PIN_CONFIG_BIAS_DISABLE:
+	case PIN_CONFIG_DRIVE_PUSH_PULL:
+		ret = stmfx_pinctrl_set_type(dev, pin, 0);
+		break;
 	case PIN_CONFIG_BIAS_PULL_DOWN:
+		ret = stmfx_pinctrl_set_type(dev, pin, 1);
+		if (ret)
+			return ret;
 		ret = stmfx_pinctrl_set_pupd(dev, pin, 0);
 		break;
 	case PIN_CONFIG_BIAS_PULL_UP:
+		ret = stmfx_pinctrl_set_type(dev, pin, 1);
+		if (ret)
+			return ret;
 		ret = stmfx_pinctrl_set_pupd(dev, pin, 1);
 		break;
 	case PIN_CONFIG_DRIVE_OPEN_DRAIN:
-		if (dir == GPIOF_OUTPUT)
-			ret = stmfx_pinctrl_set_type(dev, pin, 1);
-		else
-			ret = stmfx_pinctrl_set_type(dev, pin, 0);
-		break;
-	case PIN_CONFIG_DRIVE_PUSH_PULL:
-		if (dir == GPIOF_OUTPUT)
-			ret = stmfx_pinctrl_set_type(dev, pin, 0);
-		else
-			ret = stmfx_pinctrl_set_type(dev, pin, 1);
+		ret = stmfx_pinctrl_set_type(dev, pin, 1);
 		break;
 	case PIN_CONFIG_OUTPUT:
 		ret = stmfx_gpio_direction_output(plat->gpio, pin, arg);
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 04/48] ARM: dts: stm32mp1: sync device tree with v5.3-rc2
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (2 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 03/48] pinctrl: stmfx: update pinconf settings Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 05/48] ARM: dts: stm32mp1: DDR config v1.45 Patrick Delaunay
                   ` (43 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Synchronize device tree with v5.3-rc2 label and
update the associated u-boot dtsi.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157-pinctrl.dtsi     | 234 ++++++++++++++++++++++++++-----
 arch/arm/dts/stm32mp157a-avenger96.dts   |  39 +++---
 arch/arm/dts/stm32mp157a-dk1.dts         |  68 ++++++++-
 arch/arm/dts/stm32mp157c-ed1.dts         |  18 ++-
 arch/arm/dts/stm32mp157c-ev1-u-boot.dtsi |   5 -
 arch/arm/dts/stm32mp157c-ev1.dts         | 109 +++++++++++++-
 arch/arm/dts/stm32mp157c.dtsi            | 180 ++++++++++++++++++++++++
 arch/arm/dts/stm32mp157xaa-pinctrl.dtsi  |  90 ++++++++++++
 arch/arm/dts/stm32mp157xab-pinctrl.dtsi  |  62 ++++++++
 arch/arm/dts/stm32mp157xac-pinctrl.dtsi  |  78 +++++++++++
 arch/arm/dts/stm32mp157xad-pinctrl.dtsi  |  62 ++++++++
 11 files changed, 885 insertions(+), 60 deletions(-)
 create mode 100644 arch/arm/dts/stm32mp157xaa-pinctrl.dtsi
 create mode 100644 arch/arm/dts/stm32mp157xab-pinctrl.dtsi
 create mode 100644 arch/arm/dts/stm32mp157xac-pinctrl.dtsi
 create mode 100644 arch/arm/dts/stm32mp157xad-pinctrl.dtsi

diff --git a/arch/arm/dts/stm32mp157-pinctrl.dtsi b/arch/arm/dts/stm32mp157-pinctrl.dtsi
index 9bae850..4367e8d 100644
--- a/arch/arm/dts/stm32mp157-pinctrl.dtsi
+++ b/arch/arm/dts/stm32mp157-pinctrl.dtsi
@@ -25,8 +25,7 @@
 				reg = <0x0 0x400>;
 				clocks = <&rcc GPIOA>;
 				st,bank-name = "GPIOA";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 0 16>;
+				status = "disabled";
 			};
 
 			gpiob: gpio at 50003000 {
@@ -37,8 +36,7 @@
 				reg = <0x1000 0x400>;
 				clocks = <&rcc GPIOB>;
 				st,bank-name = "GPIOB";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 16 16>;
+				status = "disabled";
 			};
 
 			gpioc: gpio at 50004000 {
@@ -49,8 +47,7 @@
 				reg = <0x2000 0x400>;
 				clocks = <&rcc GPIOC>;
 				st,bank-name = "GPIOC";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 32 16>;
+				status = "disabled";
 			};
 
 			gpiod: gpio at 50005000 {
@@ -61,8 +58,7 @@
 				reg = <0x3000 0x400>;
 				clocks = <&rcc GPIOD>;
 				st,bank-name = "GPIOD";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 48 16>;
+				status = "disabled";
 			};
 
 			gpioe: gpio at 50006000 {
@@ -73,8 +69,7 @@
 				reg = <0x4000 0x400>;
 				clocks = <&rcc GPIOE>;
 				st,bank-name = "GPIOE";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 64 16>;
+				status = "disabled";
 			};
 
 			gpiof: gpio at 50007000 {
@@ -85,8 +80,7 @@
 				reg = <0x5000 0x400>;
 				clocks = <&rcc GPIOF>;
 				st,bank-name = "GPIOF";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 80 16>;
+				status = "disabled";
 			};
 
 			gpiog: gpio at 50008000 {
@@ -97,8 +91,7 @@
 				reg = <0x6000 0x400>;
 				clocks = <&rcc GPIOG>;
 				st,bank-name = "GPIOG";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 96 16>;
+				status = "disabled";
 			};
 
 			gpioh: gpio at 50009000 {
@@ -109,8 +102,7 @@
 				reg = <0x7000 0x400>;
 				clocks = <&rcc GPIOH>;
 				st,bank-name = "GPIOH";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 112 16>;
+				status = "disabled";
 			};
 
 			gpioi: gpio at 5000a000 {
@@ -121,8 +113,7 @@
 				reg = <0x8000 0x400>;
 				clocks = <&rcc GPIOI>;
 				st,bank-name = "GPIOI";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 128 16>;
+				status = "disabled";
 			};
 
 			gpioj: gpio at 5000b000 {
@@ -133,8 +124,7 @@
 				reg = <0x9000 0x400>;
 				clocks = <&rcc GPIOJ>;
 				st,bank-name = "GPIOJ";
-				ngpios = <16>;
-				gpio-ranges = <&pinctrl 0 144 16>;
+				status = "disabled";
 			};
 
 			gpiok: gpio at 5000c000 {
@@ -145,8 +135,7 @@
 				reg = <0xa000 0x400>;
 				clocks = <&rcc GPIOK>;
 				st,bank-name = "GPIOK";
-				ngpios = <8>;
-				gpio-ranges = <&pinctrl 0 160 8>;
+				status = "disabled";
 			};
 
 			adc12_usb_pwr_pins_a: adc12-usb-pwr-pins-0 {
@@ -186,6 +175,47 @@
 				};
 			};
 
+			dcmi_pins_a: dcmi-0 {
+				pins {
+					pinmux = <STM32_PINMUX('H', 8,  AF13)>,/* DCMI_HSYNC */
+						 <STM32_PINMUX('B', 7,  AF13)>,/* DCMI_VSYNC */
+						 <STM32_PINMUX('A', 6,  AF13)>,/* DCMI_PIXCLK */
+						 <STM32_PINMUX('H', 9,  AF13)>,/* DCMI_D0 */
+						 <STM32_PINMUX('H', 10, AF13)>,/* DCMI_D1 */
+						 <STM32_PINMUX('H', 11, AF13)>,/* DCMI_D2 */
+						 <STM32_PINMUX('H', 12, AF13)>,/* DCMI_D3 */
+						 <STM32_PINMUX('H', 14, AF13)>,/* DCMI_D4 */
+						 <STM32_PINMUX('I', 4,  AF13)>,/* DCMI_D5 */
+						 <STM32_PINMUX('B', 8,  AF13)>,/* DCMI_D6 */
+						 <STM32_PINMUX('E', 6,  AF13)>,/* DCMI_D7 */
+						 <STM32_PINMUX('I', 1,  AF13)>,/* DCMI_D8 */
+						 <STM32_PINMUX('H', 7,  AF13)>,/* DCMI_D9 */
+						 <STM32_PINMUX('I', 3,  AF13)>,/* DCMI_D10 */
+						 <STM32_PINMUX('H', 15, AF13)>;/* DCMI_D11 */
+					bias-disable;
+				};
+			};
+
+			dcmi_sleep_pins_a: dcmi-sleep-0 {
+				pins {
+					pinmux = <STM32_PINMUX('H', 8,  ANALOG)>,/* DCMI_HSYNC */
+						 <STM32_PINMUX('B', 7,  ANALOG)>,/* DCMI_VSYNC */
+						 <STM32_PINMUX('A', 6,  ANALOG)>,/* DCMI_PIXCLK */
+						 <STM32_PINMUX('H', 9,  ANALOG)>,/* DCMI_D0 */
+						 <STM32_PINMUX('H', 10, ANALOG)>,/* DCMI_D1 */
+						 <STM32_PINMUX('H', 11, ANALOG)>,/* DCMI_D2 */
+						 <STM32_PINMUX('H', 12, ANALOG)>,/* DCMI_D3 */
+						 <STM32_PINMUX('H', 14, ANALOG)>,/* DCMI_D4 */
+						 <STM32_PINMUX('I', 4,  ANALOG)>,/* DCMI_D5 */
+						 <STM32_PINMUX('B', 8,  ANALOG)>,/* DCMI_D6 */
+						 <STM32_PINMUX('E', 6,  ANALOG)>,/* DCMI_D7 */
+						 <STM32_PINMUX('I', 1,  ANALOG)>,/* DCMI_D8 */
+						 <STM32_PINMUX('H', 7,  ANALOG)>,/* DCMI_D9 */
+						 <STM32_PINMUX('I', 3,  ANALOG)>,/* DCMI_D10 */
+						 <STM32_PINMUX('H', 15, ANALOG)>;/* DCMI_D11 */
+				};
+			};
+
 			ethernet0_rgmii_pins_a: rgmii-0 {
 				pins1 {
 					pinmux = <STM32_PINMUX('G', 5, AF11)>, /* ETH_RGMII_CLK125 */
@@ -308,6 +338,13 @@
 				};
 			};
 
+			i2c1_pins_sleep_b: i2c1-3 {
+				pins {
+					pinmux = <STM32_PINMUX('F', 14, ANALOG)>, /* I2C1_SCL */
+						 <STM32_PINMUX('F', 15, ANALOG)>; /* I2C1_SDA */
+				};
+			};
+
 			i2c2_pins_a: i2c2-0 {
 				pins {
 					pinmux = <STM32_PINMUX('H', 4, AF4)>, /* I2C2_SCL */
@@ -325,16 +362,21 @@
 				};
 			};
 
-			i2c2_pins_b: i2c2-2 {
+			i2c2_pins_b1: i2c2-2 {
 				pins {
-					pinmux = <STM32_PINMUX('Z', 0, AF3)>, /* I2C2_SCL */
-						 <STM32_PINMUX('H', 5, AF4)>; /* I2C2_SDA */
+					pinmux = <STM32_PINMUX('H', 5, AF4)>; /* I2C2_SDA */
 					bias-disable;
 					drive-open-drain;
 					slew-rate = <0>;
 				};
 			};
 
+			i2c2_pins_sleep_b1: i2c2-3 {
+				pins {
+					pinmux = <STM32_PINMUX('H', 5, ANALOG)>; /* I2C2_SDA */
+				};
+			};
+
 			i2c5_pins_a: i2c5-0 {
 				pins {
 					pinmux = <STM32_PINMUX('A', 11, AF4)>, /* I2C5_SCL */
@@ -353,6 +395,25 @@
 				};
 			};
 
+			i2s2_pins_a: i2s2-0 {
+				pins {
+					pinmux = <STM32_PINMUX('I', 3, AF5)>, /* I2S2_SDO */
+						 <STM32_PINMUX('B', 9, AF5)>, /* I2S2_WS */
+						 <STM32_PINMUX('A', 9, AF5)>; /* I2S2_CK */
+					slew-rate = <1>;
+					drive-push-pull;
+					bias-disable;
+				};
+			};
+
+			i2s2_pins_sleep_a: i2s2-1 {
+				pins {
+					pinmux = <STM32_PINMUX('I', 3, ANALOG)>, /* I2S2_SDO */
+						 <STM32_PINMUX('B', 9, ANALOG)>, /* I2S2_WS */
+						 <STM32_PINMUX('A', 9, ANALOG)>; /* I2S2_CK */
+				};
+			};
+
 			ltdc_pins_a: ltdc-a-0 {
 				pins {
 					pinmux = <STM32_PINMUX('G',  7, AF14)>, /* LCD_CLK */
@@ -547,6 +608,12 @@
 				};
 			};
 
+			qspi_clk_sleep_pins_a: qspi-clk-sleep-0 {
+				pins {
+					pinmux = <STM32_PINMUX('F', 10, ANALOG)>; /* QSPI_CLK */
+				};
+			};
+
 			qspi_bk1_pins_a: qspi-bk1-0 {
 				pins1 {
 					pinmux = <STM32_PINMUX('F', 8, AF10)>, /* QSPI_BK1_IO0 */
@@ -565,6 +632,16 @@
 				};
 			};
 
+			qspi_bk1_sleep_pins_a: qspi-bk1-sleep-0 {
+				pins {
+					pinmux = <STM32_PINMUX('F', 8, ANALOG)>, /* QSPI_BK1_IO0 */
+						 <STM32_PINMUX('F', 9, ANALOG)>, /* QSPI_BK1_IO1 */
+						 <STM32_PINMUX('F', 7, ANALOG)>, /* QSPI_BK1_IO2 */
+						 <STM32_PINMUX('F', 6, ANALOG)>, /* QSPI_BK1_IO3 */
+						 <STM32_PINMUX('B', 6, ANALOG)>; /* QSPI_BK1_NCS */
+				};
+			};
+
 			qspi_bk2_pins_a: qspi-bk2-0 {
 				pins1 {
 					pinmux = <STM32_PINMUX('H', 2, AF9)>, /* QSPI_BK2_IO0 */
@@ -583,6 +660,89 @@
 				};
 			};
 
+			qspi_bk2_sleep_pins_a: qspi-bk2-sleep-0 {
+				pins {
+					pinmux = <STM32_PINMUX('H', 2, ANALOG)>, /* QSPI_BK2_IO0 */
+						 <STM32_PINMUX('H', 3, ANALOG)>, /* QSPI_BK2_IO1 */
+						 <STM32_PINMUX('G', 10, ANALOG)>, /* QSPI_BK2_IO2 */
+						 <STM32_PINMUX('G', 7, ANALOG)>, /* QSPI_BK2_IO3 */
+						 <STM32_PINMUX('C', 0, ANALOG)>; /* QSPI_BK2_NCS */
+				};
+			};
+
+			sai2a_pins_a: sai2a-0 {
+				pins {
+					pinmux = <STM32_PINMUX('I', 5, AF10)>, /* SAI2_SCK_A */
+						 <STM32_PINMUX('I', 6, AF10)>, /* SAI2_SD_A */
+						 <STM32_PINMUX('I', 7, AF10)>, /* SAI2_FS_A */
+						 <STM32_PINMUX('E', 0, AF10)>; /* SAI2_MCLK_A */
+					slew-rate = <0>;
+					drive-push-pull;
+					bias-disable;
+				};
+			};
+
+			sai2a_sleep_pins_a: sai2a-1 {
+				pins {
+					pinmux = <STM32_PINMUX('I', 5, ANALOG)>, /* SAI2_SCK_A */
+						 <STM32_PINMUX('I', 6, ANALOG)>, /* SAI2_SD_A */
+						 <STM32_PINMUX('I', 7, ANALOG)>, /* SAI2_FS_A */
+						 <STM32_PINMUX('E', 0, ANALOG)>; /* SAI2_MCLK_A */
+				};
+			};
+
+			sai2b_pins_a: sai2b-0 {
+				pins1 {
+					pinmux = <STM32_PINMUX('E', 12, AF10)>, /* SAI2_SCK_B */
+						 <STM32_PINMUX('E', 13, AF10)>, /* SAI2_FS_B */
+						 <STM32_PINMUX('E', 14, AF10)>; /* SAI2_MCLK_B */
+					slew-rate = <0>;
+					drive-push-pull;
+					bias-disable;
+				};
+				pins2 {
+					pinmux = <STM32_PINMUX('F', 11, AF10)>; /* SAI2_SD_B */
+					bias-disable;
+				};
+			};
+
+			sai2b_sleep_pins_a: sai2b-1 {
+				pins {
+					pinmux = <STM32_PINMUX('F', 11, ANALOG)>, /* SAI2_SD_B */
+						 <STM32_PINMUX('E', 12, ANALOG)>, /* SAI2_SCK_B */
+						 <STM32_PINMUX('E', 13, ANALOG)>, /* SAI2_FS_B */
+						 <STM32_PINMUX('E', 14, ANALOG)>; /* SAI2_MCLK_B */
+				};
+			};
+
+			sai2b_pins_b: sai2b-2 {
+				pins {
+					pinmux = <STM32_PINMUX('F', 11, AF10)>; /* SAI2_SD_B */
+					bias-disable;
+				};
+			};
+
+			sai2b_sleep_pins_b: sai2b-3 {
+				pins {
+					pinmux = <STM32_PINMUX('F', 11, ANALOG)>; /* SAI2_SD_B */
+				};
+			};
+
+			sai4a_pins_a: sai4a-0 {
+				pins {
+					pinmux = <STM32_PINMUX('B', 5, AF10)>; /* SAI4_SD_A */
+					slew-rate = <0>;
+					drive-push-pull;
+					bias-disable;
+				};
+			};
+
+			sai4a_sleep_pins_a: sai4a-1 {
+				pins {
+					pinmux = <STM32_PINMUX('B', 5, ANALOG)>; /* SAI4_SD_A */
+				};
+			};
+
 			sdmmc1_b4_pins_a: sdmmc1-b4-0 {
 				pins {
 					pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDMMC1_D0 */
@@ -752,12 +912,6 @@
 					bias-disable;
 				};
 			};
-
-			usbotg_hs_pins_a: usbotg_hs-0 {
-				pins {
-					pinmux = <STM32_PINMUX('A', 10, ANALOG)>; /* OTG_ID */
-				};
-			};
 		};
 
 		pinctrl_z: pin-controller-z at 54004000 {
@@ -779,8 +933,22 @@
 				clocks = <&rcc GPIOZ>;
 				st,bank-name = "GPIOZ";
 				st,bank-ioport = <11>;
-				ngpios = <8>;
-				gpio-ranges = <&pinctrl_z 0 400 8>;
+				status = "disabled";
+			};
+
+			i2c2_pins_b2: i2c2-0 {
+				pins {
+					pinmux = <STM32_PINMUX('Z', 0, AF3)>; /* I2C2_SCL */
+					bias-disable;
+					drive-open-drain;
+					slew-rate = <0>;
+				};
+			};
+
+			i2c2_pins_sleep_b2: i2c2-1 {
+				pins {
+					pinmux = <STM32_PINMUX('Z', 0, ANALOG)>; /* I2C2_SCL */
+				};
 			};
 
 			i2c4_pins_a: i2c4-0 {
diff --git a/arch/arm/dts/stm32mp157a-avenger96.dts b/arch/arm/dts/stm32mp157a-avenger96.dts
index dd08597..ba86cf5 100644
--- a/arch/arm/dts/stm32mp157a-avenger96.dts
+++ b/arch/arm/dts/stm32mp157a-avenger96.dts
@@ -1,8 +1,5 @@
 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause)
 /*
- * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
- * Author: Alexandre Torgue <alexandre.torgue@st.com> for STMicroelectronics.
- *
  * Copyright (C) Linaro Ltd 2019 - All Rights Reserved
  * Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  */
@@ -10,17 +7,19 @@
 /dts-v1/;
 
 #include "stm32mp157c.dtsi"
-#include "stm32mp157-pinctrl.dtsi"
+#include "stm32mp157xac-pinctrl.dtsi"
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/mfd/st,stpmic1.h>
 
 / {
 	model = "Arrow Electronics STM32MP157A Avenger96 board";
-	compatible = "st,stm32mp157a-avenger96", "st,stm32mp157";
+	compatible = "arrow,stm32mp157a-avenger96", "st,stm32mp157";
 
 	aliases {
 		ethernet0 = &ethernet0;
+		mmc0 = &sdmmc1;
 		serial0 = &uart4;
+		serial1 = &uart7;
 	};
 
 	chosen {
@@ -28,6 +27,7 @@
 	};
 
 	memory at c0000000 {
+		device_type = "memory";
 		reg = <0xc0000000 0x40000000>;
 	};
 
@@ -109,7 +109,7 @@
 
 &i2c2 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&i2c2_pins_b>;
+	pinctrl-0 = <&i2c2_pins_b1 &i2c2_pins_b2>;
 	i2c-scl-rising-time-ns = <185>;
 	i2c-scl-falling-time-ns = <20>;
 	status = "okay";
@@ -151,10 +151,10 @@
 
 			vddcore: buck1 {
 				regulator-name = "vddcore";
-				regulator-min-microvolt = <800000>;
+				regulator-min-microvolt = <1200000>;
 				regulator-max-microvolt = <1350000>;
 				regulator-always-on;
-				regulator-initial-mode = <2>;
+				regulator-initial-mode = <0>;
 				regulator-over-current-protection;
 			};
 
@@ -163,17 +163,17 @@
 				regulator-min-microvolt = <1350000>;
 				regulator-max-microvolt = <1350000>;
 				regulator-always-on;
-				regulator-initial-mode = <2>;
+				regulator-initial-mode = <0>;
 				regulator-over-current-protection;
 			};
 
 			vdd: buck3 {
 				regulator-name = "vdd";
-				regulator-min-microvolt = <2500000>;
-				regulator-max-microvolt = <2500000>;
+				regulator-min-microvolt = <3300000>;
+				regulator-max-microvolt = <3300000>;
 				regulator-always-on;
 				st,mask_reset;
-				regulator-initial-mode = <8>;
+				regulator-initial-mode = <0>;
 				regulator-over-current-protection;
 			};
 
@@ -183,7 +183,7 @@
 				regulator-max-microvolt = <3300000>;
 				regulator-always-on;
 				regulator-over-current-protection;
-				regulator-initial-mode = <8>;
+				regulator-initial-mode = <0>;
 			};
 
 			vdda: ldo1 {
@@ -204,8 +204,8 @@
 
 			vtt_ddr: ldo3 {
 				regulator-name = "vtt_ddr";
-				regulator-min-microvolt = <0000000>;
-				regulator-max-microvolt = <1000000>;
+				regulator-min-microvolt = <500000>;
+				regulator-max-microvolt = <750000>;
 				regulator-always-on;
 				regulator-over-current-protection;
 			};
@@ -233,6 +233,7 @@
 				regulator-max-microvolt = <1800000>;
 				interrupts = <IT_CURLIM_LDO6 0>;
 				interrupt-parent = <&pmic>;
+				regulator-enable-ramp-delay = <300000>;
 			};
 
 			vref_ddr: vref_ddr {
@@ -294,8 +295,10 @@
 };
 
 &sdmmc1 {
-	pinctrl-names = "default";
+	pinctrl-names = "default", "opendrain", "sleep";
 	pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_a>;
+	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
+	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
 	broken-cd;
 	st,sig-dir;
 	st,neg-edge;
@@ -325,12 +328,16 @@
 };
 
 &uart4 {
+	/* On Low speed expansion header */
+	label = "LS-UART1";
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart4_pins_b>;
 	status = "okay";
 };
 
 &uart7 {
+	/* On Low speed expansion header */
+	label = "LS-UART0";
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart7_pins_a>;
 	status = "okay";
diff --git a/arch/arm/dts/stm32mp157a-dk1.dts b/arch/arm/dts/stm32mp157a-dk1.dts
index adb2464..1d5c1a6 100644
--- a/arch/arm/dts/stm32mp157a-dk1.dts
+++ b/arch/arm/dts/stm32mp157a-dk1.dts
@@ -7,7 +7,7 @@
 /dts-v1/;
 
 #include "stm32mp157c.dtsi"
-#include "stm32mp157-pinctrl.dtsi"
+#include "stm32mp157xac-pinctrl.dtsi"
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/mfd/st,stpmic1.h>
 
@@ -28,6 +28,17 @@
 		reg = <0xc0000000 0x20000000>;
 	};
 
+	reserved-memory {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges;
+
+		gpu_reserved: gpu at d4000000 {
+			reg = <0xd4000000 0x4000000>;
+			no-map;
+		};
+	};
+
 	led {
 		compatible = "gpio-leds";
 		blue {
@@ -65,6 +76,47 @@
 	};
 };
 
+&gpu {
+	contiguous-area = <&gpu_reserved>;
+	status = "okay";
+};
+
+&i2c1 {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&i2c1_pins_a>;
+	pinctrl-1 = <&i2c1_pins_sleep_a>;
+	i2c-scl-rising-time-ns = <100>;
+	i2c-scl-falling-time-ns = <7>;
+	status = "okay";
+	/delete-property/dmas;
+	/delete-property/dma-names;
+
+	hdmi-transmitter at 39 {
+		compatible = "sil,sii9022";
+		reg = <0x39>;
+		iovcc-supply = <&v3v3_hdmi>;
+		cvcc12-supply = <&v1v2_hdmi>;
+		reset-gpios = <&gpioa 10 GPIO_ACTIVE_LOW>;
+		interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
+		interrupt-parent = <&gpiog>;
+		pinctrl-names = "default", "sleep";
+		pinctrl-0 = <&ltdc_pins_a>;
+		pinctrl-1 = <&ltdc_pins_sleep_a>;
+		status = "okay";
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port at 0 {
+				reg = <0>;
+				sii9022_in: endpoint {
+					remote-endpoint = <&ltdc_ep0_out>;
+				};
+			};
+		};
+	};
+};
 
 &i2c4 {
 	pinctrl-names = "default";
@@ -241,6 +293,20 @@
 	status = "okay";
 };
 
+&ltdc {
+	status = "okay";
+
+	port {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		ltdc_ep0_out: endpoint at 0 {
+			reg = <0>;
+			remote-endpoint = <&sii9022_in>;
+		};
+	};
+};
+
 &pwr {
 	pwr-supply = <&vdd>;
 };
diff --git a/arch/arm/dts/stm32mp157c-ed1.dts b/arch/arm/dts/stm32mp157c-ed1.dts
index 11981d6..94ac025 100644
--- a/arch/arm/dts/stm32mp157c-ed1.dts
+++ b/arch/arm/dts/stm32mp157c-ed1.dts
@@ -6,7 +6,7 @@
 /dts-v1/;
 
 #include "stm32mp157c.dtsi"
-#include "stm32mp157-pinctrl.dtsi"
+#include "stm32mp157xaa-pinctrl.dtsi"
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/mfd/st,stpmic1.h>
 
@@ -23,6 +23,17 @@
 		reg = <0xC0000000 0x40000000>;
 	};
 
+	reserved-memory {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges;
+
+		gpu_reserved: gpu at e8000000 {
+			reg = <0xe8000000 0x8000000>;
+			no-map;
+		};
+	};
+
 	aliases {
 		serial0 = &uart4;
 	};
@@ -45,6 +56,11 @@
 	status = "okay";
 };
 
+&gpu {
+	contiguous-area = <&gpu_reserved>;
+	status = "okay";
+};
+
 &i2c4 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&i2c4_pins_a>;
diff --git a/arch/arm/dts/stm32mp157c-ev1-u-boot.dtsi b/arch/arm/dts/stm32mp157c-ev1-u-boot.dtsi
index b656eb1..ec60486 100644
--- a/arch/arm/dts/stm32mp157c-ev1-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157c-ev1-u-boot.dtsi
@@ -17,14 +17,9 @@
 };
 
 &flash0 {
-	compatible = "jedec,spi-nor";
 	u-boot,dm-spl;
 };
 
-&flash1 {
-	compatible = "jedec,spi-nor";
-};
-
 &qspi {
 	u-boot,dm-spl;
 };
diff --git a/arch/arm/dts/stm32mp157c-ev1.dts b/arch/arm/dts/stm32mp157c-ev1.dts
index ca2a333..23de232 100644
--- a/arch/arm/dts/stm32mp157c-ev1.dts
+++ b/arch/arm/dts/stm32mp157c-ev1.dts
@@ -7,6 +7,7 @@
 
 #include "stm32mp157c-ed1.dts"
 #include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
 
 / {
 	model = "STMicroelectronics STM32MP157C eval daughter on eval mother";
@@ -21,6 +22,51 @@
 		ethernet0 = &ethernet0;
 	};
 
+	clocks {
+		clk_ext_camera: clk-ext-camera {
+			#clock-cells = <0>;
+			compatible = "fixed-clock";
+			clock-frequency = <24000000>;
+		};
+	};
+
+	joystick {
+		compatible = "gpio-keys";
+		#size-cells = <0>;
+		pinctrl-0 = <&joystick_pins>;
+		pinctrl-names = "default";
+		button-0 {
+			label = "JoySel";
+			linux,code = <KEY_ENTER>;
+			interrupt-parent = <&stmfx_pinctrl>;
+			interrupts = <0 IRQ_TYPE_EDGE_RISING>;
+		};
+		button-1 {
+			label = "JoyDown";
+			linux,code = <KEY_DOWN>;
+			interrupt-parent = <&stmfx_pinctrl>;
+			interrupts = <1 IRQ_TYPE_EDGE_RISING>;
+		};
+		button-2 {
+			label = "JoyLeft";
+			linux,code = <KEY_LEFT>;
+			interrupt-parent = <&stmfx_pinctrl>;
+			interrupts = <2 IRQ_TYPE_EDGE_RISING>;
+		};
+		button-3 {
+			label = "JoyRight";
+			linux,code = <KEY_RIGHT>;
+			interrupt-parent = <&stmfx_pinctrl>;
+			interrupts = <3 IRQ_TYPE_EDGE_RISING>;
+		};
+		button-4 {
+			label = "JoyUp";
+			linux,code = <KEY_UP>;
+			interrupt-parent = <&stmfx_pinctrl>;
+			interrupts = <4 IRQ_TYPE_EDGE_RISING>;
+		};
+	};
+
 	panel_backlight: panel-backlight {
 		compatible = "gpio-backlight";
 		gpios = <&gpiod 13 GPIO_ACTIVE_LOW>;
@@ -35,6 +81,23 @@
 	status = "okay";
 };
 
+&dcmi {
+	status = "okay";
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&dcmi_pins_a>;
+	pinctrl-1 = <&dcmi_sleep_pins_a>;
+
+	port {
+		dcmi_0: endpoint {
+			remote-endpoint = <&ov5640_0>;
+			bus-width = <8>;
+			hsync-active = <0>;
+			vsync-active = <0>;
+			pclk-sample = <1>;
+		};
+	};
+};
+
 &dsi {
 	#address-cells = <1>;
 	#size-cells = <0>;
@@ -64,6 +127,7 @@
 		reg = <0>;
 		reset-gpios = <&gpiof 15 GPIO_ACTIVE_LOW>;
 		backlight = <&panel_backlight>;
+		power-supply = <&v3v3>;
 		status = "okay";
 
 		port {
@@ -116,6 +180,31 @@
 	i2c-scl-falling-time-ns = <20>;
 	status = "okay";
 
+	ov5640: camera at 3c {
+		compatible = "ovti,ov5640";
+		pinctrl-names = "default";
+		pinctrl-0 = <&ov5640_pins>;
+		reg = <0x3c>;
+		clocks = <&clk_ext_camera>;
+		clock-names = "xclk";
+		DOVDD-supply = <&v2v8>;
+		powerdown-gpios = <&stmfx_pinctrl 18 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&stmfx_pinctrl 19 GPIO_ACTIVE_LOW>;
+		rotation = <180>;
+		status = "okay";
+
+		port {
+			ov5640_0: endpoint {
+				remote-endpoint = <&dcmi_0>;
+				bus-width = <8>;
+				data-shift = <2>; /* lines 9:2 are used */
+				hsync-active = <0>;
+				vsync-active = <0>;
+				pclk-sample = <1>;
+			};
+		};
+	};
+
 	stmfx: stmfx at 42 {
 		compatible = "st,stmfx-0300";
 		reg = <0x42>;
@@ -130,7 +219,18 @@
 			interrupt-controller;
 			#interrupt-cells = <2>;
 			gpio-ranges = <&stmfx_pinctrl 0 0 24>;
-			status = "disabled";
+
+			joystick_pins: joystick {
+				pins = "gpio0", "gpio1", "gpio2", "gpio3", "gpio4";
+				drive-push-pull;
+				bias-pull-down;
+			};
+
+			ov5640_pins: camera {
+				pins = "agpio2", "agpio3"; /* stmfx pins 18 & 19 */
+				drive-push-pull;
+				output-low;
+			};
 		};
 	};
 };
@@ -165,14 +265,16 @@
 };
 
 &qspi {
-	pinctrl-names = "default";
+	pinctrl-names = "default", "sleep";
 	pinctrl-0 = <&qspi_clk_pins_a &qspi_bk1_pins_a &qspi_bk2_pins_a>;
+	pinctrl-1 = <&qspi_clk_sleep_pins_a &qspi_bk1_sleep_pins_a &qspi_bk2_sleep_pins_a>;
 	reg = <0x58003000 0x1000>, <0x70000000 0x4000000>;
 	#address-cells = <1>;
 	#size-cells = <0>;
 	status = "okay";
 
 	flash0: mx66l51235l at 0 {
+		compatible = "jedec,spi-nor";
 		reg = <0>;
 		spi-rx-bus-width = <4>;
 		spi-max-frequency = <108000000>;
@@ -181,6 +283,7 @@
 	};
 
 	flash1: mx66l51235l at 1 {
+		compatible = "jedec,spi-nor";
 		reg = <1>;
 		spi-rx-bus-width = <4>;
 		spi-max-frequency = <108000000>;
@@ -245,8 +348,6 @@
 };
 
 &usbotg_hs {
-	pinctrl-names = "default";
-	pinctrl-0 = <&usbotg_hs_pins_a>;
 	dr_mode = "peripheral";
 	phys = <&usbphyc_port1 0>;
 	phy-names = "usb2-phy";
diff --git a/arch/arm/dts/stm32mp157c.dtsi b/arch/arm/dts/stm32mp157c.dtsi
index d15fba0..bcd8c1a 100644
--- a/arch/arm/dts/stm32mp157c.dtsi
+++ b/arch/arm/dts/stm32mp157c.dtsi
@@ -372,6 +372,17 @@
 			status = "disabled";
 		};
 
+		i2s2: audio-controller at 4000b000 {
+			compatible = "st,stm32h7-i2s";
+			#sound-dai-cells = <0>;
+			reg = <0x4000b000 0x400>;
+			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
+			dmas = <&dmamux1 39 0x400 0x01>,
+			       <&dmamux1 40 0x400 0x01>;
+			dma-names = "rx", "tx";
+			status = "disabled";
+		};
+
 		spi3: spi at 4000c000 {
 			#address-cells = <1>;
 			#size-cells = <0>;
@@ -386,6 +397,17 @@
 			status = "disabled";
 		};
 
+		i2s3: audio-controller at 4000c000 {
+			compatible = "st,stm32h7-i2s";
+			#sound-dai-cells = <0>;
+			reg = <0x4000c000 0x400>;
+			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
+			dmas = <&dmamux1 61 0x400 0x01>,
+			       <&dmamux1 62 0x400 0x01>;
+			dma-names = "rx", "tx";
+			status = "disabled";
+		};
+
 		spdifrx: audio-controller at 4000d000 {
 			compatible = "st,stm32h7-spdifrx";
 			#sound-dai-cells = <0>;
@@ -614,6 +636,17 @@
 			status = "disabled";
 		};
 
+		i2s1: audio-controller at 44004000 {
+			compatible = "st,stm32h7-i2s";
+			#sound-dai-cells = <0>;
+			reg = <0x44004000 0x400>;
+			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
+			dmas = <&dmamux1 37 0x400 0x01>,
+			       <&dmamux1 38 0x400 0x01>;
+			dma-names = "rx", "tx";
+			status = "disabled";
+		};
+
 		spi4: spi at 44005000 {
 			#address-cells = <1>;
 			#size-cells = <0>;
@@ -715,6 +748,100 @@
 			status = "disabled";
 		};
 
+		sai1: sai at 4400a000 {
+			compatible = "st,stm32h7-sai";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0 0x4400a000 0x400>;
+			reg = <0x4400a000 0x4>, <0x4400a3f0 0x10>;
+			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
+			resets = <&rcc SAI1_R>;
+			status = "disabled";
+
+			sai1a: audio-controller at 4400a004 {
+				#sound-dai-cells = <0>;
+
+				compatible = "st,stm32-sai-sub-a";
+				reg = <0x4 0x1c>;
+				clocks = <&rcc SAI1_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 87 0x400 0x01>;
+				status = "disabled";
+			};
+
+			sai1b: audio-controller at 4400a024 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-b";
+				reg = <0x24 0x1c>;
+				clocks = <&rcc SAI1_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 88 0x400 0x01>;
+				status = "disabled";
+			};
+		};
+
+		sai2: sai at 4400b000 {
+			compatible = "st,stm32h7-sai";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0 0x4400b000 0x400>;
+			reg = <0x4400b000 0x4>, <0x4400b3f0 0x10>;
+			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
+			resets = <&rcc SAI2_R>;
+			status = "disabled";
+
+			sai2a: audio-controller at 4400b004 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-a";
+				reg = <0x4 0x1c>;
+				clocks = <&rcc SAI2_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 89 0x400 0x01>;
+				status = "disabled";
+			};
+
+			sai2b: audio-controller at 4400b024 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-b";
+				reg = <0x24 0x1c>;
+				clocks = <&rcc SAI2_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 90 0x400 0x01>;
+				status = "disabled";
+			};
+		};
+
+		sai3: sai at 4400c000 {
+			compatible = "st,stm32h7-sai";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0 0x4400c000 0x400>;
+			reg = <0x4400c000 0x4>, <0x4400c3f0 0x10>;
+			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
+			resets = <&rcc SAI3_R>;
+			status = "disabled";
+
+			sai3a: audio-controller at 4400c004 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-a";
+				reg = <0x04 0x1c>;
+				clocks = <&rcc SAI3_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 113 0x400 0x01>;
+				status = "disabled";
+			};
+
+			sai3b: audio-controller at 4400c024 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-b";
+				reg = <0x24 0x1c>;
+				clocks = <&rcc SAI3_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 114 0x400 0x01>;
+				status = "disabled";
+			};
+		};
+
 		dfsdm: dfsdm at 4400d000 {
 			compatible = "st,stm32mp1-dfsdm";
 			reg = <0x4400d000 0x800>;
@@ -945,6 +1072,18 @@
 			status = "disabled";
 		};
 
+		dcmi: dcmi at 4c006000 {
+			compatible = "st,stm32-dcmi";
+			reg = <0x4c006000 0x400>;
+			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
+			resets = <&rcc CAMITF_R>;
+			clocks = <&rcc DCMI>;
+			clock-names = "mclk";
+			dmas = <&dmamux1 75 0x400 0x0d>;
+			dma-names = "tx";
+			status = "disabled";
+		};
+
 		rcc: rcc at 50000000 {
 			compatible = "st,stm32mp1-rcc", "syscon";
 			reg = <0x50000000 0x1000>;
@@ -1084,6 +1223,37 @@
 			status = "disabled";
 		};
 
+		sai4: sai at 50027000 {
+			compatible = "st,stm32h7-sai";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0 0x50027000 0x400>;
+			reg = <0x50027000 0x4>, <0x500273f0 0x10>;
+			interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
+			resets = <&rcc SAI4_R>;
+			status = "disabled";
+
+			sai4a: audio-controller at 50027004 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-a";
+				reg = <0x04 0x1c>;
+				clocks = <&rcc SAI4_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 99 0x400 0x01>;
+				status = "disabled";
+			};
+
+			sai4b: audio-controller at 50027024 {
+				#sound-dai-cells = <0>;
+				compatible = "st,stm32-sai-sub-b";
+				reg = <0x24 0x1c>;
+				clocks = <&rcc SAI4_K>;
+				clock-names = "sai_ck";
+				dmas = <&dmamux1 100 0x400 0x01>;
+				status = "disabled";
+			};
+		};
+
 		dts: thermal at 50028000 {
 			compatible = "st,stm32-thermal";
 			reg = <0x50028000 0x100>;
@@ -1242,6 +1412,16 @@
 			status = "disabled";
 		};
 
+		gpu: gpu at 59000000 {
+			compatible = "vivante,gc";
+			reg = <0x59000000 0x800>;
+			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&rcc GPU>, <&rcc GPU_K>;
+			clock-names = "bus" ,"core";
+			resets = <&rcc GPU_R>;
+			status = "disabled";
+		};
+
 		dsi: dsi at 5a000000 {
 			compatible = "st,stm32-dsi";
 			reg = <0x5a000000 0x800>;
diff --git a/arch/arm/dts/stm32mp157xaa-pinctrl.dtsi b/arch/arm/dts/stm32mp157xaa-pinctrl.dtsi
new file mode 100644
index 0000000..875adf5
--- /dev/null
+++ b/arch/arm/dts/stm32mp157xaa-pinctrl.dtsi
@@ -0,0 +1,90 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
+ * Author: Alexandre Torgue <alexandre.torgue@st.com>
+ */
+
+#include "stm32mp157-pinctrl.dtsi"
+/ {
+	soc {
+		pinctrl: pin-controller at 50002000 {
+			st,package = <STM32MP_PKG_AA>;
+
+			gpioa: gpio at 50002000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 0 16>;
+			};
+
+			gpiob: gpio at 50003000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 16 16>;
+			};
+
+			gpioc: gpio at 50004000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 32 16>;
+			};
+
+			gpiod: gpio at 50005000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 48 16>;
+			};
+
+			gpioe: gpio at 50006000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 64 16>;
+			};
+
+			gpiof: gpio at 50007000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 80 16>;
+			};
+
+			gpiog: gpio at 50008000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 96 16>;
+			};
+
+			gpioh: gpio at 50009000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 112 16>;
+			};
+
+			gpioi: gpio at 5000a000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 128 16>;
+			};
+
+			gpioj: gpio at 5000b000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 144 16>;
+			};
+
+			gpiok: gpio at 5000c000 {
+				status = "okay";
+				ngpios = <8>;
+				gpio-ranges = <&pinctrl 0 160 8>;
+			};
+		};
+
+		pinctrl_z: pin-controller-z at 54004000 {
+			st,package = <STM32MP_PKG_AA>;
+
+			gpioz: gpio at 54004000 {
+				status = "okay";
+				ngpios = <8>;
+				gpio-ranges = <&pinctrl_z 0 400 8>;
+			};
+		};
+	};
+};
diff --git a/arch/arm/dts/stm32mp157xab-pinctrl.dtsi b/arch/arm/dts/stm32mp157xab-pinctrl.dtsi
new file mode 100644
index 0000000..961fa12
--- /dev/null
+++ b/arch/arm/dts/stm32mp157xab-pinctrl.dtsi
@@ -0,0 +1,62 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
+ * Author: Alexandre Torgue <alexandre.torgue@st.com>
+ */
+
+#include "stm32mp157-pinctrl.dtsi"
+/ {
+	soc {
+		pinctrl: pin-controller at 50002000 {
+			st,package = <STM32MP_PKG_AB>;
+
+			gpioa: gpio at 50002000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 0 16>;
+			};
+
+			gpiob: gpio at 50003000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 16 16>;
+			};
+
+			gpioc: gpio at 50004000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 32 16>;
+			};
+
+			gpiod: gpio at 50005000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 48 16>;
+			};
+
+			gpioe: gpio at 50006000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 64 16>;
+			};
+
+			gpiof: gpio at 50007000 {
+				status = "okay";
+				ngpios = <6>;
+				gpio-ranges = <&pinctrl 6 86 6>;
+			};
+
+			gpiog: gpio at 50008000 {
+				status = "okay";
+				ngpios = <10>;
+				gpio-ranges = <&pinctrl 6 102 10>;
+			};
+
+			gpioh: gpio at 50009000 {
+				status = "okay";
+				ngpios = <2>;
+				gpio-ranges = <&pinctrl 0 112 2>;
+			};
+		};
+	};
+};
diff --git a/arch/arm/dts/stm32mp157xac-pinctrl.dtsi b/arch/arm/dts/stm32mp157xac-pinctrl.dtsi
new file mode 100644
index 0000000..26600f1
--- /dev/null
+++ b/arch/arm/dts/stm32mp157xac-pinctrl.dtsi
@@ -0,0 +1,78 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
+ * Author: Alexandre Torgue <alexandre.torgue@st.com>
+ */
+
+#include "stm32mp157-pinctrl.dtsi"
+/ {
+	soc {
+		pinctrl: pin-controller at 50002000 {
+			st,package = <STM32MP_PKG_AC>;
+
+			gpioa: gpio at 50002000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 0 16>;
+			};
+
+			gpiob: gpio at 50003000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 16 16>;
+			};
+
+			gpioc: gpio at 50004000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 32 16>;
+			};
+
+			gpiod: gpio at 50005000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 48 16>;
+			};
+
+			gpioe: gpio at 50006000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 64 16>;
+			};
+
+			gpiof: gpio at 50007000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 80 16>;
+			};
+
+			gpiog: gpio at 50008000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 96 16>;
+			};
+
+			gpioh: gpio at 50009000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 112 16>;
+			};
+
+			gpioi: gpio at 5000a000 {
+				status = "okay";
+				ngpios = <12>;
+				gpio-ranges = <&pinctrl 0 128 12>;
+			};
+		};
+
+		pinctrl_z: pin-controller-z at 54004000 {
+			st,package = <STM32MP_PKG_AC>;
+
+			gpioz: gpio at 54004000 {
+				status = "okay";
+				ngpios = <8>;
+				gpio-ranges = <&pinctrl_z 0 400 8>;
+			};
+		};
+	};
+};
diff --git a/arch/arm/dts/stm32mp157xad-pinctrl.dtsi b/arch/arm/dts/stm32mp157xad-pinctrl.dtsi
new file mode 100644
index 0000000..910113f
--- /dev/null
+++ b/arch/arm/dts/stm32mp157xad-pinctrl.dtsi
@@ -0,0 +1,62 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
+ * Author: Alexandre Torgue <alexandre.torgue@st.com>
+ */
+
+#include "stm32mp157-pinctrl.dtsi"
+/ {
+	soc {
+		pinctrl: pin-controller at 50002000 {
+			st,package = <STM32MP_PKG_AD>;
+
+			gpioa: gpio at 50002000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 0 16>;
+			};
+
+			gpiob: gpio at 50003000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 16 16>;
+			};
+
+			gpioc: gpio at 50004000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 32 16>;
+			};
+
+			gpiod: gpio at 50005000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 48 16>;
+			};
+
+			gpioe: gpio at 50006000 {
+				status = "okay";
+				ngpios = <16>;
+				gpio-ranges = <&pinctrl 0 64 16>;
+			};
+
+			gpiof: gpio at 50007000 {
+				status = "okay";
+				ngpios = <6>;
+				gpio-ranges = <&pinctrl 6 86 6>;
+			};
+
+			gpiog: gpio at 50008000 {
+				status = "okay";
+				ngpios = <10>;
+				gpio-ranges = <&pinctrl 6 102 10>;
+			};
+
+			gpioh: gpio at 50009000 {
+				status = "okay";
+				ngpios = <2>;
+				gpio-ranges = <&pinctrl 0 112 2>;
+			};
+		};
+	};
+};
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 05/48] ARM: dts: stm32mp1: DDR config v1.45
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (3 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 04/48] ARM: dts: stm32mp1: sync device tree with v5.3-rc2 Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 06/48] ARM: dts: stm32mp1: Add iwdg2 support for SPL Patrick Delaunay
                   ` (42 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Update DDR configuration with the latest update:
- Change DQSGE to 1 for DDR3, to cure missing DQS preamble.

Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi | 4 ++--
 arch/arm/dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi | 5 ++---
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/arch/arm/dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi b/arch/arm/dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi
index dc30360..11e8f2b 100644
--- a/arch/arm/dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi
+++ b/arch/arm/dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi
@@ -16,7 +16,7 @@
  * address mapping : RBC
  * Tc > + 85C : N
  */
-#define DDR_MEM_NAME "DDR3-1066/888 bin G 1x4Gb 533MHz v1.44"
+#define DDR_MEM_NAME "DDR3-1066/888 bin G 1x4Gb 533MHz v1.45"
 #define DDR_MEM_SPEED 533000
 #define DDR_MEM_SIZE 0x20000000
 
@@ -89,7 +89,7 @@
 #define DDR_PTR2 0x042DA068
 #define DDR_ACIOCR 0x10400812
 #define DDR_DXCCR 0x00000C40
-#define DDR_DSGCR 0xF200001F
+#define DDR_DSGCR 0xF200011F
 #define DDR_DCR 0x0000000B
 #define DDR_DTPR0 0x38D488D0
 #define DDR_DTPR1 0x098B00D8
diff --git a/arch/arm/dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi b/arch/arm/dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi
index 8158a56..4b70b60 100644
--- a/arch/arm/dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi
+++ b/arch/arm/dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi
@@ -16,8 +16,7 @@
  * address mapping : RBC
  * Tc > + 85C : N
  */
-
-#define DDR_MEM_NAME "DDR3-1066/888 bin G 2x4Gb 533MHz v1.44"
+#define DDR_MEM_NAME "DDR3-1066/888 bin G 2x4Gb 533MHz v1.45"
 #define DDR_MEM_SPEED 533000
 #define DDR_MEM_SIZE 0x40000000
 
@@ -90,7 +89,7 @@
 #define DDR_PTR2 0x042DA068
 #define DDR_ACIOCR 0x10400812
 #define DDR_DXCCR 0x00000C40
-#define DDR_DSGCR 0xF200001F
+#define DDR_DSGCR 0xF200011F
 #define DDR_DCR 0x0000000B
 #define DDR_DTPR0 0x38D488D0
 #define DDR_DTPR1 0x098B00D8
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 06/48] ARM: dts: stm32mp1: Add iwdg2 support for SPL
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (4 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 05/48] ARM: dts: stm32mp1: DDR config v1.45 Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 07/48] ARM: dts: stm32mp1: Add PSCI node access before relocation Patrick Delaunay
                   ` (41 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

This patch adds independent watchdog support for stm32mp157c
in SPL.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157-u-boot.dtsi | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm/dts/stm32mp157-u-boot.dtsi b/arch/arm/dts/stm32mp157-u-boot.dtsi
index 8102ce2..ba13ebb 100644
--- a/arch/arm/dts/stm32mp157-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157-u-boot.dtsi
@@ -106,6 +106,10 @@
 	u-boot,dm-pre-reloc;
 };
 
+&iwdg2 {
+	u-boot,dm-pre-reloc;
+};
+
 &pinctrl {
 	u-boot,dm-pre-reloc;
 };
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 07/48] ARM: dts: stm32mp1: Add PSCI node access before relocation
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (5 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 06/48] ARM: dts: stm32mp1: Add iwdg2 support for SPL Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 08/48] ARM: dts: stm32mp1: add ldtc pre-reloc proper in SOC file Patrick Delaunay
                   ` (40 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add node in DT and avoid error to search UCLASS_SYSRESET in
board_f.c::print_resetinfo() and lost 1.6s in U-Boot
for the trusted boot chain.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157-u-boot.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/dts/stm32mp157-u-boot.dtsi b/arch/arm/dts/stm32mp157-u-boot.dtsi
index ba13ebb..1c4ad67 100644
--- a/arch/arm/dts/stm32mp157-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157-u-boot.dtsi
@@ -25,6 +25,11 @@
 		u-boot,dm-pre-reloc;
 	};
 
+	/* need PSCI for sysreset during board_f */
+	psci {
+		u-boot,dm-pre-proper;
+	};
+
 	reboot {
 		u-boot,dm-pre-reloc;
 	};
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 08/48] ARM: dts: stm32mp1: add ldtc pre-reloc proper in SOC file
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (6 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 07/48] ARM: dts: stm32mp1: Add PSCI node access before relocation Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 09/48] ARM: dts: stm32mp1: add key support on DK1/DK2 Patrick Delaunay
                   ` (39 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

The pre-relocation probe is needed to reserve video frame buffer
in video_reserve() for all the board;
LDTC must be tagged prereloc in SOC U-Boot dtsi file.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157-u-boot.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/dts/stm32mp157-u-boot.dtsi b/arch/arm/dts/stm32mp157-u-boot.dtsi
index 1c4ad67..0d1d387 100644
--- a/arch/arm/dts/stm32mp157-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157-u-boot.dtsi
@@ -115,6 +115,11 @@
 	u-boot,dm-pre-reloc;
 };
 
+/* pre-reloc probe = reserve video frame buffer in video_reserve() */
+&ltdc {
+	u-boot,dm-pre-proper;
+};
+
 &pinctrl {
 	u-boot,dm-pre-reloc;
 };
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 09/48] ARM: dts: stm32mp1: add key support on DK1/DK2
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (7 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 08/48] ARM: dts: stm32mp1: add ldtc pre-reloc proper in SOC file Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 10/48] ARM: dts: stm32mp1: add pull-up on serial rx of console connected to STLINK Patrick Delaunay
                   ` (38 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Allow to use PA13 and PA14 to force fastboot mode or STM32CubeProgrammer
mode.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi b/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi
index 36c852d..2a1cfd3 100644
--- a/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi
@@ -17,6 +17,8 @@
 		u-boot,boot-led = "heartbeat";
 		u-boot,error-led = "error";
 		st,adc_usb_pd = <&adc1 18>, <&adc1 19>;
+		st,fastboot-gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
+		st,stm32prog-gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
 	};
 	led {
 		red {
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 10/48] ARM: dts: stm32mp1: add pull-up on serial rx of console connected to STLINK
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (8 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 09/48] ARM: dts: stm32mp1: add key support on DK1/DK2 Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 11/48] dt-bindings: clock: stm32mp1: support disabled fixed clock Patrick Delaunay
                   ` (37 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Avoid U-Boot auto-boot interruption for line break detection
on console when the RX line connected to STLINK is floating
(-IO error in getc cause by framing error and testc return 1)
Same workaround is applied on all the STMicroelectonics board.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi | 2 ++
 arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi b/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi
index 2a1cfd3..dcaab3e 100644
--- a/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi
@@ -189,6 +189,8 @@
 	};
 	pins2 {
 		u-boot,dm-pre-reloc;
+		/* pull-up on rx to avoid floating level */
+		bias-pull-up;
 	};
 };
 
diff --git a/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi b/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi
index 200601e..21c89c1 100644
--- a/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi
@@ -206,5 +206,7 @@
 	};
 	pins2 {
 		u-boot,dm-pre-reloc;
+		/* pull-up on rx to avoid floating level */
+		bias-pull-up;
 	};
 };
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 11/48] dt-bindings: clock: stm32mp1: support disabled fixed clock
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (9 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 10/48] ARM: dts: stm32mp1: add pull-up on serial rx of console connected to STLINK Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 12/48] stpmic1: program pmic to keep only the debug unit on Patrick Delaunay
                   ` (36 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add precision for disabled fixed clock in stm32mp1 binding.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 doc/device-tree-bindings/clock/st,stm32mp1.txt | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/doc/device-tree-bindings/clock/st,stm32mp1.txt b/doc/device-tree-bindings/clock/st,stm32mp1.txt
index 02e1460..ec1d703 100644
--- a/doc/device-tree-bindings/clock/st,stm32mp1.txt
+++ b/doc/device-tree-bindings/clock/st,stm32mp1.txt
@@ -164,8 +164,10 @@ used to define the state of associated ST32MP1 oscillators:
   - clk-csi
 
 At boot the clock tree initialization will
-  - enable oscillators present in device tree
+  - enable oscillators present in device tree and not disabled
+    (node with status="disabled"),
   - disable HSI oscillator if the node is absent (always activated by bootrom)
+    and not disabled (node with status="disabled").
 
 Optional properties :
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 12/48] stpmic1: program pmic to keep only the debug unit on
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (10 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 11/48] dt-bindings: clock: stm32mp1: support disabled fixed clock Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 13/48] stm32mp1: configs: remove CONFIG_SYS_HZ Patrick Delaunay
                   ` (35 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Depending on backup register value, we maintain the debug unit
powered-on for debugging purpose.
Only BUCK1 is required for powering the debug unit, so revert
the setting for all the other power lanes, except BUCK3 that
has to be always on.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/include/mach/stm32.h |  1 +
 board/st/stm32mp1/spl.c                    | 14 ++++++++++++++
 include/power/stpmic1.h                    |  5 +++--
 3 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-stm32mp/include/mach/stm32.h b/arch/arm/mach-stm32mp/include/mach/stm32.h
index 1d4b548..b3e9ccc 100644
--- a/arch/arm/mach-stm32mp/include/mach/stm32.h
+++ b/arch/arm/mach-stm32mp/include/mach/stm32.h
@@ -94,6 +94,7 @@ enum boot_device {
 #define TAMP_BOOT_DEVICE_MASK		GENMASK(7, 4)
 #define TAMP_BOOT_INSTANCE_MASK		GENMASK(3, 0)
 #define TAMP_BOOT_FORCED_MASK		GENMASK(7, 0)
+#define TAMP_BOOT_DEBUG_ON		BIT(16)
 
 enum forced_boot_mode {
 	BOOT_NORMAL = 0x00,
diff --git a/board/st/stm32mp1/spl.c b/board/st/stm32mp1/spl.c
index e19be0f..e65ff28 100644
--- a/board/st/stm32mp1/spl.c
+++ b/board/st/stm32mp1/spl.c
@@ -27,5 +27,19 @@ void spl_board_init(void)
 				STPMIC1_BUCKS_MRST_CR,
 				STPMIC1_MRST_BUCK(STPMIC1_BUCK3),
 				STPMIC1_MRST_BUCK(STPMIC1_BUCK3));
+
+	/* Check if debug is enabled to program PMIC according to the bit */
+	if ((readl(TAMP_BOOT_CONTEXT) & TAMP_BOOT_DEBUG_ON) && !ret) {
+		printf("Keep debug unit ON\n");
+
+		pmic_clrsetbits(dev, STPMIC1_BUCKS_MRST_CR,
+				STPMIC1_MRST_BUCK_DEBUG,
+				STPMIC1_MRST_BUCK_DEBUG);
+
+		if (STPMIC1_MRST_LDO_DEBUG)
+			pmic_clrsetbits(dev, STPMIC1_LDOS_MRST_CR,
+					STPMIC1_MRST_LDO_DEBUG,
+					STPMIC1_MRST_LDO_DEBUG);
+	}
 #endif
 }
diff --git a/include/power/stpmic1.h b/include/power/stpmic1.h
index 0e6721d..d90a1a9 100644
--- a/include/power/stpmic1.h
+++ b/include/power/stpmic1.h
@@ -22,11 +22,12 @@
 
 /* BUCKS_MRST_CR */
 #define STPMIC1_MRST_BUCK(buck)		BIT(buck)
-#define STPMIC1_MRST_BUCK_ALL		GENMASK(3, 0)
+#define STPMIC1_MRST_BUCK_DEBUG		(STPMIC1_MRST_BUCK(STPMIC1_BUCK1) | \
+					 STPMIC1_MRST_BUCK(STPMIC1_BUCK3))
 
 /* LDOS_MRST_CR */
 #define STPMIC1_MRST_LDO(ldo)		BIT(ldo)
-#define STPMIC1_MRST_LDO_ALL		GENMASK(6, 0)
+#define STPMIC1_MRST_LDO_DEBUG		0
 
 /* BUCKx_MAIN_CR (x=1...4) */
 #define STPMIC1_BUCK_ENA		BIT(0)
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 13/48] stm32mp1: configs: remove CONFIG_SYS_HZ
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (11 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 12/48] stpmic1: program pmic to keep only the debug unit on Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 14/48] stm32mp1: configs: activate CONFIG_SILENT_CONSOLE Patrick Delaunay
                   ` (34 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Use the default value from lib/Kconfig.


Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 include/configs/stm32mp1.h | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/include/configs/stm32mp1.h b/include/configs/stm32mp1.h
index 1bed570..033291e 100644
--- a/include/configs/stm32mp1.h
+++ b/include/configs/stm32mp1.h
@@ -10,11 +10,6 @@
 #include <linux/sizes.h>
 #include <asm/arch/stm32.h>
 
-/*
- * Number of clock ticks in 1 sec
- */
-#define CONFIG_SYS_HZ				1000
-
 #ifndef CONFIG_STM32MP1_TRUSTED
 /* PSCI support */
 #define CONFIG_ARMV7_PSCI_1_0
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 14/48] stm32mp1: configs: activate CONFIG_SILENT_CONSOLE
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (12 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 13/48] stm32mp1: configs: remove CONFIG_SYS_HZ Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 15/48] stm32mp1: configs: activate PRE_CONSOLE_BUFFER Patrick Delaunay
                   ` (33 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Allow to disable console with environment variable 'silent':
> env set silent 1; env save

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index 9dc3c4d..e5f05af 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -47,6 +47,7 @@ config TARGET_STM32MP1
 	imply BOOTSTAGE
 	imply CMD_BOOTCOUNT
 	imply CMD_BOOTSTAGE
+	imply SILENT_CONSOLE
 	imply SYSRESET_PSCI if STM32MP1_TRUSTED
 	imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
 	help
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 15/48] stm32mp1: configs: activate PRE_CONSOLE_BUFFER
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (13 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 14/48] stm32mp1: configs: activate CONFIG_SILENT_CONSOLE Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 16/48] stm32mp1: configs: deactivate ARMV7_VIRT for basic boot Patrick Delaunay
                   ` (32 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Correctly handle silent=1 in the default environment.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Kconfig | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index e5f05af..7efe464 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -47,6 +47,7 @@ config TARGET_STM32MP1
 	imply BOOTSTAGE
 	imply CMD_BOOTCOUNT
 	imply CMD_BOOTSTAGE
+	imply PRE_CONSOLE_BUFFER
 	imply SILENT_CONSOLE
 	imply SYSRESET_PSCI if STM32MP1_TRUSTED
 	imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
@@ -110,6 +111,13 @@ config CMD_STM32KEY
 		fuse public key hash in corresponding fuse used to authenticate
 		binary.
 
+
+config PRE_CON_BUF_ADDR
+	default 0xC02FF000
+
+config PRE_CON_BUF_SZ
+	default 4096
+
 config BOOTSTAGE_STASH_ADDR
 	default 0xC3000000
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 16/48] stm32mp1: configs: deactivate ARMV7_VIRT for basic boot
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (14 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 15/48] stm32mp1: configs: activate PRE_CONSOLE_BUFFER Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 17/48] stm32mp1: configs: select CONFIG_STM32_SERIAL Patrick Delaunay
                   ` (31 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

for the moment basic and trusted configuration must
start CPU in Supervisor mode and not in Hypervisor

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 configs/stm32mp15_basic_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index 27b8525..a4c2027 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -6,6 +6,7 @@ CONFIG_SPL=y
 CONFIG_TARGET_STM32MP1=y
 CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
+# CONFIG_ARMV7_VIRT is not set
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 17/48] stm32mp1: configs: select CONFIG_STM32_SERIAL
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (15 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 16/48] stm32mp1: configs: deactivate ARMV7_VIRT for basic boot Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 18/48] stm32mp1: configs: Activate DISABLE_CONSOLE Patrick Delaunay
                   ` (30 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Select the serial driver mandatory for the console.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Kconfig       | 1 +
 configs/stm32mp15_basic_defconfig   | 1 -
 configs/stm32mp15_optee_defconfig   | 1 -
 configs/stm32mp15_trusted_defconfig | 1 -
 4 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index 7efe464..0de9b3e 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -42,6 +42,7 @@ config TARGET_STM32MP1
 	select PINCTRL_STM32
 	select STM32_RCC
 	select STM32_RESET
+	select STM32_SERIAL
 	select SYS_ARCH_TIMER
 	imply BOOTCOUNT_LIMIT
 	imply BOOTSTAGE
diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index a4c2027..1edea79 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -106,7 +106,6 @@ CONFIG_REMOTEPROC_STM32_COPRO=y
 CONFIG_DM_RTC=y
 CONFIG_RTC_STM32=y
 CONFIG_SERIAL_RX_BUFFER=y
-CONFIG_STM32_SERIAL=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
 CONFIG_STM32_QSPI=y
diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
index 0565e5e..11f8359 100644
--- a/configs/stm32mp15_optee_defconfig
+++ b/configs/stm32mp15_optee_defconfig
@@ -92,7 +92,6 @@ CONFIG_REMOTEPROC_STM32_COPRO=y
 CONFIG_DM_RTC=y
 CONFIG_RTC_STM32=y
 CONFIG_SERIAL_RX_BUFFER=y
-CONFIG_STM32_SERIAL=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
 CONFIG_STM32_QSPI=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index 844cbcd..bc76c08 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -91,7 +91,6 @@ CONFIG_REMOTEPROC_STM32_COPRO=y
 CONFIG_DM_RTC=y
 CONFIG_RTC_STM32=y
 CONFIG_SERIAL_RX_BUFFER=y
-CONFIG_STM32_SERIAL=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
 CONFIG_STM32_QSPI=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 18/48] stm32mp1: configs: Activate DISABLE_CONSOLE
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (16 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 17/48] stm32mp1: configs: select CONFIG_STM32_SERIAL Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 19/48] stm32mp1: configs: support MTDPARTS only if needed Patrick Delaunay
                   ` (29 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Activate DISABLE_CONSOLE needed for stm32prog support on uart.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index 0de9b3e..cee3ce1 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -48,6 +48,7 @@ config TARGET_STM32MP1
 	imply BOOTSTAGE
 	imply CMD_BOOTCOUNT
 	imply CMD_BOOTSTAGE
+	imply DISABLE_CONSOLE
 	imply PRE_CONSOLE_BUFFER
 	imply SILENT_CONSOLE
 	imply SYSRESET_PSCI if STM32MP1_TRUSTED
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 19/48] stm32mp1: configs: support MTDPARTS only if needed
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (17 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 18/48] stm32mp1: configs: Activate DISABLE_CONSOLE Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 20/48] stm32mp1: configs: imply CONFIG_OF_LIBFDT_OVERLAY Patrick Delaunay
                   ` (28 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

MTD is only use if NAND or NOR driver is activated.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 include/configs/stm32mp1.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/configs/stm32mp1.h b/include/configs/stm32mp1.h
index 033291e..b2b8660 100644
--- a/include/configs/stm32mp1.h
+++ b/include/configs/stm32mp1.h
@@ -79,7 +79,9 @@
 #endif
 
 /* Dynamic MTD partition support */
+#if defined(CONFIG_STM32_QSPI) || defined(CONFIG_NAND_STM32_FMC2)
 #define CONFIG_SYS_MTDPARTS_RUNTIME
+#endif
 
 /*****************************************************************************/
 #ifdef CONFIG_DISTRO_DEFAULTS
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 20/48] stm32mp1: configs: imply CONFIG_OF_LIBFDT_OVERLAY
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (18 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 19/48] stm32mp1: configs: support MTDPARTS only if needed Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 21/48] stm32mp1: configs: Deactivate SPI_FLASH_BAR Patrick Delaunay
                   ` (27 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add imply for FDT overlay that can be usefuill for kernel device tree
management but it is not mandatory (can be removed to gain space)

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 3f0e301..14108e6 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1545,6 +1545,7 @@ config ARCH_STM32MP
 	imply SPL_SYSRESET
 	imply CMD_DM
 	imply CMD_POWEROFF
+	imply OF_LIBFDT_OVERLAY
 	imply ENV_VARS_UBOOT_RUNTIME_CONFIG
 	imply USE_PREBOOT
 	help
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 21/48] stm32mp1: configs: Deactivate SPI_FLASH_BAR
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (19 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 20/48] stm32mp1: configs: imply CONFIG_OF_LIBFDT_OVERLAY Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 22/48] stm32mp1: configs: add CONFIG_DM_VIDEO Patrick Delaunay
                   ` (26 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Remove CONFIG_SPI_FLASH_BAR as the SPI NOR layer uses stateless
4 byte opcodes by default.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 configs/stm32mp15_basic_defconfig   | 1 -
 configs/stm32mp15_optee_defconfig   | 1 -
 configs/stm32mp15_trusted_defconfig | 1 -
 3 files changed, 3 deletions(-)

diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index 1edea79..5a372e1 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -81,7 +81,6 @@ CONFIG_NAND=y
 CONFIG_NAND_STM32_FMC2=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
index 11f8359..a6c010e 100644
--- a/configs/stm32mp15_optee_defconfig
+++ b/configs/stm32mp15_optee_defconfig
@@ -69,7 +69,6 @@ CONFIG_NAND=y
 CONFIG_NAND_STM32_FMC2=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index bc76c08..de87834 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -68,7 +68,6 @@ CONFIG_NAND=y
 CONFIG_NAND_STM32_FMC2=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 22/48] stm32mp1: configs: add CONFIG_DM_VIDEO
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (20 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 21/48] stm32mp1: configs: Deactivate SPI_FLASH_BAR Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 23/48] stm32mp1: configs: add BACKLIGHT_GPIO support Patrick Delaunay
                   ` (25 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Activate command DM_VIDEO for LCD support

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 configs/stm32mp15_basic_defconfig   | 1 +
 configs/stm32mp15_optee_defconfig   | 1 +
 configs/stm32mp15_trusted_defconfig | 1 +
 3 files changed, 3 insertions(+)

diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index 5a372e1..7e5ae45 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -119,4 +119,5 @@ CONFIG_USB_GADGET_MANUFACTURER="STMicroelectronics"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0483
 CONFIG_USB_GADGET_PRODUCT_NUM=0x5720
 CONFIG_USB_GADGET_DWC2_OTG=y
+CONFIG_DM_VIDEO=y
 CONFIG_FDT_FIXUP_PARTITIONS=y
diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
index a6c010e..0860a26 100644
--- a/configs/stm32mp15_optee_defconfig
+++ b/configs/stm32mp15_optee_defconfig
@@ -105,4 +105,5 @@ CONFIG_USB_GADGET_MANUFACTURER="STMicroelectronics"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0483
 CONFIG_USB_GADGET_PRODUCT_NUM=0x5720
 CONFIG_USB_GADGET_DWC2_OTG=y
+CONFIG_DM_VIDEO=y
 CONFIG_FDT_FIXUP_PARTITIONS=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index de87834..5855c36 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -104,4 +104,5 @@ CONFIG_USB_GADGET_MANUFACTURER="STMicroelectronics"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0483
 CONFIG_USB_GADGET_PRODUCT_NUM=0x5720
 CONFIG_USB_GADGET_DWC2_OTG=y
+CONFIG_DM_VIDEO=y
 CONFIG_FDT_FIXUP_PARTITIONS=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 23/48] stm32mp1: configs: add BACKLIGHT_GPIO support
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (21 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 22/48] stm32mp1: configs: add CONFIG_DM_VIDEO Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 24/48] stm32mp1: configs: add CONFIG_CMD_BMP Patrick Delaunay
                   ` (24 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Backlight of panel raydium RM68200 is controlled by a simple gpio,
thus we activate the support for the needed driver.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 configs/stm32mp15_basic_defconfig   | 1 +
 configs/stm32mp15_optee_defconfig   | 1 +
 configs/stm32mp15_trusted_defconfig | 1 +
 3 files changed, 3 insertions(+)

diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index 7e5ae45..ca7e91c 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -120,4 +120,5 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x0483
 CONFIG_USB_GADGET_PRODUCT_NUM=0x5720
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_DM_VIDEO=y
+CONFIG_BACKLIGHT_GPIO=y
 CONFIG_FDT_FIXUP_PARTITIONS=y
diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
index 0860a26..f480c3d 100644
--- a/configs/stm32mp15_optee_defconfig
+++ b/configs/stm32mp15_optee_defconfig
@@ -106,4 +106,5 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x0483
 CONFIG_USB_GADGET_PRODUCT_NUM=0x5720
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_DM_VIDEO=y
+CONFIG_BACKLIGHT_GPIO=y
 CONFIG_FDT_FIXUP_PARTITIONS=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index 5855c36..585817e 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -105,4 +105,5 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x0483
 CONFIG_USB_GADGET_PRODUCT_NUM=0x5720
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_DM_VIDEO=y
+CONFIG_BACKLIGHT_GPIO=y
 CONFIG_FDT_FIXUP_PARTITIONS=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 24/48] stm32mp1: configs: add CONFIG_CMD_BMP
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (22 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 23/48] stm32mp1: configs: add BACKLIGHT_GPIO support Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 25/48] stm32mp1: configs: add condition to activate WATCHDOG in SPL Patrick Delaunay
                   ` (23 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Activate command BMP for splash screen support

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 configs/stm32mp15_basic_defconfig   | 1 +
 configs/stm32mp15_optee_defconfig   | 1 +
 configs/stm32mp15_trusted_defconfig | 1 +
 3 files changed, 3 insertions(+)

diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index ca7e91c..740d482 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
 CONFIG_CMD_USB_MASS_STORAGE=y
+CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_TIMER=y
diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
index f480c3d..e5b9be7 100644
--- a/configs/stm32mp15_optee_defconfig
+++ b/configs/stm32mp15_optee_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
 CONFIG_CMD_USB_MASS_STORAGE=y
+CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_TIMER=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index 585817e..2d9be04 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
 CONFIG_CMD_USB_MASS_STORAGE=y
+CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_TIMER=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 25/48] stm32mp1: configs: add condition to activate WATCHDOG in SPL
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (23 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 24/48] stm32mp1: configs: add CONFIG_CMD_BMP Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 26/48] stm32mp1: configs: add altbootcmd Patrick Delaunay
                   ` (22 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Only activate WATCHDOG in SPL when CONFIG_WATCHDOG is activated in U-Boot.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index cee3ce1..187be17 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -17,7 +17,7 @@ config SPL
 	select SPL_DM_RESET
 	select SPL_SERIAL_SUPPORT
 	select SPL_SYSCON
-	select SPL_WATCHDOG_SUPPORT
+	select SPL_WATCHDOG_SUPPORT if WATCHDOG
 	imply BOOTSTAGE_STASH if SPL_BOOTSTAGE
 	imply SPL_BOOTSTAGE if BOOTSTAGE
 	imply SPL_DISPLAY_PRINT
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 26/48] stm32mp1: configs: add altbootcmd
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (24 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 25/48] stm32mp1: configs: add condition to activate WATCHDOG in SPL Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 27/48] stm32mp1: configs: Set bootdelay to 1 Patrick Delaunay
                   ` (21 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add altbootcmad as it is used for
- bootcountlimit
- in mach-stm32mp/cpu.c for BOOT_RECOVERY mode

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 include/configs/stm32mp1.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/configs/stm32mp1.h b/include/configs/stm32mp1.h
index b2b8660..ae05308 100644
--- a/include/configs/stm32mp1.h
+++ b/include/configs/stm32mp1.h
@@ -150,7 +150,8 @@
 	"ramdisk_addr_r=0xc4400000\0" \
 	"fdt_high=0xffffffff\0" \
 	"initrd_high=0xffffffff\0" \
-	"env_default=1\0"				\
+	"altbootcmd=run bootcmd\0" \
+	"env_default=1\0" \
 	"env_check=if test $env_default -eq 1;"\
 		" then env set env_default 0;env save;fi\0" \
 	STM32MP_BOOTCMD \
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 27/48] stm32mp1: configs: Set bootdelay to 1
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (25 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 26/48] stm32mp1: configs: add altbootcmd Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 28/48] stm32mp1: configs: add spi load support in spl Patrick Delaunay
                   ` (20 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

From: Patrice Chotard <patrice.chotard@st.com>

This allows to display splashcreen without waiting
an extra delay of 2 seconds due to default value of bootdelay.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 include/configs/stm32mp1.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/configs/stm32mp1.h b/include/configs/stm32mp1.h
index ae05308..92660fe 100644
--- a/include/configs/stm32mp1.h
+++ b/include/configs/stm32mp1.h
@@ -142,6 +142,7 @@
  * and the ramdisk at the end.
  */
 #define CONFIG_EXTRA_ENV_SETTINGS \
+	"bootdelay=1\0" \
 	"kernel_addr_r=0xc2000000\0" \
 	"fdt_addr_r=0xc4000000\0" \
 	"scriptaddr=0xc4100000\0" \
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 28/48] stm32mp1: configs: add spi load support in spl
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (26 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 27/48] stm32mp1: configs: Set bootdelay to 1 Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 29/48] stm32mp1: board: add environment variable for board id and board rev Patrick Delaunay
                   ` (19 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add the boot for NOR, SPL load U-Boot.img at offset
CONFIG_SYS_SPI_U_BOOT_OFFS = 0x80000.
It is the start address of mtd partition ssbl in nor.

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Kconfig | 1 +
 include/configs/stm32mp1.h    | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index 187be17..c9bc084 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -16,6 +16,7 @@ config SPL
 	select SPL_REGMAP
 	select SPL_DM_RESET
 	select SPL_SERIAL_SUPPORT
+	select SPL_SPI_LOAD
 	select SPL_SYSCON
 	select SPL_WATCHDOG_SUPPORT if WATCHDOG
 	imply BOOTSTAGE_STASH if SPL_BOOTSTAGE
diff --git a/include/configs/stm32mp1.h b/include/configs/stm32mp1.h
index 92660fe..88f8254 100644
--- a/include/configs/stm32mp1.h
+++ b/include/configs/stm32mp1.h
@@ -70,6 +70,11 @@
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
 
+/* SPI FLASH support */
+#if defined(CONFIG_SPL_BUILD)
+#define CONFIG_SYS_SPI_U_BOOT_OFFS	0x80000
+#endif
+
 /* Ethernet need */
 #ifdef CONFIG_DWC_ETH_QOS
 #define CONFIG_SYS_NONCACHED_MEMORY	(1 * SZ_1M)	/* 1M */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 29/48] stm32mp1: board: add environment variable for board id and board rev
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (27 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 28/48] stm32mp1: configs: add spi load support in spl Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 30/48] stm32mp1: board: enable v1v2_hdmi and v3v3_hdmi regulator on dk2 boot Patrick Delaunay
                   ` (18 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add variable to identify board with HW id (read from OTP)
and revision.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 board/st/stm32mp1/stm32mp1.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index b99c6c0..ad3db31 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -538,6 +538,10 @@ int board_late_init(void)
 #ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
 	const void *fdt_compat;
 	int fdt_compat_len;
+	int ret;
+	u32 otp;
+	struct udevice *dev;
+	char buf[10];
 
 	fdt_compat = fdt_getprop(gd->fdt_blob, 0, "compatible",
 				 &fdt_compat_len);
@@ -547,6 +551,21 @@ int board_late_init(void)
 		else
 			env_set("board_name", fdt_compat + 3);
 	}
+	ret = uclass_get_device_by_driver(UCLASS_MISC,
+					  DM_GET_DRIVER(stm32mp_bsec),
+					  &dev);
+
+	if (!ret)
+		ret = misc_read(dev, STM32_BSEC_SHADOW(BSEC_OTP_BOARD),
+				&otp, sizeof(otp));
+	if (!ret && otp) {
+		snprintf(buf, sizeof(buf), "0x%04x", otp >> 16);
+		env_set("board_id", buf);
+
+		snprintf(buf, sizeof(buf), "0x%04x",
+			 ((otp >> 8) & 0xF) - 1 + 0xA);
+		env_set("board_rev", buf);
+	}
 #endif
 
 	/* for DK1/DK2 boards */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 30/48] stm32mp1: board: enable v1v2_hdmi and v3v3_hdmi regulator on dk2 boot
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (28 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 29/48] stm32mp1: board: add environment variable for board id and board rev Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 31/48] stm32mp1: board: support of error led on ed1/ev1 board Patrick Delaunay
                   ` (17 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

As for Audio codec IC, HDMI IC is not "IO safe".
HDMI regulators (v3v3 and v1v2) must be enabled to allow
I2C1 bus usage. HDMI IC must be under reset during power up
and keep HDMI and AUDIO devices in reset while they are not
used in U-Boot to keep them in low power mode
(each device can be kept in reset independently keeping their
power supplies ON until kernel).

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi |  6 +++
 board/st/stm32mp1/Kconfig                |  4 ++
 board/st/stm32mp1/stm32mp1.c             | 70 ++++++++++++++++++++++++++++++++
 3 files changed, 80 insertions(+)

diff --git a/arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi b/arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi
index 06ef3a4..18ac1e3 100644
--- a/arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi
@@ -4,3 +4,9 @@
  */
 
 #include "stm32mp157a-dk1-u-boot.dtsi"
+
+&i2c1 {
+	hdmi-transmitter at 39 {
+		reset-gpios = <&gpioa 10 GPIO_ACTIVE_LOW>;
+	};
+};
diff --git a/board/st/stm32mp1/Kconfig b/board/st/stm32mp1/Kconfig
index 87216c0..4fa2360 100644
--- a/board/st/stm32mp1/Kconfig
+++ b/board/st/stm32mp1/Kconfig
@@ -22,4 +22,8 @@ config CMD_STBOARD
 	  This compile the stboard command to
 	  read and write the board in the OTP.
 
+config TARGET_STM32MP157C_DK2
+	bool "support of STMicroelectronics STM32MP157C-DK2 Discovery Board"
+	default y
+
 endif
diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index ad3db31..2837e9a 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -504,6 +504,73 @@ static void sysconf_init(void)
 #endif
 }
 
+#ifdef CONFIG_DM_REGULATOR
+/* Fix to make I2C1 usable on DK2 for touchscreen usage in kernel */
+static int dk2_i2c1_fix(void)
+{
+	ofnode node;
+	struct gpio_desc hdmi, audio;
+	int ret = 0;
+
+	node = ofnode_path("/soc/i2c at 40012000/hdmi-transmitter at 39");
+	if (!ofnode_valid(node)) {
+		pr_debug("%s: no hdmi-transmitter at 39 ?\n", __func__);
+		return -ENOENT;
+	}
+
+	if (gpio_request_by_name_nodev(node, "reset-gpios", 0,
+				       &hdmi, GPIOD_IS_OUT)) {
+		pr_debug("%s: could not find reset-gpios\n",
+			 __func__);
+		return -ENOENT;
+	}
+
+	node = ofnode_path("/soc/i2c at 40012000/cs42l51 at 4a");
+	if (!ofnode_valid(node)) {
+		pr_debug("%s: no cs42l51 at 4a ?\n", __func__);
+		return -ENOENT;
+	}
+
+	if (gpio_request_by_name_nodev(node, "reset-gpios", 0,
+				       &audio, GPIOD_IS_OUT)) {
+		pr_debug("%s: could not find reset-gpios\n",
+			 __func__);
+		return -ENOENT;
+	}
+
+	/* before power up, insure that HDMI and AUDIO IC is under reset */
+	ret = dm_gpio_set_value(&hdmi, 1);
+	if (ret) {
+		pr_err("%s: can't set_value for hdmi_nrst gpio", __func__);
+		goto error;
+	}
+	ret = dm_gpio_set_value(&audio, 1);
+	if (ret) {
+		pr_err("%s: can't set_value for audio_nrst gpio", __func__);
+		goto error;
+	}
+
+	/* power-up audio IC */
+	regulator_autoset_by_name("v1v8_audio", NULL);
+
+	/* power-up HDMI IC */
+	regulator_autoset_by_name("v1v2_hdmi", NULL);
+	regulator_autoset_by_name("v3v3_hdmi", NULL);
+
+error:
+	return ret;
+}
+
+static bool board_is_dk2(void)
+{
+	if (CONFIG_IS_ENABLED(TARGET_STM32MP157C_DK2) &&
+	    of_machine_is_compatible("st,stm32mp157c-dk2"))
+		return true;
+
+	return false;
+}
+#endif
+
 /* board dependent setup after realloc */
 int board_init(void)
 {
@@ -522,6 +589,9 @@ int board_init(void)
 	board_key_check();
 
 #ifdef CONFIG_DM_REGULATOR
+	if (board_is_dk2())
+		dk2_i2c1_fix();
+
 	regulators_enable_boot_on(_DEBUG);
 #endif
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 31/48] stm32mp1: board: support of error led on ed1/ev1 board
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (29 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 30/48] stm32mp1: board: enable v1v2_hdmi and v3v3_hdmi regulator on dk2 boot Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 32/48] stm32mp1: board: protect the led function calls Patrick Delaunay
                   ` (16 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Create a function led_error_blink and add node in device
tree.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi | 21 ++++----------
 board/st/stm32mp1/stm32mp1.c             | 48 ++++++++++++++++++++++----------
 2 files changed, 39 insertions(+), 30 deletions(-)

diff --git a/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi b/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi
index 21c89c1..4953a0d 100644
--- a/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157c-ed1-u-boot.dtsi
@@ -15,31 +15,22 @@
 	};
 
 	config {
+		u-boot,boot-led = "heartbeat";
+		u-boot,error-led = "error";
 		st,fastboot-gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
 		st,stm32prog-gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
 	};
 
 	led {
-		compatible = "gpio-leds";
-
 		red {
-			label = "stm32mp:red:status";
+			label = "error";
 			gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
 			default-state = "off";
+			status = "okay";
 		};
-		green {
-			label = "stm32mp:green:user";
-			gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
-			default-state = "on";
-		};
-		orange {
-			label = "stm32mp:orange:status";
-			gpios = <&gpioh 7 GPIO_ACTIVE_HIGH>;
-			default-state = "off";
-		};
+
 		blue {
-			label = "stm32mp:blue:user";
-			gpios = <&gpiod 11 GPIO_ACTIVE_HIGH>;
+			default-state = "on";
 		};
 	};
 };
diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index 2837e9a..61a4253 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -20,6 +20,7 @@
 #include <reset.h>
 #include <syscon.h>
 #include <usb.h>
+#include <watchdog.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/arch/stm32.h>
@@ -231,6 +232,7 @@ int g_dnl_board_usb_cable_connected(void)
 }
 #endif /* CONFIG_USB_GADGET */
 
+#ifdef CONFIG_LED
 static int get_led(struct udevice **dev, char *led_string)
 {
 	char *led_name;
@@ -263,12 +265,41 @@ static int setup_led(enum led_state_t cmd)
 	ret = led_set_state(dev, cmd);
 	return ret;
 }
+#endif
+
+static void __maybe_unused led_error_blink(u32 nb_blink)
+{
+#ifdef CONFIG_LED
+	int ret;
+	struct udevice *led;
+	u32 i;
+#endif
+
+	if (!nb_blink)
+		return;
+
+#ifdef CONFIG_LED
+	ret = get_led(&led, "u-boot,error-led");
+	if (!ret) {
+		/* make u-boot,error-led blinking */
+		/* if U32_MAX and 125ms interval, for 17.02 years */
+		for (i = 0; i < 2 * nb_blink; i++) {
+			led_set_state(led, LEDST_TOGGLE);
+			mdelay(125);
+			WATCHDOG_RESET();
+		}
+	}
+#endif
+
+	/* infinite: the boot process must be stopped */
+	if (nb_blink == U32_MAX)
+		hang();
+}
 
 static int board_check_usb_power(void)
 {
 	struct ofnode_phandle_args adc_args;
 	struct udevice *adc;
-	struct udevice *led;
 	ofnode node;
 	unsigned int raw;
 	int max_uV = 0;
@@ -394,20 +425,7 @@ static int board_check_usb_power(void)
 		pr_err("****************************************************\n\n");
 	}
 
-	ret = get_led(&led, "u-boot,error-led");
-	if (ret) {
-		/* in unattached case, the boot process must be stopped */
-		if (nb_blink == U32_MAX)
-			hang();
-		return ret;
-	}
-
-	/* make u-boot,error-led blinking */
-	for (i = 0; i < nb_blink * 2; i++) {
-		led_set_state(led, LEDST_TOGGLE);
-		mdelay(125);
-	}
-	led_set_state(led, LEDST_ON);
+	led_error_blink(nb_blink);
 
 	return 0;
 }
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 32/48] stm32mp1: board: protect the led function calls
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (30 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 31/48] stm32mp1: board: support of error led on ed1/ev1 board Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 33/48] stm32mp1: board: check the boot-source to disable bootdelay Patrick Delaunay
                   ` (15 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Avoid compilation issue when CONFIG_LED is not activated

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 board/st/stm32mp1/stm32mp1.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index 61a4253..181409c 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -615,7 +615,7 @@ int board_init(void)
 
 	sysconf_init();
 
-	if (IS_ENABLED(CONFIG_LED))
+	if (CONFIG_IS_ENABLED(CONFIG_LED))
 		led_default_state();
 
 	return 0;
@@ -664,7 +664,9 @@ int board_late_init(void)
 
 void board_quiesce_devices(void)
 {
+#ifdef CONFIG_LED
 	setup_led(LEDST_OFF);
+#endif
 }
 
 /* board interface eth init */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 33/48] stm32mp1: board: check the boot-source to disable bootdelay
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (31 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 32/48] stm32mp1: board: protect the led function calls Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 34/48] stm32mp1: board: Update the way vdd-supply is retrieved from DT Patrick Delaunay
                   ` (14 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Allows to avoid to wait 2 second in U-Boot before to
start STM32CubeProgrammer command.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 board/st/stm32mp1/stm32mp1.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index 181409c..c61a562 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -623,6 +623,7 @@ int board_init(void)
 
 int board_late_init(void)
 {
+	char *boot_device;
 #ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
 	const void *fdt_compat;
 	int fdt_compat_len;
@@ -659,6 +660,11 @@ int board_late_init(void)
 	/* for DK1/DK2 boards */
 	board_check_usb_power();
 
+	/* Check the boot-source to disable bootdelay */
+	boot_device = env_get("boot_device");
+	if (!strcmp(boot_device, "serial") || !strcmp(boot_device, "usb"))
+		env_set("bootdelay", "0");
+
 	return 0;
 }
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 34/48] stm32mp1: board: Update the way vdd-supply is retrieved from DT
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (32 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 33/48] stm32mp1: board: check the boot-source to disable bootdelay Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 35/48] stm32mp1: board: remove board_check_usb_power when ADC is not activated Patrick Delaunay
                   ` (13 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Due to kernel DT alignment, pwr-supply is renamed to vdd-supply
and is a subnode of pwr-regulators.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/stm32mp157a-avenger96.dts | 5 ++++-
 arch/arm/dts/stm32mp157a-dk1.dts       | 5 ++++-
 arch/arm/dts/stm32mp157c-ed1.dts       | 5 ++++-
 board/st/stm32mp1/stm32mp1.c           | 8 +++++---
 4 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/arch/arm/dts/stm32mp157a-avenger96.dts b/arch/arm/dts/stm32mp157a-avenger96.dts
index ba86cf5..5b15a4a 100644
--- a/arch/arm/dts/stm32mp157a-avenger96.dts
+++ b/arch/arm/dts/stm32mp157a-avenger96.dts
@@ -283,7 +283,10 @@
 };
 
 &pwr {
-	pwr-supply = <&vdd>;
+	pwr-regulators {
+		vdd-supply = <&vdd>;
+		vdd_3v3_usbfs-supply = <&vdd_usb>;
+	};
 };
 
 &rng1 {
diff --git a/arch/arm/dts/stm32mp157a-dk1.dts b/arch/arm/dts/stm32mp157a-dk1.dts
index 1d5c1a6..ba612a5 100644
--- a/arch/arm/dts/stm32mp157a-dk1.dts
+++ b/arch/arm/dts/stm32mp157a-dk1.dts
@@ -308,7 +308,10 @@
 };
 
 &pwr {
-	pwr-supply = <&vdd>;
+	pwr-regulators {
+		vdd-supply = <&vdd>;
+		vdd_3v3_usbfs-supply = <&vdd_usb>;
+	};
 };
 
 &rng1 {
diff --git a/arch/arm/dts/stm32mp157c-ed1.dts b/arch/arm/dts/stm32mp157c-ed1.dts
index 94ac025..3e8b7b5 100644
--- a/arch/arm/dts/stm32mp157c-ed1.dts
+++ b/arch/arm/dts/stm32mp157c-ed1.dts
@@ -218,7 +218,10 @@
 };
 
 &pwr {
-	pwr-supply = <&vdd>;
+	pwr-regulators {
+		vdd-supply = <&vdd>;
+		vdd_3v3_usbfs-supply = <&vdd_usb>;
+	};
 };
 
 &rng1 {
diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index c61a562..a96e675 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -471,7 +471,9 @@ static void sysconf_init(void)
 	 *   => U-Boot set the register only if VDD < 2.7V (in DT)
 	 *      but this value need to be consistent with board design
 	 */
-	ret = syscon_get_by_driver_data(STM32MP_SYSCON_PWR, &pwr_dev);
+	ret = uclass_get_device_by_driver(UCLASS_PMIC,
+					  DM_GET_DRIVER(stm32mp_pwr_pmic),
+					  &pwr_dev);
 	if (!ret) {
 		ret = uclass_get_device_by_driver(UCLASS_MISC,
 						  DM_GET_DRIVER(stm32mp_bsec),
@@ -485,8 +487,8 @@ static void sysconf_init(void)
 		if (!ret)
 			otp = otp & BIT(13);
 
-		/* get VDD = pwr-supply */
-		ret = device_get_supply_regulator(pwr_dev, "pwr-supply",
+		/* get VDD = vdd-supply */
+		ret = device_get_supply_regulator(pwr_dev, "vdd-supply",
 						  &pwr_reg);
 
 		/* check if VDD is Low Voltage */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 35/48] stm32mp1: board: remove board_check_usb_power when ADC is not activated
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (33 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 34/48] stm32mp1: board: Update the way vdd-supply is retrieved from DT Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 36/48] stm32mp1: board: cosmetic: cleanup file Patrick Delaunay
                   ` (12 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Avoid compilation issue when CONFIG_ADC is not activated

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 board/st/stm32mp1/stm32mp1.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index a96e675..a67e33e 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -296,6 +296,7 @@ static void __maybe_unused led_error_blink(u32 nb_blink)
 		hang();
 }
 
+#ifdef CONFIG_ADC
 static int board_check_usb_power(void)
 {
 	struct ofnode_phandle_args adc_args;
@@ -429,6 +430,7 @@ static int board_check_usb_power(void)
 
 	return 0;
 }
+#endif /* CONFIG_ADC */
 
 static void sysconf_init(void)
 {
@@ -659,8 +661,10 @@ int board_late_init(void)
 	}
 #endif
 
+#ifdef CONFIG_ADC
 	/* for DK1/DK2 boards */
 	board_check_usb_power();
+#endif /* CONFIG_ADC */
 
 	/* Check the boot-source to disable bootdelay */
 	boot_device = env_get("boot_device");
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 36/48] stm32mp1: board: cosmetic: cleanup file
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (34 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 35/48] stm32mp1: board: remove board_check_usb_power when ADC is not activated Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 37/48] mmc: stm32_sdmmc2: reload watchdog Patrick Delaunay
                   ` (11 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

- reorder include files
- remove one comment

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 board/st/stm32mp1/stm32mp1.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index a67e33e..7085bd5 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -5,8 +5,8 @@
 #include <common.h>
 #include <adc.h>
 #include <bootm.h>
-#include <config.h>
 #include <clk.h>
+#include <config.h>
 #include <dm.h>
 #include <environment.h>
 #include <g_dnl.h>
@@ -682,7 +682,6 @@ void board_quiesce_devices(void)
 }
 
 /* board interface eth init */
-/* this is a weak define that we are overriding */
 int board_interface_eth_init(phy_interface_t interface_type,
 			     bool eth_clk_sel_reg, bool eth_ref_clk_sel_reg)
 {
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 37/48] mmc: stm32_sdmmc2: reload watchdog
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (35 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 36/48] stm32mp1: board: cosmetic: cleanup file Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 38/48] serial: stm32: add Framing error support Patrick Delaunay
                   ` (10 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

From: Christophe Kerello <christophe.kerello@st.com>

This patch solves a watchdog reset issue during mmc erase command.

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/mmc/stm32_sdmmc2.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/mmc/stm32_sdmmc2.c b/drivers/mmc/stm32_sdmmc2.c
index 867ed56..e7058cb 100644
--- a/drivers/mmc/stm32_sdmmc2.c
+++ b/drivers/mmc/stm32_sdmmc2.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <linux/iopoll.h>
+#include <watchdog.h>
 
 struct stm32_sdmmc2_plat {
 	struct mmc_config cfg;
@@ -432,6 +433,8 @@ static int stm32_sdmmc2_send_cmd(struct udevice *dev, struct mmc_cmd *cmd,
 	u32 cmdat = data ? SDMMC_CMD_CMDTRANS : 0;
 	int ret, retry = 3;
 
+	WATCHDOG_RESET();
+
 retry_cmd:
 	ctx.data_length = 0;
 	ctx.dpsm_abort = false;
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 38/48] serial: stm32: add Framing error support
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (36 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 37/48] mmc: stm32_sdmmc2: reload watchdog Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 39/48] serial: stm32: remove unused include Patrick Delaunay
                   ` (9 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add management of Bit 1 of USART_ISR = FE: Framing error
This bit is set by hardware when a de-synchronization, excessive noise
or a break character is detected. It is cleared by software, writing 1
to the FECF bit in the USART_ICR register (for stm32 after f4).

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/serial/serial_stm32.c | 5 +++--
 drivers/serial/serial_stm32.h | 2 ++
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/serial/serial_stm32.c b/drivers/serial/serial_stm32.c
index 3ab536a..00a8e72 100644
--- a/drivers/serial/serial_stm32.c
+++ b/drivers/serial/serial_stm32.c
@@ -106,10 +106,11 @@ static int stm32_serial_getc(struct udevice *dev)
 	if ((isr & USART_ISR_RXNE) == 0)
 		return -EAGAIN;
 
-	if (isr & (USART_ISR_PE | USART_ISR_ORE)) {
+	if (isr & (USART_ISR_PE | USART_ISR_ORE | USART_ISR_FE)) {
 		if (!stm32f4)
 			setbits_le32(base + ICR_OFFSET,
-				     USART_ICR_PCECF | USART_ICR_ORECF);
+				     USART_ICR_PCECF | USART_ICR_ORECF |
+				     USART_ICR_FECF);
 		else
 			readl(base + RDR_OFFSET(stm32f4));
 		return -EIO;
diff --git a/drivers/serial/serial_stm32.h b/drivers/serial/serial_stm32.h
index 5549f8c..7b0c531 100644
--- a/drivers/serial/serial_stm32.h
+++ b/drivers/serial/serial_stm32.h
@@ -67,6 +67,7 @@ struct stm32x7_serial_platdata {
 #define USART_ISR_TXE			BIT(7)
 #define USART_ISR_RXNE			BIT(5)
 #define USART_ISR_ORE			BIT(3)
+#define USART_ISR_FE			BIT(1)
 #define USART_ISR_PE			BIT(0)
 
 #define USART_BRR_F_MASK		GENMASK(7, 0)
@@ -74,6 +75,7 @@ struct stm32x7_serial_platdata {
 #define USART_BRR_M_MASK		GENMASK(15, 4)
 
 #define USART_ICR_ORECF			BIT(3)
+#define USART_ICR_FECF			BIT(1)
 #define USART_ICR_PCECF			BIT(0)
 
 #endif
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 39/48] serial: stm32: remove unused include
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (37 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 38/48] serial: stm32: add Framing error support Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 40/48] stm32mp1: ram: cosmetic: remove unused prototype Patrick Delaunay
                   ` (8 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

The "serial_stm32.h" is only used by drivers/serial/serial_stm32.c
and it is the file ./drivers/serial/serial_stm32.h

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 include/dm/platform_data/serial_stm32.h | 15 ---------------
 1 file changed, 15 deletions(-)
 delete mode 100644 include/dm/platform_data/serial_stm32.h

diff --git a/include/dm/platform_data/serial_stm32.h b/include/dm/platform_data/serial_stm32.h
deleted file mode 100644
index 85153df..0000000
--- a/include/dm/platform_data/serial_stm32.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * (C) Copyright 2015
- * Kamil Lulko, <kamil.lulko@gmail.com>
- */
-
-#ifndef __SERIAL_STM32_H
-#define __SERIAL_STM32_H
-
-/* Information about a serial port */
-struct stm32_serial_platdata {
-	struct stm32_usart *base;  /* address of registers in physical memory */
-};
-
-#endif /* __SERIAL_STM32_H */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 40/48] stm32mp1: ram: cosmetic: remove unused prototype
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (38 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 39/48] serial: stm32: remove unused include Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 41/48] stm32mp1: ram: fix address issue in 2 tests Patrick Delaunay
                   ` (7 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/ram/stm32mp1/stm32mp1_ddr.h | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/ram/stm32mp1/stm32mp1_ddr.h b/drivers/ram/stm32mp1/stm32mp1_ddr.h
index a8eed89..52b748f 100644
--- a/drivers/ram/stm32mp1/stm32mp1_ddr.h
+++ b/drivers/ram/stm32mp1/stm32mp1_ddr.h
@@ -197,10 +197,6 @@ void stm32mp1_edit_param(const struct stm32mp1_ddr_config *config,
 			 char *name,
 			 char *string);
 
-void stm32mp1_dump_info(
-	const struct ddr_info *priv,
-	const struct stm32mp1_ddr_config *config);
-
 bool stm32mp1_ddr_interactive(
 	void *priv,
 	enum stm32mp1_ddr_interact_step step,
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 41/48] stm32mp1: ram: fix address issue in 2 tests
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (39 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 40/48] stm32mp1: ram: cosmetic: remove unused prototype Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 42/48] stm32mp1: ram: update loop management in infinite test Patrick Delaunay
                   ` (6 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

If user choose to test memory size is 1GByte (0x40000000),
memory address would overflow in test "Random" and
test "FrequencySelectivePattern".
Thus the system would hangs up when running DDR test.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Signed-off-by: Bossen WU <bossen.wu@st.com>
---

 drivers/ram/stm32mp1/stm32mp1_tests.c | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

diff --git a/drivers/ram/stm32mp1/stm32mp1_tests.c b/drivers/ram/stm32mp1/stm32mp1_tests.c
index b6fb2a9..691c63c 100644
--- a/drivers/ram/stm32mp1/stm32mp1_tests.c
+++ b/drivers/ram/stm32mp1/stm32mp1_tests.c
@@ -578,27 +578,29 @@ static enum test_result test_random(struct stm32mp1_ddrctl *ctl,
 	u32 error = 0;
 	unsigned int seed;
 
-	if (get_bufsize(string, argc, argv, 0, &bufsize, 4 * 1024))
+	if (get_bufsize(string, argc, argv, 0, &bufsize, 8 * 1024))
 		return TEST_ERROR;
 	if (get_nb_loop(string, argc, argv, 1, &nb_loop, 1))
 		return TEST_ERROR;
 	if (get_addr(string, argc, argv, 2, &addr))
 		return TEST_ERROR;
 
-	printf("running %d loops at 0x%x\n", nb_loop, addr);
+	bufsize /= 2;
+	printf("running %d loops copy from 0x%x to 0x%x (buffer size=0x%x)\n",
+	       nb_loop, addr, addr + bufsize, bufsize);
 	while (!error) {
 		seed = rand();
-		for (offset = addr; offset < addr + bufsize; offset += 4)
-			writel(rand(), offset);
+		for (offset = 0; offset < bufsize; offset += 4)
+			writel(rand(), addr + offset);
 
 		memcpy((void *)addr + bufsize, (void *)addr, bufsize);
 
 		srand(seed);
-		for (offset = addr; offset < addr + 2 * bufsize; offset += 4) {
-			if (offset == (addr + bufsize))
+		for (offset = 0; offset < 2 * bufsize; offset += 4) {
+			if (offset == bufsize)
 				srand(seed);
 			value = rand();
-			error = check_addr(offset, value);
+			error = check_addr(addr + offset, value);
 			if (error)
 				break;
 			if (progress(offset))
@@ -607,6 +609,7 @@ static enum test_result test_random(struct stm32mp1_ddrctl *ctl,
 		if (test_loop_end(&loop, nb_loop, 100))
 			break;
 	}
+	putc('\n');
 
 	if (error) {
 		sprintf(string,
@@ -791,9 +794,9 @@ static enum test_result test_loop(const u32 *pattern, u32 *address,
 	int i;
 	int j;
 	enum test_result res = TEST_PASSED;
-	u32 *offset, testsize, remaining;
+	u32 offset, testsize, remaining;
 
-	offset = address;
+	offset = (u32)address;
 	remaining = bufsize;
 	while (remaining) {
 		testsize = bufsize > 0x1000000 ? 0x1000000 : bufsize;
@@ -809,7 +812,7 @@ static enum test_result test_loop(const u32 *pattern, u32 *address,
 		__asm__("stmia r1!, {R3-R10}");
 		__asm__("stmia r1!, {R3-R10}");
 		__asm__("stmia r1!, {R3-R10}");
-		__asm__("subs r2, r2, #8");
+		__asm__("subs r2, r2, #128");
 		__asm__("bge loop2");
 		__asm__("pop {R0-R10}");
 
@@ -1388,7 +1391,7 @@ const struct test_desc test[] = {
 	 "Verifies r/w and memcopy(burst for pseudo random value.",
 	 3
 	},
-	{test_freq_pattern, "FrequencySelectivePattern ", "[size]",
+	{test_freq_pattern, "FrequencySelectivePattern", "[size]",
 	 "write & test patterns: Mostly Zero, Mostly One and F/n",
 	 1
 	},
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 42/48] stm32mp1: ram: update loop management in infinite test
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (40 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 41/48] stm32mp1: ram: fix address issue in 2 tests Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 43/48] stm32mp1: ram: reload watchdog during ddr test Patrick Delaunay
                   ` (5 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Reduce verbosity of the infinite tests to avoid CubeMX issue.
test and display loop by 1024*1024 accesses: read or write.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/ram/stm32mp1/stm32mp1_tests.c | 38 +++++++++++++++++++++++------------
 1 file changed, 25 insertions(+), 13 deletions(-)

diff --git a/drivers/ram/stm32mp1/stm32mp1_tests.c b/drivers/ram/stm32mp1/stm32mp1_tests.c
index 691c63c..7356802 100644
--- a/drivers/ram/stm32mp1/stm32mp1_tests.c
+++ b/drivers/ram/stm32mp1/stm32mp1_tests.c
@@ -1241,6 +1241,7 @@ static enum test_result test_read(struct stm32mp1_ddrctl *ctl,
 	u32 *addr;
 	u32 data;
 	u32 loop = 0;
+	int i, size = 1024 * 1024;
 	bool random = false;
 
 	if (get_addr(string, argc, argv, 0, (u32 *)&addr))
@@ -1254,14 +1255,19 @@ static enum test_result test_read(struct stm32mp1_ddrctl *ctl,
 	printf("running at 0x%08x\n", (u32)addr);
 
 	while (1) {
-		if (random)
-			addr = (u32 *)(STM32_DDR_BASE +
-			       (rand() & (STM32_DDR_SIZE - 1) & ~0x3));
-		data = readl(addr);
-		if (test_loop_end(&loop, 0, 1000))
+		for (i = 0; i < size; i++) {
+			if (random)
+				addr = (u32 *)(STM32_DDR_BASE +
+				       (rand() & (STM32_DDR_SIZE - 1) & ~0x3));
+			data = readl(addr);
+		}
+		if (test_loop_end(&loop, 0, 1))
 			break;
 	}
-	sprintf(string, "0x%x: %x", (u32)addr, data);
+	if (random)
+		sprintf(string, "%d loops random", loop);
+	else
+		sprintf(string, "%d loops at 0x%x: %x", loop, (u32)addr, data);
 
 	return TEST_PASSED;
 }
@@ -1280,6 +1286,7 @@ static enum test_result test_write(struct stm32mp1_ddrctl *ctl,
 	u32 *addr;
 	u32 data = 0xA5A5AA55;
 	u32 loop = 0;
+	int i, size = 1024 * 1024;
 	bool random = false;
 
 	if (get_addr(string, argc, argv, 0, (u32 *)&addr))
@@ -1293,16 +1300,21 @@ static enum test_result test_write(struct stm32mp1_ddrctl *ctl,
 	printf("running at 0x%08x\n", (u32)addr);
 
 	while (1) {
-		if (random) {
-			addr = (u32 *)(STM32_DDR_BASE +
-			       (rand() & (STM32_DDR_SIZE - 1) & ~0x3));
-			data = rand();
+		for (i = 0; i < size; i++) {
+			if (random) {
+				addr = (u32 *)(STM32_DDR_BASE +
+				       (rand() & (STM32_DDR_SIZE - 1) & ~0x3));
+				data = rand();
+			}
+			writel(data, addr);
 		}
-		writel(data, addr);
-		if (test_loop_end(&loop, 0, 1000))
+		if (test_loop_end(&loop, 0, 1))
 			break;
 	}
-	sprintf(string, "0x%x: %x", (u32)addr, data);
+	if (random)
+		sprintf(string, "%d loops random", loop);
+	else
+		sprintf(string, "%d loops@0x%x: %x", loop, (u32)addr, data);
 
 	return TEST_PASSED;
 }
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 43/48] stm32mp1: ram: reload watchdog during ddr test
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (41 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 42/48] stm32mp1: ram: update loop management in infinite test Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 44/48] stm32mp1: ram: add pattern parameter in infinite write test Patrick Delaunay
                   ` (4 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Avoid watchdog during infinite DDR test.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/ram/stm32mp1/stm32mp1_tests.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/ram/stm32mp1/stm32mp1_tests.c b/drivers/ram/stm32mp1/stm32mp1_tests.c
index 7356802..f947b5d 100644
--- a/drivers/ram/stm32mp1/stm32mp1_tests.c
+++ b/drivers/ram/stm32mp1/stm32mp1_tests.c
@@ -4,6 +4,7 @@
  */
 #include <common.h>
 #include <console.h>
+#include <watchdog.h>
 #include <asm/io.h>
 #include <linux/log2.h>
 #include "stm32mp1_tests.h"
@@ -154,6 +155,8 @@ static int test_loop_end(u32 *loop, u32 nb_loop, u32 progress)
 		return 1;
 	}
 	printf("loop #%d\n", *loop);
+	WATCHDOG_RESET();
+
 	return 0;
 }
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 44/48] stm32mp1: ram: add pattern parameter in infinite write test
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (42 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 43/48] stm32mp1: ram: reload watchdog during ddr test Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 45/48] stm32mp1: Makefile cleanup Patrick Delaunay
                   ` (3 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add pattern for infinite test_read and test_write, that
allow to change the pattern to test without recompilation;
default pattern is 0xA5A5AA55.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/ram/stm32mp1/stm32mp1_tests.c | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/drivers/ram/stm32mp1/stm32mp1_tests.c b/drivers/ram/stm32mp1/stm32mp1_tests.c
index f947b5d..581ee48 100644
--- a/drivers/ram/stm32mp1/stm32mp1_tests.c
+++ b/drivers/ram/stm32mp1/stm32mp1_tests.c
@@ -1250,13 +1250,18 @@ static enum test_result test_read(struct stm32mp1_ddrctl *ctl,
 	if (get_addr(string, argc, argv, 0, (u32 *)&addr))
 		return TEST_ERROR;
 
+	if (get_pattern(string, argc, argv, 1, &data, 0xA5A5AA55))
+		return TEST_ERROR;
+
 	if ((u32)addr == ADDR_INVALID) {
-		printf("random ");
+		printf("running random\n");
 		random = true;
+	} else {
+		printf("running at 0x%08x with pattern=0x%08x\n",
+		       (u32)addr, data);
+		writel(data, addr);
 	}
 
-	printf("running at 0x%08x\n", (u32)addr);
-
 	while (1) {
 		for (i = 0; i < size; i++) {
 			if (random)
@@ -1287,7 +1292,7 @@ static enum test_result test_write(struct stm32mp1_ddrctl *ctl,
 				   char *string, int argc, char *argv[])
 {
 	u32 *addr;
-	u32 data = 0xA5A5AA55;
+	u32 data;
 	u32 loop = 0;
 	int i, size = 1024 * 1024;
 	bool random = false;
@@ -1295,13 +1300,17 @@ static enum test_result test_write(struct stm32mp1_ddrctl *ctl,
 	if (get_addr(string, argc, argv, 0, (u32 *)&addr))
 		return TEST_ERROR;
 
+	if (get_pattern(string, argc, argv, 1, &data, 0xA5A5AA55))
+		return TEST_ERROR;
+
 	if ((u32)addr == ADDR_INVALID) {
-		printf("random ");
+		printf("running random\n");
 		random = true;
+	} else {
+		printf("running at 0x%08x with pattern 0x%08x\n",
+		       (u32)addr, data);
 	}
 
-	printf("running@0x%08x\n", (u32)addr);
-
 	while (1) {
 		for (i = 0; i < size; i++) {
 			if (random) {
@@ -1435,10 +1444,10 @@ const struct test_desc test[] = {
 	 3
 	},
 	/* need to the the 2 last one (infinite) : skipped for test all */
-	{test_read, "infinite read", "[addr]",
-	 "basic test : infinite read access", 1},
-	{test_write, "infinite write", "[addr]",
-	 "basic test : infinite write access", 1},
+	{test_read, "infinite read", "[addr] [pattern]",
+	 "basic test : infinite read access (random: addr=0xFFFFFFFF)", 2},
+	{test_write, "infinite write", "[addr] [pattern]",
+	 "basic test : infinite write access (random: addr=0xFFFFFFFF)", 2},
 };
 
 const int test_nb = ARRAY_SIZE(test);
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 45/48] stm32mp1: Makefile cleanup
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (43 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 44/48] stm32mp1: ram: add pattern parameter in infinite write test Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 46/48] stm32mp1: clk: remove debug traces Patrick Delaunay
                   ` (2 subsequent siblings)
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Don't compile psci for SPL build.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/mach-stm32mp/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-stm32mp/Makefile b/arch/arm/mach-stm32mp/Makefile
index 7745060..299f9a7 100644
--- a/arch/arm/mach-stm32mp/Makefile
+++ b/arch/arm/mach-stm32mp/Makefile
@@ -15,7 +15,8 @@ obj-$(CONFIG_CMD_STM32KEY) += cmd_stm32key.o
 ifndef CONFIG_STM32MP1_TRUSTED
 obj-$(CONFIG_SYSRESET) += cmd_poweroff.o
 endif
-endif
 obj-$(CONFIG_ARMV7_PSCI) += psci.o
+endif
+
 obj-$(CONFIG_$(SPL_)DM_REGULATOR) += pwr_regulator.o
 obj-$(CONFIG_OF_SYSTEM_SETUP) += fdt.o
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 46/48] stm32mp1: clk: remove debug traces
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (44 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 45/48] stm32mp1: Makefile cleanup Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 47/48] stm32mp1: clk: use gd to store frequency information Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 48/48] MAINTAINERS: update ARM STM STM32MP and STM32MP1 BOARD Patrick Delaunay
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Remove many debug trace.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/clk/clk_stm32mp1.c | 21 ++++-----------------
 1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/drivers/clk/clk_stm32mp1.c b/drivers/clk/clk_stm32mp1.c
index 5806d48..359c2b9 100644
--- a/drivers/clk/clk_stm32mp1.c
+++ b/drivers/clk/clk_stm32mp1.c
@@ -759,9 +759,6 @@ static ulong stm32mp1_clk_get_fixed(struct stm32mp1_clk_priv *priv, int idx)
 		return 0;
 	}
 
-	debug("%s: clk id %d = %x : %ld kHz\n", __func__, idx,
-	      (u32)priv->osc[idx], priv->osc[idx] / 1000);
-
 	return priv->osc[idx];
 }
 
@@ -863,8 +860,6 @@ static ulong  pll_get_fref_ck(struct stm32mp1_clk_priv *priv,
 	src = selr & RCC_SELR_SRC_MASK;
 
 	refclk = stm32mp1_clk_get_fixed(priv, pll[pll_id].refclk[src]);
-	debug("PLL%d : selr=%x refclk = %d kHz\n",
-	      pll_id, selr, (u32)(refclk / 1000));
 
 	return refclk;
 }
@@ -889,9 +884,6 @@ static ulong pll_get_fvco(struct stm32mp1_clk_priv *priv,
 	divm = (cfgr1 & (RCC_PLLNCFGR1_DIVM_MASK)) >> RCC_PLLNCFGR1_DIVM_SHIFT;
 	divn = cfgr1 & RCC_PLLNCFGR1_DIVN_MASK;
 
-	debug("PLL%d : cfgr1=%x fracr=%x DIVN=%d DIVM=%d\n",
-	      pll_id, cfgr1, fracr, divn, divm);
-
 	refclk = pll_get_fref_ck(priv, pll_id);
 
 	/* with FRACV :
@@ -908,7 +900,6 @@ static ulong pll_get_fvco(struct stm32mp1_clk_priv *priv,
 	} else {
 		fvco = (ulong)(refclk * (divn + 1) / (divm + 1));
 	}
-	debug("PLL%d : %s = %ld\n", pll_id, __func__, fvco);
 
 	return fvco;
 }
@@ -921,17 +912,13 @@ static ulong stm32mp1_read_pll_freq(struct stm32mp1_clk_priv *priv,
 	ulong dfout;
 	u32 cfgr2;
 
-	debug("%s(%d, %d)\n", __func__, pll_id, div_id);
 	if (div_id >= _DIV_NB)
 		return 0;
 
 	cfgr2 = readl(priv->base + pll[pll_id].pllxcfgr2);
 	divy = (cfgr2 >> RCC_PLLNCFGR2_SHIFT(div_id)) & RCC_PLLNCFGR2_DIVX_MASK;
 
-	debug("PLL%d : cfgr2=%x DIVY=%d\n", pll_id, cfgr2, divy);
-
 	dfout = pll_get_fvco(priv, pll_id) / (divy + 1);
-	debug("        => dfout = %d kHz\n", (u32)(dfout / 1000));
 
 	return dfout;
 }
@@ -1574,9 +1561,6 @@ static void stgen_config(struct stm32mp1_clk_priv *priv)
 
 		/* need to update gd->arch.timer_rate_hz with new frequency */
 		timer_init();
-		pr_debug("gd->arch.timer_rate_hz = %x\n",
-			 (u32)gd->arch.timer_rate_hz);
-		pr_debug("Tick = %x\n", (u32)(get_ticks()));
 	}
 }
 
@@ -1882,7 +1866,6 @@ static int pll_set_output_rate(struct udevice *dev,
 	if (div > 128)
 		div = 128;
 
-	debug("fvco = %ld, clk_rate = %ld, div=%d\n", fvco, clk_rate, div);
 	/* stop the requested output */
 	clrbits_le32(pllxcr, 0x1 << div_id << RCC_PLLNCR_DIVEN_SHIFT);
 	/* change divider */
@@ -1915,6 +1898,9 @@ static ulong stm32mp1_clk_set_rate(struct clk *clk, unsigned long clk_rate)
 	}
 
 	p = stm32mp1_clk_get_parent(priv, clk->id);
+#ifdef DEBUG
+	debug("%s: parent = %d:%s\n", __func__, p, stm32mp1_clk_parent_name[p]);
+#endif
 	if (p < 0)
 		return -EINVAL;
 
@@ -1932,6 +1918,7 @@ static ulong stm32mp1_clk_set_rate(struct clk *clk, unsigned long clk_rate)
 		return result;
 	}
 #endif
+
 	case _PLL4_Q:
 		/* for LTDC_PX and DSI_PX case */
 		return pll_set_output_rate(clk->dev, _PLL4, _DIV_Q, clk_rate);
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 47/48] stm32mp1: clk: use gd to store frequency information
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (45 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 46/48] stm32mp1: clk: remove debug traces Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  2019-07-30 17:16 ` [U-Boot] [PATCH 48/48] MAINTAINERS: update ARM STM STM32MP and STM32MP1 BOARD Patrick Delaunay
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Use existing gd structure to store frequency information
which can be used in drivers or arch without new request.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 drivers/clk/clk_stm32mp1.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/drivers/clk/clk_stm32mp1.c b/drivers/clk/clk_stm32mp1.c
index 359c2b9..e87307f 100644
--- a/drivers/clk/clk_stm32mp1.c
+++ b/drivers/clk/clk_stm32mp1.c
@@ -15,6 +15,8 @@
 #include <dt-bindings/clock/stm32mp1-clks.h>
 #include <dt-bindings/clock/stm32mp1-clksrc.h>
 
+DECLARE_GLOBAL_DATA_PTR;
+
 #ifndef CONFIG_STM32MP1_TRUSTED
 #if !defined(CONFIG_SPL) || defined(CONFIG_SPL_BUILD)
 /* activate clock tree initialization in the driver */
@@ -2042,22 +2044,22 @@ static int stm32mp1_clk_probe(struct udevice *dev)
 		stm32mp1_clk_dump(priv);
 #endif
 
+	gd->cpu_clk = stm32mp1_clk_get(priv, _CK_MPU);
+	gd->bus_clk = stm32mp1_clk_get(priv, _ACLK);
+	/* DDRPHYC father */
+	gd->mem_clk = stm32mp1_clk_get(priv, _PLL2_R);
 #if defined(CONFIG_DISPLAY_CPUINFO)
 	if (gd->flags & GD_FLG_RELOC) {
 		char buf[32];
 
 		printf("Clocks:\n");
-		printf("- MPU : %s MHz\n",
-		       strmhz(buf, stm32mp1_clk_get(priv, _CK_MPU)));
+		printf("- MPU : %s MHz\n", strmhz(buf, gd->cpu_clk));
 		printf("- MCU : %s MHz\n",
 		       strmhz(buf, stm32mp1_clk_get(priv, _CK_MCU)));
-		printf("- AXI : %s MHz\n",
-		       strmhz(buf, stm32mp1_clk_get(priv, _ACLK)));
+		printf("- AXI : %s MHz\n", strmhz(buf, gd->bus_clk));
 		printf("- PER : %s MHz\n",
 		       strmhz(buf, stm32mp1_clk_get(priv, _CK_PER)));
-		/* DDRPHYC father */
-		printf("- DDR : %s MHz\n",
-		       strmhz(buf, stm32mp1_clk_get(priv, _PLL2_R)));
+		printf("- DDR : %s MHz\n", strmhz(buf, gd->mem_clk));
 	}
 #endif /* CONFIG_DISPLAY_CPUINFO */
 #endif
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [U-Boot] [PATCH 48/48] MAINTAINERS: update ARM STM STM32MP and STM32MP1 BOARD
  2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
                   ` (46 preceding siblings ...)
  2019-07-30 17:16 ` [U-Boot] [PATCH 47/48] stm32mp1: clk: use gd to store frequency information Patrick Delaunay
@ 2019-07-30 17:16 ` Patrick Delaunay
  47 siblings, 0 replies; 49+ messages in thread
From: Patrick Delaunay @ 2019-07-30 17:16 UTC (permalink / raw)
  To: u-boot

Add the missing driver and files for mach-stm32mp / stm32mp1 product.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 MAINTAINERS                   | 19 +++++++++++++++++--
 board/st/stm32mp1/MAINTAINERS |  5 +++--
 2 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index c28251e..8e2a999 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -298,14 +298,19 @@ ARM STM STM32MP
 M:	Patrick Delaunay <patrick.delaunay@st.com>
 M:	Patrice Chotard <patrice.chotard@st.com>
 L:	uboot-stm32 at st-md-mailman.stormreply.com (moderated for non-subscribers)
-T:	git https://gitlab.denx.de/u-boot/custodians/u-boot-stm
+T:	git https://gitlab.denx.de/u-boot/custodians/u-boot-stm.git
 S:	Maintained
 F:	arch/arm/mach-stm32mp/
+F:	drivers/adc/stm32-adc*
 F:	drivers/clk/clk_stm32mp1.c
+F:	drivers/gpio/stm32_gpio.c
+F:	drivers/hwspinlock/stm32_hwspinlock.c
 F:	drivers/i2c/stm32f7_i2c.c
 F:	drivers/mailbox/stm32-ipcc.c
 F:	drivers/misc/stm32mp_fuse.c
+F:	drivers/misc/stm32_rcc.c
 F:	drivers/mmc/stm32_sdmmc2.c
+F:	drivers/mtd/nand/raw/stm32_fmc2_nand.c
 F:	drivers/phy/phy-stm32-usbphyc.c
 F:	drivers/pinctrl/pinctrl_stm32.c
 F:	drivers/power/pmic/stpmic1.c
@@ -313,11 +318,21 @@ F:	drivers/power/regulator/stm32-vrefbuf.c
 F:	drivers/power/regulator/stpmic1.c
 F:	drivers/ram/stm32mp1/
 F:	drivers/remoteproc/stm32_copro.c
-F:	drivers/misc/stm32_rcc.c
 F:	drivers/reset/stm32-reset.c
+F:	drivers/rtc/stm32_rtc.c
+F:	drivers/serial/serial_stm32.*
 F:	drivers/spi/stm32_qspi.c
 F:	drivers/spi/stm32_spi.c
+F:	drivers/video/stm32/stm32_ltdc.c
 F:	drivers/watchdog/stm32mp_wdt.c
+F:	include/dt-bindings/clock/stm32fx-clock.h
+F:	include/dt-bindings/clock/stm32mp1-clks.h
+F:	include/dt-bindings/clock/stm32mp1-clksrc.h
+F:	include/dt-bindings/pinctrl/stm32-pinfunc.h
+F:	include/dt-bindings/reset/stm32mp1-resets.h
+F:	include/stm32_rcc.h
+F:	tools/stm32image.c
+
 
 ARM STM STV0991
 M:	Vikas Manocha <vikas.manocha@st.com>
diff --git a/board/st/stm32mp1/MAINTAINERS b/board/st/stm32mp1/MAINTAINERS
index 3bf4c21..2930947 100644
--- a/board/st/stm32mp1/MAINTAINERS
+++ b/board/st/stm32mp1/MAINTAINERS
@@ -1,9 +1,10 @@
 STM32MP1 BOARD
 M:	Patrick Delaunay <patrick.delaunay@st.com>
 L:	uboot-stm32 at st-md-mailman.stormreply.com (moderated for non-subscribers)
+T:	git https://gitlab.denx.de/u-boot/custodians/u-boot-stm.git
 S:	Maintained
-F:	arch/arm/dts/stm32mp157*
-F:	board/st/stm32mp1
+F:	arch/arm/dts/stm32mp15*
+F:	board/st/stm32mp1/
 F:	configs/stm32mp15_basic_defconfig
 F:	configs/stm32mp15_optee_defconfig
 F:	configs/stm32mp15_trusted_defconfig
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 49+ messages in thread

end of thread, other threads:[~2019-07-30 17:16 UTC | newest]

Thread overview: 49+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-30 17:16 [U-Boot] [PATCH 00/48] stm32mp1 patches for v2019.10 Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 01/48] stm32mp1: cosmetic: remove comment Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 02/48] pinctrl: pinctrl_stm32: cosmetic: Reorder include files Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 03/48] pinctrl: stmfx: update pinconf settings Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 04/48] ARM: dts: stm32mp1: sync device tree with v5.3-rc2 Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 05/48] ARM: dts: stm32mp1: DDR config v1.45 Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 06/48] ARM: dts: stm32mp1: Add iwdg2 support for SPL Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 07/48] ARM: dts: stm32mp1: Add PSCI node access before relocation Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 08/48] ARM: dts: stm32mp1: add ldtc pre-reloc proper in SOC file Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 09/48] ARM: dts: stm32mp1: add key support on DK1/DK2 Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 10/48] ARM: dts: stm32mp1: add pull-up on serial rx of console connected to STLINK Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 11/48] dt-bindings: clock: stm32mp1: support disabled fixed clock Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 12/48] stpmic1: program pmic to keep only the debug unit on Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 13/48] stm32mp1: configs: remove CONFIG_SYS_HZ Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 14/48] stm32mp1: configs: activate CONFIG_SILENT_CONSOLE Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 15/48] stm32mp1: configs: activate PRE_CONSOLE_BUFFER Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 16/48] stm32mp1: configs: deactivate ARMV7_VIRT for basic boot Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 17/48] stm32mp1: configs: select CONFIG_STM32_SERIAL Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 18/48] stm32mp1: configs: Activate DISABLE_CONSOLE Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 19/48] stm32mp1: configs: support MTDPARTS only if needed Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 20/48] stm32mp1: configs: imply CONFIG_OF_LIBFDT_OVERLAY Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 21/48] stm32mp1: configs: Deactivate SPI_FLASH_BAR Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 22/48] stm32mp1: configs: add CONFIG_DM_VIDEO Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 23/48] stm32mp1: configs: add BACKLIGHT_GPIO support Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 24/48] stm32mp1: configs: add CONFIG_CMD_BMP Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 25/48] stm32mp1: configs: add condition to activate WATCHDOG in SPL Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 26/48] stm32mp1: configs: add altbootcmd Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 27/48] stm32mp1: configs: Set bootdelay to 1 Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 28/48] stm32mp1: configs: add spi load support in spl Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 29/48] stm32mp1: board: add environment variable for board id and board rev Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 30/48] stm32mp1: board: enable v1v2_hdmi and v3v3_hdmi regulator on dk2 boot Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 31/48] stm32mp1: board: support of error led on ed1/ev1 board Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 32/48] stm32mp1: board: protect the led function calls Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 33/48] stm32mp1: board: check the boot-source to disable bootdelay Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 34/48] stm32mp1: board: Update the way vdd-supply is retrieved from DT Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 35/48] stm32mp1: board: remove board_check_usb_power when ADC is not activated Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 36/48] stm32mp1: board: cosmetic: cleanup file Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 37/48] mmc: stm32_sdmmc2: reload watchdog Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 38/48] serial: stm32: add Framing error support Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 39/48] serial: stm32: remove unused include Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 40/48] stm32mp1: ram: cosmetic: remove unused prototype Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 41/48] stm32mp1: ram: fix address issue in 2 tests Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 42/48] stm32mp1: ram: update loop management in infinite test Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 43/48] stm32mp1: ram: reload watchdog during ddr test Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 44/48] stm32mp1: ram: add pattern parameter in infinite write test Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 45/48] stm32mp1: Makefile cleanup Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 46/48] stm32mp1: clk: remove debug traces Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 47/48] stm32mp1: clk: use gd to store frequency information Patrick Delaunay
2019-07-30 17:16 ` [U-Boot] [PATCH 48/48] MAINTAINERS: update ARM STM STM32MP and STM32MP1 BOARD Patrick Delaunay

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.