All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] armv8: ls1028a: disable multimedia feature when not supported
@ 2019-09-26  5:38 Yuantian Tang
  2019-09-30  8:31 ` Priyanka Jain
  0 siblings, 1 reply; 2+ messages in thread
From: Yuantian Tang @ 2019-09-26  5:38 UTC (permalink / raw)
  To: u-boot

Ls1028a has 4 personalities: ls1028a, ls1027a, ls1017a and ls1018a.
Both ls1027a and ls1017a personalities are lower functionality version
which doesn't support the multimedia subsystems, like LCD, GPU.

To disable multimedia feature on non-multimedia version, set the status
property to disabled in dts nodes.

Signed-off-by: Tang Yuantian <andy.tang@nxp.com>
---
 arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
index 19917b207a..ef0e2095a6 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
@@ -401,6 +401,24 @@ void fdt_fixup_remove_jr(void *blob)
 }
 #endif
 
+static void fdt_disable_multimedia(void *blob, unsigned int svr)
+{
+	int off;
+
+	if (!((svr >> 10) & 0x1))
+		return;
+
+	/* Disable eDP/LCD node */
+	off = fdt_node_offset_by_compatible(blob, -1, "arm,mali-dp500");
+	if (off != -FDT_ERR_NOTFOUND)
+		fdt_status_disabled(blob, off);
+
+	/* Disable GPU node */
+	off = fdt_node_offset_by_compatible(blob, -1, "fsl,ls1028a-gpu");
+	if (off != -FDT_ERR_NOTFOUND)
+		fdt_status_disabled(blob, off);
+}
+
 void ft_cpu_setup(void *blob, bd_t *bd)
 {
 	struct ccsr_gur __iomem *gur = (void *)(CONFIG_SYS_FSL_GUTS_ADDR);
@@ -462,4 +480,7 @@ void ft_cpu_setup(void *blob, bd_t *bd)
 #ifdef CONFIG_HAS_FEATURE_ENHANCED_MSI
 	fdt_fixup_msi(blob);
 #endif
+#ifdef CONFIG_ARCH_LS1028A
+	fdt_disable_multimedia(blob, svr);
+#endif
 }
-- 
2.17.1

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

* [U-Boot] [PATCH] armv8: ls1028a: disable multimedia feature when not supported
  2019-09-26  5:38 [U-Boot] [PATCH] armv8: ls1028a: disable multimedia feature when not supported Yuantian Tang
@ 2019-09-30  8:31 ` Priyanka Jain
  0 siblings, 0 replies; 2+ messages in thread
From: Priyanka Jain @ 2019-09-30  8:31 UTC (permalink / raw)
  To: u-boot



>-----Original Message-----
>From: U-Boot <u-boot-bounces@lists.denx.de> On Behalf Of Yuantian Tang
>Sent: Thursday, September 26, 2019 11:09 AM
>To: Prabhakar X <prabhakar.kushwaha@nxp.com>
>Cc: u-boot at lists.denx.de; Andy Tang <andy.tang@nxp.com>
>Subject: [U-Boot] [PATCH] armv8: ls1028a: disable multimedia feature when
>not supported
>
>Ls1028a has 4 personalities: ls1028a, ls1027a, ls1017a and ls1018a.
Please use same case : Ls -> ls
>Both ls1027a and ls1017a personalities are lower functionality version which
>doesn't support the multimedia subsystems, like LCD, GPU.
>
>To disable multimedia feature on non-multimedia version, set the status
>property to disabled in dts nodes.
>
>Signed-off-by: Tang Yuantian <andy.tang@nxp.com>
>---
> arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
>diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
>b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
>index 19917b207a..ef0e2095a6 100644
>--- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
>+++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
>@@ -401,6 +401,24 @@ void fdt_fixup_remove_jr(void *blob)  }  #endif
>
>+static void fdt_disable_multimedia(void *blob, unsigned int svr) {
>+	int off;
>+
>+	if (!((svr >> 10) & 0x1))
>+		return;
>+
Use macros, instead of magic values
>+	/* Disable eDP/LCD node */
>+	off = fdt_node_offset_by_compatible(blob, -1, "arm,mali-dp500");
>+	if (off != -FDT_ERR_NOTFOUND)
>+		fdt_status_disabled(blob, off);
>+
>+	/* Disable GPU node */
>+	off = fdt_node_offset_by_compatible(blob, -1, "fsl,ls1028a-gpu");
>+	if (off != -FDT_ERR_NOTFOUND)
>+		fdt_status_disabled(blob, off);
>+}
>+
> void ft_cpu_setup(void *blob, bd_t *bd)  {
> 	struct ccsr_gur __iomem *gur = (void
>*)(CONFIG_SYS_FSL_GUTS_ADDR); @@ -462,4 +480,7 @@ void
>ft_cpu_setup(void *blob, bd_t *bd)  #ifdef
>CONFIG_HAS_FEATURE_ENHANCED_MSI
> 	fdt_fixup_msi(blob);
> #endif
>+#ifdef CONFIG_ARCH_LS1028A
>+	fdt_disable_multimedia(blob, svr);
>+#endif
> }
>--
>2.17.1
>
>_______________________________________________
>U-Boot mailing list
>U-Boot at lists.denx.de
>https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.de
>nx.de%2Flistinfo%2Fu-
>boot&amp;data=02%7C01%7Cpriyanka.jain%40nxp.com%7C1dd219d687c848b
>4645008d742454cc6%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6
>37050737736807646&amp;sdata=DVekJ9T5xPpgYOgPJgCeBMBpmL0BRTzJEvsEx
>jJVcPE%3D&amp;reserved=0

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

end of thread, other threads:[~2019-09-30  8:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-26  5:38 [U-Boot] [PATCH] armv8: ls1028a: disable multimedia feature when not supported Yuantian Tang
2019-09-30  8:31 ` Priyanka Jain

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.