All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] ARM: dra7: Add support for dra76-evm
@ 2017-07-18 19:54 Lokesh Vutla
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
  0 siblings, 1 reply; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:54 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

dra76 family is a high-performance, infotainment application
device, based on OMAP architecture on a 28-nm technology.
This contains most of the subsystems, peripherals that are
available on dra74, dra72 family. This SoC mainly features
Subsystems:
- 2 x Cortex-A15 with max speed of 1.8GHz
- 2 X DSP
- 2 X Cortex-M4 IPU
- ISS
- CAL
- DSS
- VPE
- VIP
Connectivity peripherals:
- 1 USB3.0 and 3 USB2.0 subsystems
- 2 x SATA
- 2 x PCI Express Gen2
- 3-port Gigabit ethernet switch
- 2 x CAN
- MCAN

This series adds support for dra76-evm.

Tested on dra76-evm: http://pastebin.ubuntu.com/25120729/
For usb to work, the following two patches are required:
https://patchwork.kernel.org/patch/9829613/
https://patchwork.kernel.org/patch/9815983/

Lokesh Vutla (8):
  ARM: OMAP2+: board-generic: add support for dra76x family
  ARM: dra76: Add support for device identification
  ARM: dra7: hwmod: Register dra76x specific hwmod
  ARM: dra76: Enable SMP for dra76
  ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains
  ARM: omap2plus_defconfig: Enable LP87565
  ARM: dts: Add support for dra76x family of devices
  ARM: dts: Add support for dra76-evm

 .../devicetree/bindings/arm/omap/omap.txt          |   6 +
 arch/arm/boot/dts/Makefile                         |   3 +-
 arch/arm/boot/dts/dra7-evm-common.dtsi             | 258 ++++++++++++
 arch/arm/boot/dts/dra7-evm.dts                     | 248 +-----------
 arch/arm/boot/dts/dra76-evm.dts                    | 432 +++++++++++++++++++++
 arch/arm/boot/dts/dra76x.dtsi                      |  14 +
 arch/arm/configs/omap2plus_defconfig               |   3 +
 arch/arm/mach-omap2/board-generic.c                |   1 +
 arch/arm/mach-omap2/id.c                           |   9 +
 arch/arm/mach-omap2/omap-smp.c                     |   4 +-
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c          |  11 +-
 arch/arm/mach-omap2/powerdomains7xx_data.c         |  33 +-
 arch/arm/mach-omap2/soc.h                          |   5 +
 13 files changed, 774 insertions(+), 253 deletions(-)
 create mode 100644 arch/arm/boot/dts/dra7-evm-common.dtsi
 create mode 100644 arch/arm/boot/dts/dra76-evm.dts
 create mode 100644 arch/arm/boot/dts/dra76x.dtsi

-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
@ 2017-07-18 19:54   ` Lokesh Vutla
       [not found]     ` <20170718195503.1700-2-lokeshvutla-l0cyMroinI0@public.gmane.org>
  2017-07-18 19:54   ` [PATCH 2/8] ARM: dra76: Add support for device identification Lokesh Vutla
                     ` (6 subsequent siblings)
  7 siblings, 1 reply; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:54 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

Adding board generic support for dra76 family.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++
 arch/arm/mach-omap2/board-generic.c                 | 1 +
 2 files changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
index 8219b2c6bb29..ffe02755a285 100644
--- a/Documentation/devicetree/bindings/arm/omap/omap.txt
+++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
@@ -80,6 +80,9 @@ SoCs:
 - OMAP5432
   compatible = "ti,omap5432", "ti,omap5"
 
+- DRA762
+  compatible = "ti,dra76", "ti,dra7"
+
 - DRA742
   compatible = "ti,dra742", "ti,dra74", "ti,dra7"
 
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
index dc9e34e670a2..e5d9d769a76e 100644
--- a/arch/arm/mach-omap2/board-generic.c
+++ b/arch/arm/mach-omap2/board-generic.c
@@ -312,6 +312,7 @@ MACHINE_END
 
 #ifdef CONFIG_SOC_DRA7XX
 static const char *const dra74x_boards_compat[] __initconst = {
+	"ti,dra76",
 	"ti,am5728",
 	"ti,am5726",
 	"ti,dra742",
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 2/8] ARM: dra76: Add support for device identification
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
  2017-07-18 19:54   ` [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family Lokesh Vutla
@ 2017-07-18 19:54   ` Lokesh Vutla
  2017-07-18 19:54   ` [PATCH 3/8] ARM: dra7: hwmod: Register dra76x specific hwmod Lokesh Vutla
                     ` (5 subsequent siblings)
  7 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:54 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

Add ID code detection for dra76 SoC.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 arch/arm/mach-omap2/id.c  | 9 +++++++++
 arch/arm/mach-omap2/soc.h | 5 +++++
 2 files changed, 14 insertions(+)

diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
index e2274a162b74..16cb1c195fd8 100644
--- a/arch/arm/mach-omap2/id.c
+++ b/arch/arm/mach-omap2/id.c
@@ -663,6 +663,15 @@ void __init dra7xxx_check_revision(void)
 	hawkeye = (idcode >> 12) & 0xffff;
 	rev = (idcode >> 28) & 0xff;
 	switch (hawkeye) {
+	case 0xbb50:
+		switch (rev) {
+		case 0:
+		default:
+			omap_revision = DRA762_REV_ES1_0;
+			break;
+		}
+		break;
+
 	case 0xb990:
 		switch (rev) {
 		case 0:
diff --git a/arch/arm/mach-omap2/soc.h b/arch/arm/mach-omap2/soc.h
index 2aa01c270898..754cd0fc0e7b 100644
--- a/arch/arm/mach-omap2/soc.h
+++ b/arch/arm/mach-omap2/soc.h
@@ -167,6 +167,7 @@ IS_TI_SUBCLASS(816x, 0x816)
 IS_TI_SUBCLASS(814x, 0x814)
 IS_AM_SUBCLASS(335x, 0x335)
 IS_AM_SUBCLASS(437x, 0x437)
+IS_DRA_SUBCLASS(76x, 0x76)
 IS_DRA_SUBCLASS(75x, 0x75)
 IS_DRA_SUBCLASS(72x, 0x72)
 
@@ -185,6 +186,7 @@ IS_DRA_SUBCLASS(72x, 0x72)
 #define soc_is_omap54xx()		0
 #define soc_is_omap543x()		0
 #define soc_is_dra7xx()			0
+#define soc_is_dra76x()			0
 #define soc_is_dra74x()			0
 #define soc_is_dra72x()			0
 
@@ -314,9 +316,11 @@ IS_OMAP_TYPE(3430, 0x3430)
 
 #if defined(CONFIG_SOC_DRA7XX)
 #undef soc_is_dra7xx
+#undef soc_is_dra76x
 #undef soc_is_dra74x
 #undef soc_is_dra72x
 #define soc_is_dra7xx()	is_dra7xx()
+#define soc_is_dra76x()	is_dra76x()
 #define soc_is_dra74x()	is_dra75x()
 #define soc_is_dra72x()	is_dra72x()
 #endif
@@ -386,6 +390,7 @@ IS_OMAP_TYPE(3430, 0x3430)
 #define OMAP5432_REV_ES2_0	(OMAP54XX_CLASS | (0x32 << 16) | (0x20 << 8))
 
 #define DRA7XX_CLASS		0x07000000
+#define DRA762_REV_ES1_0	(DRA7XX_CLASS | (0x62 << 16) | (0x10 << 8))
 #define DRA752_REV_ES1_0	(DRA7XX_CLASS | (0x52 << 16) | (0x10 << 8))
 #define DRA752_REV_ES1_1	(DRA7XX_CLASS | (0x52 << 16) | (0x11 << 8))
 #define DRA752_REV_ES2_0	(DRA7XX_CLASS | (0x52 << 16) | (0x20 << 8))
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 3/8] ARM: dra7: hwmod: Register dra76x specific hwmod
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
  2017-07-18 19:54   ` [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family Lokesh Vutla
  2017-07-18 19:54   ` [PATCH 2/8] ARM: dra76: Add support for device identification Lokesh Vutla
@ 2017-07-18 19:54   ` Lokesh Vutla
  2017-07-18 19:54   ` [PATCH 4/8] ARM: dra76: Enable SMP for dra76 Lokesh Vutla
                     ` (4 subsequent siblings)
  7 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:54 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

Certain IPs are available on dra76 which are not present
either in dra74 or dra72. So register dra76 specific IPs
separately.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index b3abb8d8b2f6..f040244c57e7 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -4070,6 +4070,11 @@ static struct omap_hwmod_ocp_if *dra7xx_gp_hwmod_ocp_ifs[] __initdata = {
 };
 
 /* SoC variant specific hwmod links */
+static struct omap_hwmod_ocp_if *dra76x_hwmod_ocp_ifs[] __initdata = {
+	&dra7xx_l4_per3__usb_otg_ss4,
+	NULL,
+};
+
 static struct omap_hwmod_ocp_if *dra74x_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l4_per3__usb_otg_ss4,
 	NULL,
@@ -4095,12 +4100,14 @@ int __init dra7xx_hwmod_init(void)
 		ret = omap_hwmod_register_links(dra74x_hwmod_ocp_ifs);
 	else if (!ret && soc_is_dra72x())
 		ret = omap_hwmod_register_links(dra72x_hwmod_ocp_ifs);
+	else if (!ret && soc_is_dra76x())
+		ret = omap_hwmod_register_links(dra76x_hwmod_ocp_ifs);
 
 	if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP)
 		ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs);
 
-	/* now for the IPs *NOT* in dra71 */
-	if (!ret && !of_machine_is_compatible("ti,dra718"))
+	/* now for the IPs available only in dra74 and dra72 */
+	if (!ret && !of_machine_is_compatible("ti,dra718") && !soc_is_dra76x())
 		ret = omap_hwmod_register_links(dra74x_dra72x_hwmod_ocp_ifs);
 
 	return ret;
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 4/8] ARM: dra76: Enable SMP for dra76
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
                     ` (2 preceding siblings ...)
  2017-07-18 19:54   ` [PATCH 3/8] ARM: dra7: hwmod: Register dra76x specific hwmod Lokesh Vutla
@ 2017-07-18 19:54   ` Lokesh Vutla
  2017-07-18 19:55   ` [PATCH 5/8] ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains Lokesh Vutla
                     ` (3 subsequent siblings)
  7 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:54 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

smp specific routines are called based on soc_is_*() api in omap-smc.c.
Add soc_is_dra76x() to the condition so that smp specific routines are
called for dra76 SoC.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 arch/arm/mach-omap2/omap-smp.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c
index 33e4953c61a8..69df3620eca5 100644
--- a/arch/arm/mach-omap2/omap-smp.c
+++ b/arch/arm/mach-omap2/omap-smp.c
@@ -342,7 +342,7 @@ static void __init omap4_smp_prepare_cpus(unsigned int max_cpus)
 		c = &omap443x_cfg;
 	else if (soc_is_omap446x())
 		c = &omap446x_cfg;
-	else if (soc_is_dra74x() || soc_is_omap54xx())
+	else if (soc_is_dra74x() || soc_is_omap54xx() || soc_is_dra76x())
 		c = &omap5_cfg;
 
 	if (!c) {
@@ -355,7 +355,7 @@ static void __init omap4_smp_prepare_cpus(unsigned int max_cpus)
 	cfg.startup_addr = c->startup_addr;
 	cfg.wakeupgen_base = omap_get_wakeupgen_base();
 
-	if (soc_is_dra74x() || soc_is_omap54xx()) {
+	if (soc_is_dra74x() || soc_is_omap54xx() || soc_is_dra76x()) {
 		if ((__boot_cpu_mode & MODE_MASK) == HYP_MODE)
 			cfg.startup_addr = omap5_secondary_hyp_startup;
 		omap5_erratum_workaround_801819();
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 5/8] ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
                     ` (3 preceding siblings ...)
  2017-07-18 19:54   ` [PATCH 4/8] ARM: dra76: Enable SMP for dra76 Lokesh Vutla
@ 2017-07-18 19:55   ` Lokesh Vutla
  2017-07-18 19:55   ` [PATCH 6/8] ARM: omap2plus_defconfig: Enable LP87565 Lokesh Vutla
                     ` (2 subsequent siblings)
  7 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:55 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

Custom efuse powerdomain is always on in dra72 ES2.0
and dra76 SoCs. So register it as aon for these SoCs.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 arch/arm/mach-omap2/powerdomains7xx_data.c | 33 +++++++++++++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-omap2/powerdomains7xx_data.c b/arch/arm/mach-omap2/powerdomains7xx_data.c
index eb350a673133..f50963916a21 100644
--- a/arch/arm/mach-omap2/powerdomains7xx_data.c
+++ b/arch/arm/mach-omap2/powerdomains7xx_data.c
@@ -29,6 +29,7 @@
 #include "prcm44xx.h"
 #include "prm7xx.h"
 #include "prcm_mpu7xx.h"
+#include "soc.h"
 
 /* iva_7xx_pwrdm: IVA-HD power domain */
 static struct powerdomain iva_7xx_pwrdm = {
@@ -63,6 +64,14 @@ static struct powerdomain custefuse_7xx_pwrdm = {
 	.flags		  = PWRDM_HAS_LOWPOWERSTATECHANGE,
 };
 
+/* custefuse_aon_7xx_pwrdm: Customer efuse controller power domain */
+static struct powerdomain custefuse_aon_7xx_pwrdm = {
+	.name		  = "custefuse_pwrdm",
+	.prcm_offs	  = DRA7XX_PRM_CUSTEFUSE_INST,
+	.prcm_partition	  = DRA7XX_PRM_PARTITION,
+	.pwrsts		  = PWRSTS_ON,
+};
+
 /* ipu_7xx_pwrdm: Audio back end power domain */
 static struct powerdomain ipu_7xx_pwrdm = {
 	.name		  = "ipu_pwrdm",
@@ -350,7 +359,6 @@ static struct powerdomain eve1_7xx_pwrdm = {
 static struct powerdomain *powerdomains_dra7xx[] __initdata = {
 	&iva_7xx_pwrdm,
 	&rtc_7xx_pwrdm,
-	&custefuse_7xx_pwrdm,
 	&ipu_7xx_pwrdm,
 	&dss_7xx_pwrdm,
 	&l4per_7xx_pwrdm,
@@ -374,9 +382,32 @@ static struct powerdomain *powerdomains_dra7xx[] __initdata = {
 	NULL
 };
 
+static struct powerdomain *powerdomains_dra76x[] __initdata = {
+	&custefuse_aon_7xx_pwrdm,
+	NULL
+};
+
+static struct powerdomain *powerdomains_dra74x[] __initdata = {
+	&custefuse_7xx_pwrdm,
+	NULL
+};
+
+static struct powerdomain *powerdomains_dra72x[] __initdata = {
+	&custefuse_aon_7xx_pwrdm,
+	NULL
+};
+
 void __init dra7xx_powerdomains_init(void)
 {
 	pwrdm_register_platform_funcs(&omap4_pwrdm_operations);
 	pwrdm_register_pwrdms(powerdomains_dra7xx);
+
+	if (soc_is_dra76x())
+		pwrdm_register_pwrdms(powerdomains_dra76x);
+	else if (soc_is_dra74x())
+		pwrdm_register_pwrdms(powerdomains_dra74x);
+	else if (soc_is_dra72x())
+		pwrdm_register_pwrdms(powerdomains_dra72x);
+
 	pwrdm_complete_init();
 }
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 6/8] ARM: omap2plus_defconfig: Enable LP87565
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
                     ` (4 preceding siblings ...)
  2017-07-18 19:55   ` [PATCH 5/8] ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains Lokesh Vutla
@ 2017-07-18 19:55   ` Lokesh Vutla
  2017-07-18 19:55   ` [PATCH 7/8] ARM: dts: Add support for dra76x family of devices Lokesh Vutla
  2017-07-18 19:55   ` [PATCH 8/8] ARM: dts: Add support for dra76-evm Lokesh Vutla
  7 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:55 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

dra76-evm has LP87565. Enable it in omap2plus_defconfig.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 arch/arm/configs/omap2plus_defconfig | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index a120ae816260..0079bbdff7b3 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -250,6 +250,7 @@ CONFIG_DEBUG_GPIO=y
 CONFIG_GPIO_SYSFS=y
 CONFIG_GPIO_PCA953X=m
 CONFIG_GPIO_PCF857X=y
+CONFIG_GPIO_LP87565=y
 CONFIG_GPIO_PALMAS=y
 CONFIG_GPIO_TWL4030=y
 CONFIG_W1=m
@@ -284,6 +285,7 @@ CONFIG_MFD_TI_AM335X_TSCADC=m
 CONFIG_MFD_PALMAS=y
 CONFIG_MFD_TPS65217=y
 CONFIG_MFD_TI_LP873X=y
+CONFIG_MFD_TI_LP87565=y
 CONFIG_MFD_TPS65218=y
 CONFIG_MFD_TPS65910=y
 CONFIG_TWL6040_CORE=y
@@ -292,6 +294,7 @@ CONFIG_REGULATOR_GPIO=y
 CONFIG_REGULATOR_LM363X=m
 CONFIG_REGULATOR_LP872X=y
 CONFIG_REGULATOR_LP873X=y
+CONFIG_REGULATOR_LP87565=y
 CONFIG_REGULATOR_PALMAS=y
 CONFIG_REGULATOR_PBIAS=y
 CONFIG_REGULATOR_TI_ABB=y
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 7/8] ARM: dts: Add support for dra76x family of devices
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
                     ` (5 preceding siblings ...)
  2017-07-18 19:55   ` [PATCH 6/8] ARM: omap2plus_defconfig: Enable LP87565 Lokesh Vutla
@ 2017-07-18 19:55   ` Lokesh Vutla
  2017-07-18 19:55   ` [PATCH 8/8] ARM: dts: Add support for dra76-evm Lokesh Vutla
  7 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:55 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

dra76 family is a high-performance, infotainment application
device, based on OMAP architecture on a 28-nm technology.
This contains most of the subsystems, peripherals that are
available on dra74, dra72 family. This SoC mainly features
Subsystems:
- 2 x Cortex-A15 with max speed of 1.8GHz
- 2 X DSP
- 2 X Cortex-M4 IPU
- ISS
- CAL
- DSS
- VPE
- VIP
Connectivity peripherals:
- 1 USB3.0 and 3 USB2.0 subsystems
- 2 x SATA
- 2 x PCI Express Gen2
- 3-port Gigabit ethernet switch
- 2 x CAN
- MCAN

Adding basic dts support for DRA76 family while reusing the
data available in dra7.dtsi, dra74x.dtsi.

Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 arch/arm/boot/dts/dra76x.dtsi | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 arch/arm/boot/dts/dra76x.dtsi

diff --git a/arch/arm/boot/dts/dra76x.dtsi b/arch/arm/boot/dts/dra76x.dtsi
new file mode 100644
index 000000000000..f33bcab005ea
--- /dev/null
+++ b/arch/arm/boot/dts/dra76x.dtsi
@@ -0,0 +1,14 @@
+/*
+ * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "dra74x.dtsi"
+
+/ {
+	compatible = "ti,dra76", "ti,dra7";
+
+};
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* [PATCH 8/8] ARM: dts: Add support for dra76-evm
       [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
                     ` (6 preceding siblings ...)
  2017-07-18 19:55   ` [PATCH 7/8] ARM: dts: Add support for dra76x family of devices Lokesh Vutla
@ 2017-07-18 19:55   ` Lokesh Vutla
       [not found]     ` <20170718195503.1700-9-lokeshvutla-l0cyMroinI0@public.gmane.org>
  7 siblings, 1 reply; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-18 19:55 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri, Lokesh Vutla

dra76-evm is a board based on TI's dra76 processor targeting
for infotainment systems. Adding support for this platform.

dra76-evm and dra7-evm has a similar layout except with few differences.
So create a dra7-evm-common.dtsi with similarities on dra76-evm and
dra7-evm. Include this common dtsi in both dra7-evm.dts and dra76-evm.dts

Signed-off-by: Keerthy <j-keerthy-l0cyMroinI0@public.gmane.org>
Signed-off-by: Vignesh R <vigneshr-l0cyMroinI0@public.gmane.org>
Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
---
 .../devicetree/bindings/arm/omap/omap.txt          |   3 +
 arch/arm/boot/dts/Makefile                         |   3 +-
 arch/arm/boot/dts/dra7-evm-common.dtsi             | 258 ++++++++++++
 arch/arm/boot/dts/dra7-evm.dts                     | 248 +-----------
 arch/arm/boot/dts/dra76-evm.dts                    | 432 +++++++++++++++++++++
 5 files changed, 696 insertions(+), 248 deletions(-)
 create mode 100644 arch/arm/boot/dts/dra7-evm-common.dtsi
 create mode 100644 arch/arm/boot/dts/dra76-evm.dts

diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
index ffe02755a285..f6561938bdf2 100644
--- a/Documentation/devicetree/bindings/arm/omap/omap.txt
+++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
@@ -187,6 +187,9 @@ Boards:
 - AM5718 IDK
   compatible = "ti,am5718-idk", "ti,am5718", "ti,dra7"
 
+- DRA762 EVM:  Software Development Board for DRA762
+  compatible = "ti,dra76-evm", "ti,dra76", "ti,dra7"
+
 - DRA742 EVM:  Software Development Board for DRA742
   compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7"
 
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 4b17f35dc9a7..d563d91a18e3 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -657,7 +657,8 @@ dtb-$(CONFIG_SOC_DRA7XX) += \
 	dra7-evm.dtb \
 	dra72-evm.dtb \
 	dra72-evm-revc.dtb \
-	dra71-evm.dtb
+	dra71-evm.dtb \
+	dra76-evm.dtb
 dtb-$(CONFIG_ARCH_ORION5X) += \
 	orion5x-kuroboxpro.dtb \
 	orion5x-lacie-d2-network.dtb \
diff --git a/arch/arm/boot/dts/dra7-evm-common.dtsi b/arch/arm/boot/dts/dra7-evm-common.dtsi
new file mode 100644
index 000000000000..343e95f9a001
--- /dev/null
+++ b/arch/arm/boot/dts/dra7-evm-common.dtsi
@@ -0,0 +1,258 @@
+/*
+ * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/clk/ti-dra7-atl.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+	chosen {
+		stdout-path = &uart1;
+	};
+
+	extcon_usb1: extcon_usb1 {
+		compatible = "linux,extcon-usb-gpio";
+		id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>;
+	};
+
+	sound0: sound0 {
+		compatible = "simple-audio-card";
+		simple-audio-card,name = "DRA7xx-EVM";
+		simple-audio-card,widgets =
+			"Headphone", "Headphone Jack",
+			"Line", "Line Out",
+			"Microphone", "Mic Jack",
+			"Line", "Line In";
+		simple-audio-card,routing =
+			"Headphone Jack",	"HPLOUT",
+			"Headphone Jack",	"HPROUT",
+			"Line Out",		"LLOUT",
+			"Line Out",		"RLOUT",
+			"MIC3L",		"Mic Jack",
+			"MIC3R",		"Mic Jack",
+			"Mic Jack",		"Mic Bias",
+			"LINE1L",		"Line In",
+			"LINE1R",		"Line In";
+		simple-audio-card,format = "dsp_b";
+		simple-audio-card,bitclock-master = <&sound0_master>;
+		simple-audio-card,frame-master = <&sound0_master>;
+		simple-audio-card,bitclock-inversion;
+
+		sound0_master: simple-audio-card,cpu {
+			sound-dai = <&mcasp3>;
+			system-clock-frequency = <5644800>;
+		};
+
+		simple-audio-card,codec {
+			sound-dai = <&tlv320aic3106>;
+			clocks = <&atl_clkin2_ck>;
+		};
+	};
+
+	leds {
+		compatible = "gpio-leds";
+		led0 {
+			label = "dra7:usr1";
+			gpios = <&pcf_lcd 4 GPIO_ACTIVE_LOW>;
+			default-state = "off";
+		};
+
+		led1 {
+			label = "dra7:usr2";
+			gpios = <&pcf_lcd 5 GPIO_ACTIVE_LOW>;
+			default-state = "off";
+		};
+
+		led2 {
+			label = "dra7:usr3";
+			gpios = <&pcf_lcd 6 GPIO_ACTIVE_LOW>;
+			default-state = "off";
+		};
+
+		led3 {
+			label = "dra7:usr4";
+			gpios = <&pcf_lcd 7 GPIO_ACTIVE_LOW>;
+			default-state = "off";
+		};
+	};
+
+	gpio_keys {
+		compatible = "gpio-keys";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		autorepeat;
+
+		USER1 {
+			label = "btnUser1";
+			linux,code = <BTN_0>;
+			gpios = <&pcf_lcd 2 GPIO_ACTIVE_LOW>;
+		};
+
+		USER2 {
+			label = "btnUser2";
+			linux,code = <BTN_1>;
+			gpios = <&pcf_lcd 3 GPIO_ACTIVE_LOW>;
+		};
+	};
+};
+
+&i2c3 {
+	status = "okay";
+	clock-frequency = <400000>;
+};
+
+&mcspi1 {
+	status = "okay";
+};
+
+&mcspi2 {
+	status = "okay";
+};
+
+&uart1 {
+	status = "okay";
+	interrupts-extended = <&crossbar_mpu GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
+			      <&dra7_pmx_core 0x3e0>;
+};
+
+&uart2 {
+	status = "okay";
+};
+
+&uart3 {
+	status = "okay";
+};
+
+&qspi {
+	status = "okay";
+
+	spi-max-frequency = <76800000>;
+	m25p80@0 {
+		compatible = "s25fl256s1";
+		spi-max-frequency = <76800000>;
+		reg = <0>;
+		spi-tx-bus-width = <1>;
+		spi-rx-bus-width = <4>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		/* MTD partition table.
+		 * The ROM checks the first four physical blocks
+		 * for a valid file to boot and the flash here is
+		 * 64KiB block size.
+		 */
+		partition@0 {
+			label = "QSPI.SPL";
+			reg = <0x00000000 0x000010000>;
+		};
+		partition@1 {
+			label = "QSPI.SPL.backup1";
+			reg = <0x00010000 0x00010000>;
+		};
+		partition@2 {
+			label = "QSPI.SPL.backup2";
+			reg = <0x00020000 0x00010000>;
+		};
+		partition@3 {
+			label = "QSPI.SPL.backup3";
+			reg = <0x00030000 0x00010000>;
+		};
+		partition@4 {
+			label = "QSPI.u-boot";
+			reg = <0x00040000 0x00100000>;
+		};
+		partition@5 {
+			label = "QSPI.u-boot-spl-os";
+			reg = <0x00140000 0x00080000>;
+		};
+		partition@6 {
+			label = "QSPI.u-boot-env";
+			reg = <0x001c0000 0x00010000>;
+		};
+		partition@7 {
+			label = "QSPI.u-boot-env.backup1";
+			reg = <0x001d0000 0x0010000>;
+		};
+		partition@8 {
+			label = "QSPI.kernel";
+			reg = <0x001e0000 0x0800000>;
+		};
+		partition@9 {
+			label = "QSPI.file-system";
+			reg = <0x009e0000 0x01620000>;
+		};
+	};
+};
+
+&omap_dwc3_1 {
+	extcon = <&extcon_usb1>;
+};
+
+&usb1 {
+	dr_mode = "otg";
+	extcon = <&extcon_usb1>;
+};
+
+&usb2 {
+	dr_mode = "host";
+};
+
+&atl {
+	assigned-clocks = <&abe_dpll_sys_clk_mux>,
+			  <&atl_gfclk_mux>,
+			  <&dpll_abe_ck>,
+			  <&dpll_abe_m2x2_ck>,
+			  <&atl_clkin2_ck>;
+	assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>;
+	assigned-clock-rates = <0>, <0>, <180633600>, <361267200>, <5644800>;
+
+	status = "okay";
+
+	atl2 {
+		bws = <DRA7_ATL_WS_MCASP2_FSX>;
+		aws = <DRA7_ATL_WS_MCASP3_FSX>;
+	};
+};
+
+&mcasp3 {
+	#sound-dai-cells = <0>;
+
+	assigned-clocks = <&mcasp3_ahclkx_mux>;
+	assigned-clock-parents = <&atl_clkin2_ck>;
+
+	status = "okay";
+
+	op-mode = <0>;          /* MCASP_IIS_MODE */
+	tdm-slots = <2>;
+	/* 4 serializer */
+	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
+		1 2 0 0
+	>;
+	tx-num-evt = <32>;
+	rx-num-evt = <32>;
+};
+
+&mailbox5 {
+	status = "okay";
+	mbox_ipu1_ipc3x: mbox_ipu1_ipc3x {
+		status = "okay";
+	};
+	mbox_dsp1_ipc3x: mbox_dsp1_ipc3x {
+		status = "okay";
+	};
+};
+
+&mailbox6 {
+	status = "okay";
+	mbox_ipu2_ipc3x: mbox_ipu2_ipc3x {
+		status = "okay";
+	};
+	mbox_dsp2_ipc3x: mbox_dsp2_ipc3x {
+		status = "okay";
+	};
+};
diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
index f47fc4daf062..c3009bda62e3 100644
--- a/arch/arm/boot/dts/dra7-evm.dts
+++ b/arch/arm/boot/dts/dra7-evm.dts
@@ -8,9 +8,7 @@
 /dts-v1/;
 
 #include "dra74x.dtsi"
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/clk/ti-dra7-atl.h>
-#include <dt-bindings/input/input.h>
+#include "dra7-evm-common.dtsi"
 
 / {
 	model = "TI DRA742";
@@ -21,10 +19,6 @@
 		reg = <0x0 0x80000000 0x0 0x60000000>; /* 1536 MB */
 	};
 
-	chosen {
-		stdout-path = &uart1;
-	};
-
 	evm_3v3_sd: fixedregulator-sd {
 		compatible = "regulator-fixed";
 		regulator-name = "evm_3v3_sd";
@@ -51,11 +45,6 @@
 		regulator-max-microvolt = <1800000>;
 	};
 
-	extcon_usb1: extcon_usb1 {
-		compatible = "linux,extcon-usb-gpio";
-		id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>;
-	};
-
 	extcon_usb2: extcon_usb2 {
 		compatible = "linux,extcon-usb-gpio";
 		id-gpio = <&pcf_gpio_21 2 GPIO_ACTIVE_HIGH>;
@@ -73,85 +62,6 @@
 		gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
 	};
 
-	sound0: sound0 {
-		compatible = "simple-audio-card";
-		simple-audio-card,name = "DRA7xx-EVM";
-		simple-audio-card,widgets =
-			"Headphone", "Headphone Jack",
-			"Line", "Line Out",
-			"Microphone", "Mic Jack",
-			"Line", "Line In";
-		simple-audio-card,routing =
-			"Headphone Jack",	"HPLOUT",
-			"Headphone Jack",	"HPROUT",
-			"Line Out",		"LLOUT",
-			"Line Out",		"RLOUT",
-			"MIC3L",		"Mic Jack",
-			"MIC3R",		"Mic Jack",
-			"Mic Jack",		"Mic Bias",
-			"LINE1L",		"Line In",
-			"LINE1R",		"Line In";
-		simple-audio-card,format = "dsp_b";
-		simple-audio-card,bitclock-master = <&sound0_master>;
-		simple-audio-card,frame-master = <&sound0_master>;
-		simple-audio-card,bitclock-inversion;
-
-		sound0_master: simple-audio-card,cpu {
-			sound-dai = <&mcasp3>;
-			system-clock-frequency = <5644800>;
-		};
-
-		simple-audio-card,codec {
-			sound-dai = <&tlv320aic3106>;
-			clocks = <&atl_clkin2_ck>;
-		};
-	};
-
-	leds {
-		compatible = "gpio-leds";
-		led0 {
-			label = "dra7:usr1";
-			gpios = <&pcf_lcd 4 GPIO_ACTIVE_LOW>;
-			default-state = "off";
-		};
-
-		led1 {
-			label = "dra7:usr2";
-			gpios = <&pcf_lcd 5 GPIO_ACTIVE_LOW>;
-			default-state = "off";
-		};
-
-		led2 {
-			label = "dra7:usr3";
-			gpios = <&pcf_lcd 6 GPIO_ACTIVE_LOW>;
-			default-state = "off";
-		};
-
-		led3 {
-			label = "dra7:usr4";
-			gpios = <&pcf_lcd 7 GPIO_ACTIVE_LOW>;
-			default-state = "off";
-		};
-	};
-
-	gpio_keys {
-		compatible = "gpio-keys";
-		#address-cells = <1>;
-		#size-cells = <0>;
-		autorepeat;
-
-		USER1 {
-			label = "btnUser1";
-			linux,code = <BTN_0>;
-			gpios = <&pcf_lcd 2 GPIO_ACTIVE_LOW>;
-		};
-
-		USER2 {
-			label = "btnUser2";
-			linux,code = <BTN_1>;
-			gpios = <&pcf_lcd 3 GPIO_ACTIVE_LOW>;
-		};
-	};
 };
 
 &dra7_pmx_core {
@@ -406,33 +316,6 @@
 	};
 };
 
-&i2c3 {
-	status = "okay";
-	clock-frequency = <400000>;
-};
-
-&mcspi1 {
-	status = "okay";
-};
-
-&mcspi2 {
-	status = "okay";
-};
-
-&uart1 {
-	status = "okay";
-	interrupts-extended = <&crossbar_mpu GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
-			      <&dra7_pmx_core 0x3e0>;
-};
-
-&uart2 {
-	status = "okay";
-};
-
-&uart3 {
-	status = "okay";
-};
-
 &mmc1 {
 	status = "okay";
 	pinctrl-names = "default";
@@ -459,84 +342,10 @@
 	cpu0-supply = <&smps123_reg>;
 };
 
-&qspi {
-	status = "okay";
-
-	spi-max-frequency = <76800000>;
-	m25p80@0 {
-		compatible = "s25fl256s1";
-		spi-max-frequency = <76800000>;
-		reg = <0>;
-		spi-tx-bus-width = <1>;
-		spi-rx-bus-width = <4>;
-		#address-cells = <1>;
-		#size-cells = <1>;
-
-		/* MTD partition table.
-		 * The ROM checks the first four physical blocks
-		 * for a valid file to boot and the flash here is
-		 * 64KiB block size.
-		 */
-		partition@0 {
-			label = "QSPI.SPL";
-			reg = <0x00000000 0x000010000>;
-		};
-		partition@1 {
-			label = "QSPI.SPL.backup1";
-			reg = <0x00010000 0x00010000>;
-		};
-		partition@2 {
-			label = "QSPI.SPL.backup2";
-			reg = <0x00020000 0x00010000>;
-		};
-		partition@3 {
-			label = "QSPI.SPL.backup3";
-			reg = <0x00030000 0x00010000>;
-		};
-		partition@4 {
-			label = "QSPI.u-boot";
-			reg = <0x00040000 0x00100000>;
-		};
-		partition@5 {
-			label = "QSPI.u-boot-spl-os";
-			reg = <0x00140000 0x00080000>;
-		};
-		partition@6 {
-			label = "QSPI.u-boot-env";
-			reg = <0x001c0000 0x00010000>;
-		};
-		partition@7 {
-			label = "QSPI.u-boot-env.backup1";
-			reg = <0x001d0000 0x0010000>;
-		};
-		partition@8 {
-			label = "QSPI.kernel";
-			reg = <0x001e0000 0x0800000>;
-		};
-		partition@9 {
-			label = "QSPI.file-system";
-			reg = <0x009e0000 0x01620000>;
-		};
-	};
-};
-
-&omap_dwc3_1 {
-	extcon = <&extcon_usb1>;
-};
-
 &omap_dwc3_2 {
 	extcon = <&extcon_usb2>;
 };
 
-&usb1 {
-	dr_mode = "otg";
-	extcon = <&extcon_usb1>;
-};
-
-&usb2 {
-	dr_mode = "host";
-};
-
 &elm {
 	status = "okay";
 };
@@ -665,58 +474,3 @@
 	pinctrl-1 = <&dcan1_pins_sleep>;
 	pinctrl-2 = <&dcan1_pins_default>;
 };
-
-&atl {
-	assigned-clocks = <&abe_dpll_sys_clk_mux>,
-			  <&atl_gfclk_mux>,
-			  <&dpll_abe_ck>,
-			  <&dpll_abe_m2x2_ck>,
-			  <&atl_clkin2_ck>;
-	assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>;
-	assigned-clock-rates = <0>, <0>, <180633600>, <361267200>, <5644800>;
-
-	status = "okay";
-
-	atl2 {
-		bws = <DRA7_ATL_WS_MCASP2_FSX>;
-		aws = <DRA7_ATL_WS_MCASP3_FSX>;
-	};
-};
-
-&mcasp3 {
-	#sound-dai-cells = <0>;
-
-	assigned-clocks = <&mcasp3_ahclkx_mux>;
-	assigned-clock-parents = <&atl_clkin2_ck>;
-
-	status = "okay";
-
-	op-mode = <0>;          /* MCASP_IIS_MODE */
-	tdm-slots = <2>;
-	/* 4 serializer */
-	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
-		1 2 0 0
-	>;
-	tx-num-evt = <32>;
-	rx-num-evt = <32>;
-};
-
-&mailbox5 {
-	status = "okay";
-	mbox_ipu1_ipc3x: mbox_ipu1_ipc3x {
-		status = "okay";
-	};
-	mbox_dsp1_ipc3x: mbox_dsp1_ipc3x {
-		status = "okay";
-	};
-};
-
-&mailbox6 {
-	status = "okay";
-	mbox_ipu2_ipc3x: mbox_ipu2_ipc3x {
-		status = "okay";
-	};
-	mbox_dsp2_ipc3x: mbox_dsp2_ipc3x {
-		status = "okay";
-	};
-};
diff --git a/arch/arm/boot/dts/dra76-evm.dts b/arch/arm/boot/dts/dra76-evm.dts
new file mode 100644
index 000000000000..09af67ce8a50
--- /dev/null
+++ b/arch/arm/boot/dts/dra76-evm.dts
@@ -0,0 +1,432 @@
+/*
+ * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+/dts-v1/;
+
+#include "dra76x.dtsi"
+#include "dra7-evm-common.dtsi"
+#include <dt-bindings/net/ti-dp83867.h>
+
+/ {
+	model = "TI DRA762 EVM";
+	compatible = "ti,dra76-evm", "ti,dra76", "ti,dra7";
+
+	memory@0 {
+		device_type = "memory";
+		reg = <0x0 0x80000000 0x0 0x80000000>;
+	};
+
+	vsys_12v0: fixedregulator-vsys12v0 {
+		/* main supply */
+		compatible = "regulator-fixed";
+		regulator-name = "vsys_12v0";
+		regulator-min-microvolt = <12000000>;
+		regulator-max-microvolt = <12000000>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	vsys_5v0: fixedregulator-vsys5v0 {
+		/* Output of Cntlr B of TPS43351-Q1 on dra76-evm */
+		compatible = "regulator-fixed";
+		regulator-name = "vsys_5v0";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		vin-supply = <&vsys_12v0>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	vsys_3v3: fixedregulator-vsys3v3 {
+		/* Output of Cntlr A of TPS43351-Q1 on dra76-evm */
+		compatible = "regulator-fixed";
+		regulator-name = "vsys_3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		vin-supply = <&vsys_12v0>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	vio_3v3: fixedregulator-vio_3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vio_3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		vin-supply = <&vsys_3v3>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	vio_3v3_sd: fixedregulator-sd {
+		compatible = "regulator-fixed";
+		regulator-name = "vio_3v3_sd";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		vin-supply = <&vio_3v3>;
+		enable-active-high;
+		gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
+	};
+
+	vio_1v8: fixedregulator-vio_1v8 {
+		compatible = "regulator-fixed";
+		regulator-name = "vio_1v8";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		vin-supply = <&smps5_reg>;
+	};
+
+	vtt_fixed: fixedregulator-vtt {
+		compatible = "regulator-fixed";
+		regulator-name = "vtt_fixed";
+		regulator-min-microvolt = <1350000>;
+		regulator-max-microvolt = <1350000>;
+		vin-supply = <&vsys_3v3>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	aic_dvdd: fixedregulator-aic_dvdd {
+		/* TPS77018DBVT */
+		compatible = "regulator-fixed";
+		regulator-name = "aic_dvdd";
+		vin-supply = <&vio_3v3>;
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
+};
+
+&dra7_pmx_core {
+	mmc1_pins_default: mmc1_pins_default {
+		pinctrl-single,pins = <
+			DRA7XX_CORE_IOPAD(0x376c, PIN_INPUT | MUX_MODE14)	/* mmc1sdcd.gpio219 */
+			DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */
+			DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */
+			DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */
+			DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */
+			DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */
+			DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */
+		>;
+	};
+
+	mmc1_pins_sdr12: pinmux_mmc1_sdr12_pins {
+		pinctrl-single,pins = <
+			DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_clk.clk */
+			DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_cmd.cmd */
+			DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat0.dat0 */
+			DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat1.dat1 */
+			DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat2.dat2 */
+			DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat3.dat3 */
+		>;
+	};
+
+	mmc2_pins_default: mmc2_pins_default {
+		pinctrl-single,pins = <
+			DRA7XX_CORE_IOPAD(0x349c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */
+			DRA7XX_CORE_IOPAD(0x34b0, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */
+			DRA7XX_CORE_IOPAD(0x34a0, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */
+			DRA7XX_CORE_IOPAD(0x34a4, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */
+			DRA7XX_CORE_IOPAD(0x34a8, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */
+			DRA7XX_CORE_IOPAD(0x34ac, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */
+			DRA7XX_CORE_IOPAD(0x348c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */
+			DRA7XX_CORE_IOPAD(0x3490, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */
+			DRA7XX_CORE_IOPAD(0x3494, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */
+			DRA7XX_CORE_IOPAD(0x3498, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */
+		>;
+	};
+};
+
+&i2c1 {
+	status = "okay";
+	clock-frequency = <400000>;
+
+	tps65917: tps65917@58 {
+		compatible = "ti,tps65917";
+		reg = <0x58>;
+		ti,system-power-controller;
+		interrupt-controller;
+		#interrupt-cells = <2>;
+
+		tps65917_pmic {
+			compatible = "ti,tps65917-pmic";
+
+			smps12-in-supply = <&vsys_3v3>;
+			smps3-in-supply = <&vsys_3v3>;
+			smps4-in-supply = <&vsys_3v3>;
+			smps5-in-supply = <&vsys_3v3>;
+			ldo1-in-supply = <&vsys_3v3>;
+			ldo2-in-supply = <&vsys_3v3>;
+			ldo3-in-supply = <&vsys_5v0>;
+			ldo4-in-supply = <&vsys_5v0>;
+			ldo5-in-supply = <&vsys_3v3>;
+
+			tps65917_regulators: regulators {
+				smps12_reg: smps12 {
+					/* VDD_DSPEVE */
+					regulator-name = "smps12";
+					regulator-min-microvolt = <850000>;
+					regulator-max-microvolt = <1250000>;
+					regulator-always-on;
+					regulator-boot-on;
+				};
+
+				smps3_reg: smps3 {
+					/* VDD_CORE */
+					regulator-name = "smps3";
+					regulator-min-microvolt = <850000>;
+					regulator-max-microvolt = <1250000>;
+					regulator-boot-on;
+					regulator-always-on;
+				};
+
+				smps4_reg: smps4 {
+					/* VDD_IVA */
+					regulator-name = "smps4";
+					regulator-min-microvolt = <850000>;
+					regulator-max-microvolt = <1250000>;
+					regulator-always-on;
+					regulator-boot-on;
+				};
+
+				smps5_reg: smps5 {
+					/* VDDS1V8 */
+					regulator-name = "smps5";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <1800000>;
+					regulator-boot-on;
+					regulator-always-on;
+				};
+
+				ldo1_reg: ldo1 {
+					/* LDO1_OUT --> VDA_PHY1_1V8  */
+					regulator-name = "ldo1";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <1800000>;
+					regulator-always-on;
+					regulator-boot-on;
+					regulator-allow-bypass;
+				};
+
+				ldo2_reg: ldo2 {
+					/* LDO2_OUT --> VDA_PHY2_1V8 */
+					regulator-name = "ldo2";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <1800000>;
+					regulator-allow-bypass;
+					regulator-always-on;
+				};
+
+				ldo3_reg: ldo3 {
+					/* VDA_USB_3V3 */
+					regulator-name = "ldo3";
+					regulator-min-microvolt = <3300000>;
+					regulator-max-microvolt = <3300000>;
+					regulator-boot-on;
+					regulator-always-on;
+				};
+
+				ldo5_reg: ldo5 {
+					/* VDDA_1V8_PLL */
+					regulator-name = "ldo5";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <1800000>;
+					regulator-always-on;
+					regulator-boot-on;
+				};
+
+				ldo4_reg: ldo4 {
+					/* VDD_SDIO_DV */
+					regulator-name = "ldo4";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <3300000>;
+					regulator-boot-on;
+					regulator-always-on;
+				};
+			};
+		};
+
+		tps65917_power_button {
+			compatible = "ti,palmas-pwrbutton";
+			interrupt-parent = <&tps65917>;
+			interrupts = <1 IRQ_TYPE_NONE>;
+			wakeup-source;
+			ti,palmas-long-press-seconds = <6>;
+		};
+	};
+
+	lp87565: lp87565@60 {
+		compatible = "ti,lp87565-q1";
+		reg = <0x60>;
+
+		buck10-in-supply =<&vsys_3v3>;
+		buck23-in-supply =<&vsys_3v3>;
+
+		regulators: regulators {
+			buck10_reg: buck10 {
+				/*VDD_MPU*/
+				regulator-name = "buck10";
+				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1250000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			buck23_reg: buck23 {
+				/* VDD_GPU*/
+				regulator-name = "buck23";
+				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1250000>;
+				regulator-boot-on;
+				regulator-always-on;
+			};
+		};
+	};
+
+	pcf_lcd: pcf8757@20 {
+		compatible = "ti,pcf8575", "nxp,pcf8575";
+		reg = <0x20>;
+		gpio-controller;
+		#gpio-cells = <2>;
+		interrupt-controller;
+		#interrupt-cells = <2>;
+		interrupt-parent = <&gpio1>;
+		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
+	};
+
+	pcf_gpio_21: pcf8757@21 {
+		compatible = "ti,pcf8575", "nxp,pcf8575";
+		reg = <0x21>;
+		gpio-controller;
+		#gpio-cells = <2>;
+		interrupt-parent = <&gpio1>;
+		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
+		interrupt-controller;
+		#interrupt-cells = <2>;
+	};
+
+	pcf_hdmi: pcf8575@26 {
+		compatible = "ti,pcf8575", "nxp,pcf8575";
+		reg = <0x26>;
+		gpio-controller;
+		#gpio-cells = <2>;
+		p1 {
+			/* vin6_sel_s0: high: VIN6, low: audio */
+			gpio-hog;
+			gpios = <1 GPIO_ACTIVE_HIGH>;
+			output-low;
+			line-name = "vin6_sel_s0";
+		};
+	};
+
+	tlv320aic3106: tlv320aic3106@19 {
+		#sound-dai-cells = <0>;
+		compatible = "ti,tlv320aic3106";
+		reg = <0x19>;
+		adc-settle-ms = <40>;
+		ai3x-micbias-vg = <1>;		/* 2.0V */
+		status = "okay";
+
+		/* Regulators */
+		AVDD-supply = <&vio_3v3>;
+		IOVDD-supply = <&vio_3v3>;
+		DRVDD-supply = <&vio_3v3>;
+		DVDD-supply = <&aic_dvdd>;
+	};
+};
+
+&cpu0 {
+	vdd-supply = <&buck10_reg>;
+};
+
+&mmc1 {
+	status = "okay";
+	vmmc-supply = <&vio_3v3_sd>;
+	vmmc_aux-supply = <&ldo4_reg>;
+	bus-width = <4>;
+	/*
+	 * SDCD signal is not being used here - using the fact that GPIO mode
+	 * is always hardwired.
+	 */
+	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc1_pins_default>;
+};
+
+&mmc2 {
+	status = "okay";
+	vmmc-supply = <&vio_1v8>;
+	bus-width = <8>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_pins_default>;
+};
+
+/* No RTC on this device */
+&rtc {
+	status = "disabled";
+};
+
+&mac {
+	status = "okay";
+
+	dual_emac;
+};
+
+&cpsw_emac0 {
+	phy_id = <&davinci_mdio>, <2>;
+	phy-mode = "rgmii-id";
+	dual_emac_res_vlan = <1>;
+};
+
+&cpsw_emac1 {
+	phy_id = <&davinci_mdio>, <3>;
+	phy-mode = "rgmii-id";
+	dual_emac_res_vlan = <2>;
+};
+
+&davinci_mdio {
+	dp83867_0: ethernet-phy@2 {
+		reg = <2>;
+		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
+		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
+		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
+		ti,min-output-impedance;
+		ti,dp83867-rxctrl-strap-quirk;
+	};
+
+	dp83867_1: ethernet-phy@3 {
+		reg = <3>;
+		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
+		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
+		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
+		ti,min-output-impedance;
+		ti,dp83867-rxctrl-strap-quirk;
+	};
+};
+
+&usb2_phy1 {
+	phy-supply = <&ldo3_reg>;
+};
+
+&usb2_phy2 {
+	phy-supply = <&ldo3_reg>;
+};
+
+&dss {
+	status = "ok";
+	vdda_video-supply = <&ldo5_reg>;
+};
+
+&hdmi {
+	vdda-supply = <&ldo1_reg>;
+};
+
+&qspi {
+	spi-max-frequency = <96000000>;
+	m25p80@0 {
+		spi-max-frequency = <96000000>;
+	};
+};
-- 
2.13.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 8/8] ARM: dts: Add support for dra76-evm
       [not found]     ` <20170718195503.1700-9-lokeshvutla-l0cyMroinI0@public.gmane.org>
@ 2017-07-24 10:30       ` Lokesh Vutla
  0 siblings, 0 replies; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-24 10:30 UTC (permalink / raw)
  To: Tony Lindgren, Linux OMAP Mailing List
  Cc: Tero Kristo, Sekhar Nori, Device Tree Mailing List, Rob Herring,
	Vignesh R, Keerthy, Praneeth Bajjuri

Tony,

On Wednesday 19 July 2017 01:25 AM, Lokesh Vutla wrote:
> dra76-evm is a board based on TI's dra76 processor targeting
> for infotainment systems. Adding support for this platform.
> 
> dra76-evm and dra7-evm has a similar layout except with few differences.
> So create a dra7-evm-common.dtsi with similarities on dra76-evm and
> dra7-evm. Include this common dtsi in both dra7-evm.dts and dra76-evm.dts
> 
> Signed-off-by: Keerthy <j-keerthy-l0cyMroinI0@public.gmane.org>
> Signed-off-by: Vignesh R <vigneshr-l0cyMroinI0@public.gmane.org>
> Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>

This is a version based on pre production boards. There might be minimal
changes once production boards comes out. Are you okay with posting diff
patches later or you want to hold this?

Thanks and regards,
Lokesh

> ---
>  .../devicetree/bindings/arm/omap/omap.txt          |   3 +
>  arch/arm/boot/dts/Makefile                         |   3 +-
>  arch/arm/boot/dts/dra7-evm-common.dtsi             | 258 ++++++++++++
>  arch/arm/boot/dts/dra7-evm.dts                     | 248 +-----------
>  arch/arm/boot/dts/dra76-evm.dts                    | 432 +++++++++++++++++++++
>  5 files changed, 696 insertions(+), 248 deletions(-)
>  create mode 100644 arch/arm/boot/dts/dra7-evm-common.dtsi
>  create mode 100644 arch/arm/boot/dts/dra76-evm.dts
> 
> diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
> index ffe02755a285..f6561938bdf2 100644
> --- a/Documentation/devicetree/bindings/arm/omap/omap.txt
> +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
> @@ -187,6 +187,9 @@ Boards:
>  - AM5718 IDK
>    compatible = "ti,am5718-idk", "ti,am5718", "ti,dra7"
>  
> +- DRA762 EVM:  Software Development Board for DRA762
> +  compatible = "ti,dra76-evm", "ti,dra76", "ti,dra7"
> +
>  - DRA742 EVM:  Software Development Board for DRA742
>    compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7"
>  
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 4b17f35dc9a7..d563d91a18e3 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -657,7 +657,8 @@ dtb-$(CONFIG_SOC_DRA7XX) += \
>  	dra7-evm.dtb \
>  	dra72-evm.dtb \
>  	dra72-evm-revc.dtb \
> -	dra71-evm.dtb
> +	dra71-evm.dtb \
> +	dra76-evm.dtb
>  dtb-$(CONFIG_ARCH_ORION5X) += \
>  	orion5x-kuroboxpro.dtb \
>  	orion5x-lacie-d2-network.dtb \
> diff --git a/arch/arm/boot/dts/dra7-evm-common.dtsi b/arch/arm/boot/dts/dra7-evm-common.dtsi
> new file mode 100644
> index 000000000000..343e95f9a001
> --- /dev/null
> +++ b/arch/arm/boot/dts/dra7-evm-common.dtsi
> @@ -0,0 +1,258 @@
> +/*
> + * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/clk/ti-dra7-atl.h>
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +	chosen {
> +		stdout-path = &uart1;
> +	};
> +
> +	extcon_usb1: extcon_usb1 {
> +		compatible = "linux,extcon-usb-gpio";
> +		id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>;
> +	};
> +
> +	sound0: sound0 {
> +		compatible = "simple-audio-card";
> +		simple-audio-card,name = "DRA7xx-EVM";
> +		simple-audio-card,widgets =
> +			"Headphone", "Headphone Jack",
> +			"Line", "Line Out",
> +			"Microphone", "Mic Jack",
> +			"Line", "Line In";
> +		simple-audio-card,routing =
> +			"Headphone Jack",	"HPLOUT",
> +			"Headphone Jack",	"HPROUT",
> +			"Line Out",		"LLOUT",
> +			"Line Out",		"RLOUT",
> +			"MIC3L",		"Mic Jack",
> +			"MIC3R",		"Mic Jack",
> +			"Mic Jack",		"Mic Bias",
> +			"LINE1L",		"Line In",
> +			"LINE1R",		"Line In";
> +		simple-audio-card,format = "dsp_b";
> +		simple-audio-card,bitclock-master = <&sound0_master>;
> +		simple-audio-card,frame-master = <&sound0_master>;
> +		simple-audio-card,bitclock-inversion;
> +
> +		sound0_master: simple-audio-card,cpu {
> +			sound-dai = <&mcasp3>;
> +			system-clock-frequency = <5644800>;
> +		};
> +
> +		simple-audio-card,codec {
> +			sound-dai = <&tlv320aic3106>;
> +			clocks = <&atl_clkin2_ck>;
> +		};
> +	};
> +
> +	leds {
> +		compatible = "gpio-leds";
> +		led0 {
> +			label = "dra7:usr1";
> +			gpios = <&pcf_lcd 4 GPIO_ACTIVE_LOW>;
> +			default-state = "off";
> +		};
> +
> +		led1 {
> +			label = "dra7:usr2";
> +			gpios = <&pcf_lcd 5 GPIO_ACTIVE_LOW>;
> +			default-state = "off";
> +		};
> +
> +		led2 {
> +			label = "dra7:usr3";
> +			gpios = <&pcf_lcd 6 GPIO_ACTIVE_LOW>;
> +			default-state = "off";
> +		};
> +
> +		led3 {
> +			label = "dra7:usr4";
> +			gpios = <&pcf_lcd 7 GPIO_ACTIVE_LOW>;
> +			default-state = "off";
> +		};
> +	};
> +
> +	gpio_keys {
> +		compatible = "gpio-keys";
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		autorepeat;
> +
> +		USER1 {
> +			label = "btnUser1";
> +			linux,code = <BTN_0>;
> +			gpios = <&pcf_lcd 2 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		USER2 {
> +			label = "btnUser2";
> +			linux,code = <BTN_1>;
> +			gpios = <&pcf_lcd 3 GPIO_ACTIVE_LOW>;
> +		};
> +	};
> +};
> +
> +&i2c3 {
> +	status = "okay";
> +	clock-frequency = <400000>;
> +};
> +
> +&mcspi1 {
> +	status = "okay";
> +};
> +
> +&mcspi2 {
> +	status = "okay";
> +};
> +
> +&uart1 {
> +	status = "okay";
> +	interrupts-extended = <&crossbar_mpu GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
> +			      <&dra7_pmx_core 0x3e0>;
> +};
> +
> +&uart2 {
> +	status = "okay";
> +};
> +
> +&uart3 {
> +	status = "okay";
> +};
> +
> +&qspi {
> +	status = "okay";
> +
> +	spi-max-frequency = <76800000>;
> +	m25p80@0 {
> +		compatible = "s25fl256s1";
> +		spi-max-frequency = <76800000>;
> +		reg = <0>;
> +		spi-tx-bus-width = <1>;
> +		spi-rx-bus-width = <4>;
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +
> +		/* MTD partition table.
> +		 * The ROM checks the first four physical blocks
> +		 * for a valid file to boot and the flash here is
> +		 * 64KiB block size.
> +		 */
> +		partition@0 {
> +			label = "QSPI.SPL";
> +			reg = <0x00000000 0x000010000>;
> +		};
> +		partition@1 {
> +			label = "QSPI.SPL.backup1";
> +			reg = <0x00010000 0x00010000>;
> +		};
> +		partition@2 {
> +			label = "QSPI.SPL.backup2";
> +			reg = <0x00020000 0x00010000>;
> +		};
> +		partition@3 {
> +			label = "QSPI.SPL.backup3";
> +			reg = <0x00030000 0x00010000>;
> +		};
> +		partition@4 {
> +			label = "QSPI.u-boot";
> +			reg = <0x00040000 0x00100000>;
> +		};
> +		partition@5 {
> +			label = "QSPI.u-boot-spl-os";
> +			reg = <0x00140000 0x00080000>;
> +		};
> +		partition@6 {
> +			label = "QSPI.u-boot-env";
> +			reg = <0x001c0000 0x00010000>;
> +		};
> +		partition@7 {
> +			label = "QSPI.u-boot-env.backup1";
> +			reg = <0x001d0000 0x0010000>;
> +		};
> +		partition@8 {
> +			label = "QSPI.kernel";
> +			reg = <0x001e0000 0x0800000>;
> +		};
> +		partition@9 {
> +			label = "QSPI.file-system";
> +			reg = <0x009e0000 0x01620000>;
> +		};
> +	};
> +};
> +
> +&omap_dwc3_1 {
> +	extcon = <&extcon_usb1>;
> +};
> +
> +&usb1 {
> +	dr_mode = "otg";
> +	extcon = <&extcon_usb1>;
> +};
> +
> +&usb2 {
> +	dr_mode = "host";
> +};
> +
> +&atl {
> +	assigned-clocks = <&abe_dpll_sys_clk_mux>,
> +			  <&atl_gfclk_mux>,
> +			  <&dpll_abe_ck>,
> +			  <&dpll_abe_m2x2_ck>,
> +			  <&atl_clkin2_ck>;
> +	assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>;
> +	assigned-clock-rates = <0>, <0>, <180633600>, <361267200>, <5644800>;
> +
> +	status = "okay";
> +
> +	atl2 {
> +		bws = <DRA7_ATL_WS_MCASP2_FSX>;
> +		aws = <DRA7_ATL_WS_MCASP3_FSX>;
> +	};
> +};
> +
> +&mcasp3 {
> +	#sound-dai-cells = <0>;
> +
> +	assigned-clocks = <&mcasp3_ahclkx_mux>;
> +	assigned-clock-parents = <&atl_clkin2_ck>;
> +
> +	status = "okay";
> +
> +	op-mode = <0>;          /* MCASP_IIS_MODE */
> +	tdm-slots = <2>;
> +	/* 4 serializer */
> +	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
> +		1 2 0 0
> +	>;
> +	tx-num-evt = <32>;
> +	rx-num-evt = <32>;
> +};
> +
> +&mailbox5 {
> +	status = "okay";
> +	mbox_ipu1_ipc3x: mbox_ipu1_ipc3x {
> +		status = "okay";
> +	};
> +	mbox_dsp1_ipc3x: mbox_dsp1_ipc3x {
> +		status = "okay";
> +	};
> +};
> +
> +&mailbox6 {
> +	status = "okay";
> +	mbox_ipu2_ipc3x: mbox_ipu2_ipc3x {
> +		status = "okay";
> +	};
> +	mbox_dsp2_ipc3x: mbox_dsp2_ipc3x {
> +		status = "okay";
> +	};
> +};
> diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
> index f47fc4daf062..c3009bda62e3 100644
> --- a/arch/arm/boot/dts/dra7-evm.dts
> +++ b/arch/arm/boot/dts/dra7-evm.dts
> @@ -8,9 +8,7 @@
>  /dts-v1/;
>  
>  #include "dra74x.dtsi"
> -#include <dt-bindings/gpio/gpio.h>
> -#include <dt-bindings/clk/ti-dra7-atl.h>
> -#include <dt-bindings/input/input.h>
> +#include "dra7-evm-common.dtsi"
>  
>  / {
>  	model = "TI DRA742";
> @@ -21,10 +19,6 @@
>  		reg = <0x0 0x80000000 0x0 0x60000000>; /* 1536 MB */
>  	};
>  
> -	chosen {
> -		stdout-path = &uart1;
> -	};
> -
>  	evm_3v3_sd: fixedregulator-sd {
>  		compatible = "regulator-fixed";
>  		regulator-name = "evm_3v3_sd";
> @@ -51,11 +45,6 @@
>  		regulator-max-microvolt = <1800000>;
>  	};
>  
> -	extcon_usb1: extcon_usb1 {
> -		compatible = "linux,extcon-usb-gpio";
> -		id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>;
> -	};
> -
>  	extcon_usb2: extcon_usb2 {
>  		compatible = "linux,extcon-usb-gpio";
>  		id-gpio = <&pcf_gpio_21 2 GPIO_ACTIVE_HIGH>;
> @@ -73,85 +62,6 @@
>  		gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
>  	};
>  
> -	sound0: sound0 {
> -		compatible = "simple-audio-card";
> -		simple-audio-card,name = "DRA7xx-EVM";
> -		simple-audio-card,widgets =
> -			"Headphone", "Headphone Jack",
> -			"Line", "Line Out",
> -			"Microphone", "Mic Jack",
> -			"Line", "Line In";
> -		simple-audio-card,routing =
> -			"Headphone Jack",	"HPLOUT",
> -			"Headphone Jack",	"HPROUT",
> -			"Line Out",		"LLOUT",
> -			"Line Out",		"RLOUT",
> -			"MIC3L",		"Mic Jack",
> -			"MIC3R",		"Mic Jack",
> -			"Mic Jack",		"Mic Bias",
> -			"LINE1L",		"Line In",
> -			"LINE1R",		"Line In";
> -		simple-audio-card,format = "dsp_b";
> -		simple-audio-card,bitclock-master = <&sound0_master>;
> -		simple-audio-card,frame-master = <&sound0_master>;
> -		simple-audio-card,bitclock-inversion;
> -
> -		sound0_master: simple-audio-card,cpu {
> -			sound-dai = <&mcasp3>;
> -			system-clock-frequency = <5644800>;
> -		};
> -
> -		simple-audio-card,codec {
> -			sound-dai = <&tlv320aic3106>;
> -			clocks = <&atl_clkin2_ck>;
> -		};
> -	};
> -
> -	leds {
> -		compatible = "gpio-leds";
> -		led0 {
> -			label = "dra7:usr1";
> -			gpios = <&pcf_lcd 4 GPIO_ACTIVE_LOW>;
> -			default-state = "off";
> -		};
> -
> -		led1 {
> -			label = "dra7:usr2";
> -			gpios = <&pcf_lcd 5 GPIO_ACTIVE_LOW>;
> -			default-state = "off";
> -		};
> -
> -		led2 {
> -			label = "dra7:usr3";
> -			gpios = <&pcf_lcd 6 GPIO_ACTIVE_LOW>;
> -			default-state = "off";
> -		};
> -
> -		led3 {
> -			label = "dra7:usr4";
> -			gpios = <&pcf_lcd 7 GPIO_ACTIVE_LOW>;
> -			default-state = "off";
> -		};
> -	};
> -
> -	gpio_keys {
> -		compatible = "gpio-keys";
> -		#address-cells = <1>;
> -		#size-cells = <0>;
> -		autorepeat;
> -
> -		USER1 {
> -			label = "btnUser1";
> -			linux,code = <BTN_0>;
> -			gpios = <&pcf_lcd 2 GPIO_ACTIVE_LOW>;
> -		};
> -
> -		USER2 {
> -			label = "btnUser2";
> -			linux,code = <BTN_1>;
> -			gpios = <&pcf_lcd 3 GPIO_ACTIVE_LOW>;
> -		};
> -	};
>  };
>  
>  &dra7_pmx_core {
> @@ -406,33 +316,6 @@
>  	};
>  };
>  
> -&i2c3 {
> -	status = "okay";
> -	clock-frequency = <400000>;
> -};
> -
> -&mcspi1 {
> -	status = "okay";
> -};
> -
> -&mcspi2 {
> -	status = "okay";
> -};
> -
> -&uart1 {
> -	status = "okay";
> -	interrupts-extended = <&crossbar_mpu GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
> -			      <&dra7_pmx_core 0x3e0>;
> -};
> -
> -&uart2 {
> -	status = "okay";
> -};
> -
> -&uart3 {
> -	status = "okay";
> -};
> -
>  &mmc1 {
>  	status = "okay";
>  	pinctrl-names = "default";
> @@ -459,84 +342,10 @@
>  	cpu0-supply = <&smps123_reg>;
>  };
>  
> -&qspi {
> -	status = "okay";
> -
> -	spi-max-frequency = <76800000>;
> -	m25p80@0 {
> -		compatible = "s25fl256s1";
> -		spi-max-frequency = <76800000>;
> -		reg = <0>;
> -		spi-tx-bus-width = <1>;
> -		spi-rx-bus-width = <4>;
> -		#address-cells = <1>;
> -		#size-cells = <1>;
> -
> -		/* MTD partition table.
> -		 * The ROM checks the first four physical blocks
> -		 * for a valid file to boot and the flash here is
> -		 * 64KiB block size.
> -		 */
> -		partition@0 {
> -			label = "QSPI.SPL";
> -			reg = <0x00000000 0x000010000>;
> -		};
> -		partition@1 {
> -			label = "QSPI.SPL.backup1";
> -			reg = <0x00010000 0x00010000>;
> -		};
> -		partition@2 {
> -			label = "QSPI.SPL.backup2";
> -			reg = <0x00020000 0x00010000>;
> -		};
> -		partition@3 {
> -			label = "QSPI.SPL.backup3";
> -			reg = <0x00030000 0x00010000>;
> -		};
> -		partition@4 {
> -			label = "QSPI.u-boot";
> -			reg = <0x00040000 0x00100000>;
> -		};
> -		partition@5 {
> -			label = "QSPI.u-boot-spl-os";
> -			reg = <0x00140000 0x00080000>;
> -		};
> -		partition@6 {
> -			label = "QSPI.u-boot-env";
> -			reg = <0x001c0000 0x00010000>;
> -		};
> -		partition@7 {
> -			label = "QSPI.u-boot-env.backup1";
> -			reg = <0x001d0000 0x0010000>;
> -		};
> -		partition@8 {
> -			label = "QSPI.kernel";
> -			reg = <0x001e0000 0x0800000>;
> -		};
> -		partition@9 {
> -			label = "QSPI.file-system";
> -			reg = <0x009e0000 0x01620000>;
> -		};
> -	};
> -};
> -
> -&omap_dwc3_1 {
> -	extcon = <&extcon_usb1>;
> -};
> -
>  &omap_dwc3_2 {
>  	extcon = <&extcon_usb2>;
>  };
>  
> -&usb1 {
> -	dr_mode = "otg";
> -	extcon = <&extcon_usb1>;
> -};
> -
> -&usb2 {
> -	dr_mode = "host";
> -};
> -
>  &elm {
>  	status = "okay";
>  };
> @@ -665,58 +474,3 @@
>  	pinctrl-1 = <&dcan1_pins_sleep>;
>  	pinctrl-2 = <&dcan1_pins_default>;
>  };
> -
> -&atl {
> -	assigned-clocks = <&abe_dpll_sys_clk_mux>,
> -			  <&atl_gfclk_mux>,
> -			  <&dpll_abe_ck>,
> -			  <&dpll_abe_m2x2_ck>,
> -			  <&atl_clkin2_ck>;
> -	assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>;
> -	assigned-clock-rates = <0>, <0>, <180633600>, <361267200>, <5644800>;
> -
> -	status = "okay";
> -
> -	atl2 {
> -		bws = <DRA7_ATL_WS_MCASP2_FSX>;
> -		aws = <DRA7_ATL_WS_MCASP3_FSX>;
> -	};
> -};
> -
> -&mcasp3 {
> -	#sound-dai-cells = <0>;
> -
> -	assigned-clocks = <&mcasp3_ahclkx_mux>;
> -	assigned-clock-parents = <&atl_clkin2_ck>;
> -
> -	status = "okay";
> -
> -	op-mode = <0>;          /* MCASP_IIS_MODE */
> -	tdm-slots = <2>;
> -	/* 4 serializer */
> -	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
> -		1 2 0 0
> -	>;
> -	tx-num-evt = <32>;
> -	rx-num-evt = <32>;
> -};
> -
> -&mailbox5 {
> -	status = "okay";
> -	mbox_ipu1_ipc3x: mbox_ipu1_ipc3x {
> -		status = "okay";
> -	};
> -	mbox_dsp1_ipc3x: mbox_dsp1_ipc3x {
> -		status = "okay";
> -	};
> -};
> -
> -&mailbox6 {
> -	status = "okay";
> -	mbox_ipu2_ipc3x: mbox_ipu2_ipc3x {
> -		status = "okay";
> -	};
> -	mbox_dsp2_ipc3x: mbox_dsp2_ipc3x {
> -		status = "okay";
> -	};
> -};
> diff --git a/arch/arm/boot/dts/dra76-evm.dts b/arch/arm/boot/dts/dra76-evm.dts
> new file mode 100644
> index 000000000000..09af67ce8a50
> --- /dev/null
> +++ b/arch/arm/boot/dts/dra76-evm.dts
> @@ -0,0 +1,432 @@
> +/*
> + * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +/dts-v1/;
> +
> +#include "dra76x.dtsi"
> +#include "dra7-evm-common.dtsi"
> +#include <dt-bindings/net/ti-dp83867.h>
> +
> +/ {
> +	model = "TI DRA762 EVM";
> +	compatible = "ti,dra76-evm", "ti,dra76", "ti,dra7";
> +
> +	memory@0 {
> +		device_type = "memory";
> +		reg = <0x0 0x80000000 0x0 0x80000000>;
> +	};
> +
> +	vsys_12v0: fixedregulator-vsys12v0 {
> +		/* main supply */
> +		compatible = "regulator-fixed";
> +		regulator-name = "vsys_12v0";
> +		regulator-min-microvolt = <12000000>;
> +		regulator-max-microvolt = <12000000>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	vsys_5v0: fixedregulator-vsys5v0 {
> +		/* Output of Cntlr B of TPS43351-Q1 on dra76-evm */
> +		compatible = "regulator-fixed";
> +		regulator-name = "vsys_5v0";
> +		regulator-min-microvolt = <5000000>;
> +		regulator-max-microvolt = <5000000>;
> +		vin-supply = <&vsys_12v0>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	vsys_3v3: fixedregulator-vsys3v3 {
> +		/* Output of Cntlr A of TPS43351-Q1 on dra76-evm */
> +		compatible = "regulator-fixed";
> +		regulator-name = "vsys_3v3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		vin-supply = <&vsys_12v0>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	vio_3v3: fixedregulator-vio_3v3 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vio_3v3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		vin-supply = <&vsys_3v3>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	vio_3v3_sd: fixedregulator-sd {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vio_3v3_sd";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		vin-supply = <&vio_3v3>;
> +		enable-active-high;
> +		gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
> +	};
> +
> +	vio_1v8: fixedregulator-vio_1v8 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vio_1v8";
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +		vin-supply = <&smps5_reg>;
> +	};
> +
> +	vtt_fixed: fixedregulator-vtt {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vtt_fixed";
> +		regulator-min-microvolt = <1350000>;
> +		regulator-max-microvolt = <1350000>;
> +		vin-supply = <&vsys_3v3>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	aic_dvdd: fixedregulator-aic_dvdd {
> +		/* TPS77018DBVT */
> +		compatible = "regulator-fixed";
> +		regulator-name = "aic_dvdd";
> +		vin-supply = <&vio_3v3>;
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +	};
> +};
> +
> +&dra7_pmx_core {
> +	mmc1_pins_default: mmc1_pins_default {
> +		pinctrl-single,pins = <
> +			DRA7XX_CORE_IOPAD(0x376c, PIN_INPUT | MUX_MODE14)	/* mmc1sdcd.gpio219 */
> +			DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */
> +			DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */
> +			DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */
> +			DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */
> +			DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */
> +			DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */
> +		>;
> +	};
> +
> +	mmc1_pins_sdr12: pinmux_mmc1_sdr12_pins {
> +		pinctrl-single,pins = <
> +			DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_clk.clk */
> +			DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_cmd.cmd */
> +			DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat0.dat0 */
> +			DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat1.dat1 */
> +			DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat2.dat2 */
> +			DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc1_dat3.dat3 */
> +		>;
> +	};
> +
> +	mmc2_pins_default: mmc2_pins_default {
> +		pinctrl-single,pins = <
> +			DRA7XX_CORE_IOPAD(0x349c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */
> +			DRA7XX_CORE_IOPAD(0x34b0, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */
> +			DRA7XX_CORE_IOPAD(0x34a0, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */
> +			DRA7XX_CORE_IOPAD(0x34a4, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */
> +			DRA7XX_CORE_IOPAD(0x34a8, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */
> +			DRA7XX_CORE_IOPAD(0x34ac, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */
> +			DRA7XX_CORE_IOPAD(0x348c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */
> +			DRA7XX_CORE_IOPAD(0x3490, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */
> +			DRA7XX_CORE_IOPAD(0x3494, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */
> +			DRA7XX_CORE_IOPAD(0x3498, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */
> +		>;
> +	};
> +};
> +
> +&i2c1 {
> +	status = "okay";
> +	clock-frequency = <400000>;
> +
> +	tps65917: tps65917@58 {
> +		compatible = "ti,tps65917";
> +		reg = <0x58>;
> +		ti,system-power-controller;
> +		interrupt-controller;
> +		#interrupt-cells = <2>;
> +
> +		tps65917_pmic {
> +			compatible = "ti,tps65917-pmic";
> +
> +			smps12-in-supply = <&vsys_3v3>;
> +			smps3-in-supply = <&vsys_3v3>;
> +			smps4-in-supply = <&vsys_3v3>;
> +			smps5-in-supply = <&vsys_3v3>;
> +			ldo1-in-supply = <&vsys_3v3>;
> +			ldo2-in-supply = <&vsys_3v3>;
> +			ldo3-in-supply = <&vsys_5v0>;
> +			ldo4-in-supply = <&vsys_5v0>;
> +			ldo5-in-supply = <&vsys_3v3>;
> +
> +			tps65917_regulators: regulators {
> +				smps12_reg: smps12 {
> +					/* VDD_DSPEVE */
> +					regulator-name = "smps12";
> +					regulator-min-microvolt = <850000>;
> +					regulator-max-microvolt = <1250000>;
> +					regulator-always-on;
> +					regulator-boot-on;
> +				};
> +
> +				smps3_reg: smps3 {
> +					/* VDD_CORE */
> +					regulator-name = "smps3";
> +					regulator-min-microvolt = <850000>;
> +					regulator-max-microvolt = <1250000>;
> +					regulator-boot-on;
> +					regulator-always-on;
> +				};
> +
> +				smps4_reg: smps4 {
> +					/* VDD_IVA */
> +					regulator-name = "smps4";
> +					regulator-min-microvolt = <850000>;
> +					regulator-max-microvolt = <1250000>;
> +					regulator-always-on;
> +					regulator-boot-on;
> +				};
> +
> +				smps5_reg: smps5 {
> +					/* VDDS1V8 */
> +					regulator-name = "smps5";
> +					regulator-min-microvolt = <1800000>;
> +					regulator-max-microvolt = <1800000>;
> +					regulator-boot-on;
> +					regulator-always-on;
> +				};
> +
> +				ldo1_reg: ldo1 {
> +					/* LDO1_OUT --> VDA_PHY1_1V8  */
> +					regulator-name = "ldo1";
> +					regulator-min-microvolt = <1800000>;
> +					regulator-max-microvolt = <1800000>;
> +					regulator-always-on;
> +					regulator-boot-on;
> +					regulator-allow-bypass;
> +				};
> +
> +				ldo2_reg: ldo2 {
> +					/* LDO2_OUT --> VDA_PHY2_1V8 */
> +					regulator-name = "ldo2";
> +					regulator-min-microvolt = <1800000>;
> +					regulator-max-microvolt = <1800000>;
> +					regulator-allow-bypass;
> +					regulator-always-on;
> +				};
> +
> +				ldo3_reg: ldo3 {
> +					/* VDA_USB_3V3 */
> +					regulator-name = "ldo3";
> +					regulator-min-microvolt = <3300000>;
> +					regulator-max-microvolt = <3300000>;
> +					regulator-boot-on;
> +					regulator-always-on;
> +				};
> +
> +				ldo5_reg: ldo5 {
> +					/* VDDA_1V8_PLL */
> +					regulator-name = "ldo5";
> +					regulator-min-microvolt = <1800000>;
> +					regulator-max-microvolt = <1800000>;
> +					regulator-always-on;
> +					regulator-boot-on;
> +				};
> +
> +				ldo4_reg: ldo4 {
> +					/* VDD_SDIO_DV */
> +					regulator-name = "ldo4";
> +					regulator-min-microvolt = <1800000>;
> +					regulator-max-microvolt = <3300000>;
> +					regulator-boot-on;
> +					regulator-always-on;
> +				};
> +			};
> +		};
> +
> +		tps65917_power_button {
> +			compatible = "ti,palmas-pwrbutton";
> +			interrupt-parent = <&tps65917>;
> +			interrupts = <1 IRQ_TYPE_NONE>;
> +			wakeup-source;
> +			ti,palmas-long-press-seconds = <6>;
> +		};
> +	};
> +
> +	lp87565: lp87565@60 {
> +		compatible = "ti,lp87565-q1";
> +		reg = <0x60>;
> +
> +		buck10-in-supply =<&vsys_3v3>;
> +		buck23-in-supply =<&vsys_3v3>;
> +
> +		regulators: regulators {
> +			buck10_reg: buck10 {
> +				/*VDD_MPU*/
> +				regulator-name = "buck10";
> +				regulator-min-microvolt = <850000>;
> +				regulator-max-microvolt = <1250000>;
> +				regulator-always-on;
> +				regulator-boot-on;
> +			};
> +
> +			buck23_reg: buck23 {
> +				/* VDD_GPU*/
> +				regulator-name = "buck23";
> +				regulator-min-microvolt = <850000>;
> +				regulator-max-microvolt = <1250000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +		};
> +	};
> +
> +	pcf_lcd: pcf8757@20 {
> +		compatible = "ti,pcf8575", "nxp,pcf8575";
> +		reg = <0x20>;
> +		gpio-controller;
> +		#gpio-cells = <2>;
> +		interrupt-controller;
> +		#interrupt-cells = <2>;
> +		interrupt-parent = <&gpio1>;
> +		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
> +	};
> +
> +	pcf_gpio_21: pcf8757@21 {
> +		compatible = "ti,pcf8575", "nxp,pcf8575";
> +		reg = <0x21>;
> +		gpio-controller;
> +		#gpio-cells = <2>;
> +		interrupt-parent = <&gpio1>;
> +		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
> +		interrupt-controller;
> +		#interrupt-cells = <2>;
> +	};
> +
> +	pcf_hdmi: pcf8575@26 {
> +		compatible = "ti,pcf8575", "nxp,pcf8575";
> +		reg = <0x26>;
> +		gpio-controller;
> +		#gpio-cells = <2>;
> +		p1 {
> +			/* vin6_sel_s0: high: VIN6, low: audio */
> +			gpio-hog;
> +			gpios = <1 GPIO_ACTIVE_HIGH>;
> +			output-low;
> +			line-name = "vin6_sel_s0";
> +		};
> +	};
> +
> +	tlv320aic3106: tlv320aic3106@19 {
> +		#sound-dai-cells = <0>;
> +		compatible = "ti,tlv320aic3106";
> +		reg = <0x19>;
> +		adc-settle-ms = <40>;
> +		ai3x-micbias-vg = <1>;		/* 2.0V */
> +		status = "okay";
> +
> +		/* Regulators */
> +		AVDD-supply = <&vio_3v3>;
> +		IOVDD-supply = <&vio_3v3>;
> +		DRVDD-supply = <&vio_3v3>;
> +		DVDD-supply = <&aic_dvdd>;
> +	};
> +};
> +
> +&cpu0 {
> +	vdd-supply = <&buck10_reg>;
> +};
> +
> +&mmc1 {
> +	status = "okay";
> +	vmmc-supply = <&vio_3v3_sd>;
> +	vmmc_aux-supply = <&ldo4_reg>;
> +	bus-width = <4>;
> +	/*
> +	 * SDCD signal is not being used here - using the fact that GPIO mode
> +	 * is always hardwired.
> +	 */
> +	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&mmc1_pins_default>;
> +};
> +
> +&mmc2 {
> +	status = "okay";
> +	vmmc-supply = <&vio_1v8>;
> +	bus-width = <8>;
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&mmc2_pins_default>;
> +};
> +
> +/* No RTC on this device */
> +&rtc {
> +	status = "disabled";
> +};
> +
> +&mac {
> +	status = "okay";
> +
> +	dual_emac;
> +};
> +
> +&cpsw_emac0 {
> +	phy_id = <&davinci_mdio>, <2>;
> +	phy-mode = "rgmii-id";
> +	dual_emac_res_vlan = <1>;
> +};
> +
> +&cpsw_emac1 {
> +	phy_id = <&davinci_mdio>, <3>;
> +	phy-mode = "rgmii-id";
> +	dual_emac_res_vlan = <2>;
> +};
> +
> +&davinci_mdio {
> +	dp83867_0: ethernet-phy@2 {
> +		reg = <2>;
> +		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
> +		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
> +		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
> +		ti,min-output-impedance;
> +		ti,dp83867-rxctrl-strap-quirk;
> +	};
> +
> +	dp83867_1: ethernet-phy@3 {
> +		reg = <3>;
> +		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
> +		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
> +		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
> +		ti,min-output-impedance;
> +		ti,dp83867-rxctrl-strap-quirk;
> +	};
> +};
> +
> +&usb2_phy1 {
> +	phy-supply = <&ldo3_reg>;
> +};
> +
> +&usb2_phy2 {
> +	phy-supply = <&ldo3_reg>;
> +};
> +
> +&dss {
> +	status = "ok";
> +	vdda_video-supply = <&ldo5_reg>;
> +};
> +
> +&hdmi {
> +	vdda-supply = <&ldo1_reg>;
> +};
> +
> +&qspi {
> +	spi-max-frequency = <96000000>;
> +	m25p80@0 {
> +		spi-max-frequency = <96000000>;
> +	};
> +};
> 
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family
       [not found]     ` <20170718195503.1700-2-lokeshvutla-l0cyMroinI0@public.gmane.org>
@ 2017-07-24 19:02       ` Rob Herring
  2017-07-25  6:40         ` Lokesh Vutla
  0 siblings, 1 reply; 14+ messages in thread
From: Rob Herring @ 2017-07-24 19:02 UTC (permalink / raw)
  To: Lokesh Vutla
  Cc: Tony Lindgren, Linux OMAP Mailing List, Tero Kristo, Sekhar Nori,
	Device Tree Mailing List, Vignesh R, Keerthy, Praneeth Bajjuri

On Wed, Jul 19, 2017 at 01:24:56AM +0530, Lokesh Vutla wrote:
> Adding board generic support for dra76 family.
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
> ---
>  Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++
>  arch/arm/mach-omap2/board-generic.c                 | 1 +
>  2 files changed, 4 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
> index 8219b2c6bb29..ffe02755a285 100644
> --- a/Documentation/devicetree/bindings/arm/omap/omap.txt
> +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
> @@ -80,6 +80,9 @@ SoCs:
>  - OMAP5432
>    compatible = "ti,omap5432", "ti,omap5"
>  
> +- DRA762
> +  compatible = "ti,dra76", "ti,dra7"

76 or 762?

How many of these 2 or 3 compatible strings actually get used? I'd 
prefer to see one of these less specific compatibles get dropped.

> +
>  - DRA742
>    compatible = "ti,dra742", "ti,dra74", "ti,dra7"
>  
> diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
> index dc9e34e670a2..e5d9d769a76e 100644
> --- a/arch/arm/mach-omap2/board-generic.c
> +++ b/arch/arm/mach-omap2/board-generic.c
> @@ -312,6 +312,7 @@ MACHINE_END
>  
>  #ifdef CONFIG_SOC_DRA7XX
>  static const char *const dra74x_boards_compat[] __initconst = {
> +	"ti,dra76",
>  	"ti,am5728",
>  	"ti,am5726",
>  	"ti,dra742",
> -- 
> 2.13.0
> 
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family
  2017-07-24 19:02       ` Rob Herring
@ 2017-07-25  6:40         ` Lokesh Vutla
       [not found]           ` <5fcdf90c-4630-0834-ff09-46339dce90f6-l0cyMroinI0@public.gmane.org>
  0 siblings, 1 reply; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-25  6:40 UTC (permalink / raw)
  To: Rob Herring
  Cc: Tony Lindgren, Linux OMAP Mailing List, Tero Kristo, Sekhar Nori,
	Device Tree Mailing List, Vignesh R, Keerthy, Praneeth Bajjuri



On 7/25/2017 12:32 AM, Rob Herring wrote:
> On Wed, Jul 19, 2017 at 01:24:56AM +0530, Lokesh Vutla wrote:
>> Adding board generic support for dra76 family.
>>
>> Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
>> ---
>>  Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++
>>  arch/arm/mach-omap2/board-generic.c                 | 1 +
>>  2 files changed, 4 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
>> index 8219b2c6bb29..ffe02755a285 100644
>> --- a/Documentation/devicetree/bindings/arm/omap/omap.txt
>> +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
>> @@ -80,6 +80,9 @@ SoCs:
>>  - OMAP5432
>>    compatible = "ti,omap5432", "ti,omap5"
>>  
>> +- DRA762
>> +  compatible = "ti,dra76", "ti,dra7"
> 
> 76 or 762?

Just wanted to cover all variants of dra76x with this compatible. Okay
ill use 762.

> 
> How many of these 2 or 3 compatible strings actually get used? I'd 
> prefer to see one of these less specific compatibles get dropped.

ti,dra76 is being used. Ill try not to include ti,dra7 and post it again.

Thanks and regards,
Lokesh

> 
>> +
>>  - DRA742
>>    compatible = "ti,dra742", "ti,dra74", "ti,dra7"
>>  
>> diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
>> index dc9e34e670a2..e5d9d769a76e 100644
>> --- a/arch/arm/mach-omap2/board-generic.c
>> +++ b/arch/arm/mach-omap2/board-generic.c
>> @@ -312,6 +312,7 @@ MACHINE_END
>>  
>>  #ifdef CONFIG_SOC_DRA7XX
>>  static const char *const dra74x_boards_compat[] __initconst = {
>> +	"ti,dra76",
>>  	"ti,am5728",
>>  	"ti,am5726",
>>  	"ti,dra742",
>> -- 
>> 2.13.0
>>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family
       [not found]           ` <5fcdf90c-4630-0834-ff09-46339dce90f6-l0cyMroinI0@public.gmane.org>
@ 2017-07-30 11:19             ` Lokesh Vutla
       [not found]               ` <f0d5b151-c699-c683-97ce-d6689135e3ac-l0cyMroinI0@public.gmane.org>
  0 siblings, 1 reply; 14+ messages in thread
From: Lokesh Vutla @ 2017-07-30 11:19 UTC (permalink / raw)
  To: Rob Herring
  Cc: Tony Lindgren, Linux OMAP Mailing List, Tero Kristo, Sekhar Nori,
	Device Tree Mailing List, Vignesh R, Keerthy, Praneeth Bajjuri

Rob,

On 7/25/2017 12:10 PM, Lokesh Vutla wrote:
> 
> 
> On 7/25/2017 12:32 AM, Rob Herring wrote:
>> On Wed, Jul 19, 2017 at 01:24:56AM +0530, Lokesh Vutla wrote:
>>> Adding board generic support for dra76 family.
>>>
>>> Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
>>> ---
>>>  Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++
>>>  arch/arm/mach-omap2/board-generic.c                 | 1 +
>>>  2 files changed, 4 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
>>> index 8219b2c6bb29..ffe02755a285 100644
>>> --- a/Documentation/devicetree/bindings/arm/omap/omap.txt
>>> +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
>>> @@ -80,6 +80,9 @@ SoCs:
>>>  - OMAP5432
>>>    compatible = "ti,omap5432", "ti,omap5"
>>>  
>>> +- DRA762
>>> +  compatible = "ti,dra76", "ti,dra7"
>>
>> 76 or 762?
> 
> Just wanted to cover all variants of dra76x with this compatible. Okay
> ill use 762.
> 
>>
>> How many of these 2 or 3 compatible strings actually get used? I'd 
>> prefer to see one of these less specific compatibles get dropped.
> 
> ti,dra76 is being used. Ill try not to include ti,dra7 and post it again.

ti,dra7 is being used by cpufreq driver . So, I would like to use both
ti,dra762 and ti,dra7 as compatible.

Thanks and regards,
Lokesh
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family
       [not found]               ` <f0d5b151-c699-c683-97ce-d6689135e3ac-l0cyMroinI0@public.gmane.org>
@ 2017-08-11 15:42                 ` Tony Lindgren
  0 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2017-08-11 15:42 UTC (permalink / raw)
  To: Lokesh Vutla
  Cc: Rob Herring, Linux OMAP Mailing List, Tero Kristo, Sekhar Nori,
	Device Tree Mailing List, Vignesh R, Keerthy, Praneeth Bajjuri

* Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org> [170730 04:20]:
> Rob,
> 
> On 7/25/2017 12:10 PM, Lokesh Vutla wrote:
> > 
> > 
> > On 7/25/2017 12:32 AM, Rob Herring wrote:
> >> On Wed, Jul 19, 2017 at 01:24:56AM +0530, Lokesh Vutla wrote:
> >>> Adding board generic support for dra76 family.
> >>>
> >>> Signed-off-by: Lokesh Vutla <lokeshvutla-l0cyMroinI0@public.gmane.org>
> >>> ---
> >>>  Documentation/devicetree/bindings/arm/omap/omap.txt | 3 +++
> >>>  arch/arm/mach-omap2/board-generic.c                 | 1 +
> >>>  2 files changed, 4 insertions(+)
> >>>
> >>> diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
> >>> index 8219b2c6bb29..ffe02755a285 100644
> >>> --- a/Documentation/devicetree/bindings/arm/omap/omap.txt
> >>> +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
> >>> @@ -80,6 +80,9 @@ SoCs:
> >>>  - OMAP5432
> >>>    compatible = "ti,omap5432", "ti,omap5"
> >>>  
> >>> +- DRA762
> >>> +  compatible = "ti,dra76", "ti,dra7"
> >>
> >> 76 or 762?
> > 
> > Just wanted to cover all variants of dra76x with this compatible. Okay
> > ill use 762.
> > 
> >>
> >> How many of these 2 or 3 compatible strings actually get used? I'd 
> >> prefer to see one of these less specific compatibles get dropped.
> > 
> > ti,dra76 is being used. Ill try not to include ti,dra7 and post it again.
> 
> ti,dra7 is being used by cpufreq driver . So, I would like to use both
> ti,dra762 and ti,dra7 as compatible.

So are you going to repost this one with ti,dra762 and ti,dra7?

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2017-08-11 15:42 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-18 19:54 [PATCH 0/8] ARM: dra7: Add support for dra76-evm Lokesh Vutla
     [not found] ` <20170718195503.1700-1-lokeshvutla-l0cyMroinI0@public.gmane.org>
2017-07-18 19:54   ` [PATCH 1/8] ARM: OMAP2+: board-generic: add support for dra76x family Lokesh Vutla
     [not found]     ` <20170718195503.1700-2-lokeshvutla-l0cyMroinI0@public.gmane.org>
2017-07-24 19:02       ` Rob Herring
2017-07-25  6:40         ` Lokesh Vutla
     [not found]           ` <5fcdf90c-4630-0834-ff09-46339dce90f6-l0cyMroinI0@public.gmane.org>
2017-07-30 11:19             ` Lokesh Vutla
     [not found]               ` <f0d5b151-c699-c683-97ce-d6689135e3ac-l0cyMroinI0@public.gmane.org>
2017-08-11 15:42                 ` Tony Lindgren
2017-07-18 19:54   ` [PATCH 2/8] ARM: dra76: Add support for device identification Lokesh Vutla
2017-07-18 19:54   ` [PATCH 3/8] ARM: dra7: hwmod: Register dra76x specific hwmod Lokesh Vutla
2017-07-18 19:54   ` [PATCH 4/8] ARM: dra76: Enable SMP for dra76 Lokesh Vutla
2017-07-18 19:55   ` [PATCH 5/8] ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains Lokesh Vutla
2017-07-18 19:55   ` [PATCH 6/8] ARM: omap2plus_defconfig: Enable LP87565 Lokesh Vutla
2017-07-18 19:55   ` [PATCH 7/8] ARM: dts: Add support for dra76x family of devices Lokesh Vutla
2017-07-18 19:55   ` [PATCH 8/8] ARM: dts: Add support for dra76-evm Lokesh Vutla
     [not found]     ` <20170718195503.1700-9-lokeshvutla-l0cyMroinI0@public.gmane.org>
2017-07-24 10:30       ` Lokesh Vutla

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.