* [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function
@ 2020-01-06 20:29 Lucas Stach
2020-01-06 20:29 ` [PATCH 2/2] ARM: zynq: zed: use zynq_cpu_lowlevel_init() Lucas Stach
2020-01-08 11:25 ` [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function Sascha Hauer
0 siblings, 2 replies; 3+ messages in thread
From: Lucas Stach @ 2020-01-06 20:29 UTC (permalink / raw)
To: barebox
This adds a Zynq specific CPU lowlevel init function, which applies
the required workarounds for the Cortex A9 r3p0 core.
Signed-off-by: Lucas Stach <dev@lynxeye.de>
---
arch/arm/mach-zynq/Makefile | 1 +
arch/arm/mach-zynq/cpu_init.c | 15 +++++++++++++++
arch/arm/mach-zynq/include/mach/init.h | 8 ++++++++
3 files changed, 24 insertions(+)
create mode 100644 arch/arm/mach-zynq/cpu_init.c
create mode 100644 arch/arm/mach-zynq/include/mach/init.h
diff --git a/arch/arm/mach-zynq/Makefile b/arch/arm/mach-zynq/Makefile
index c88ab4666f0f..06c2ce996cfa 100644
--- a/arch/arm/mach-zynq/Makefile
+++ b/arch/arm/mach-zynq/Makefile
@@ -1 +1,2 @@
obj-y += zynq.o bootm-zynqimg.o
+lwl-y += cpu_init.o
diff --git a/arch/arm/mach-zynq/cpu_init.c b/arch/arm/mach-zynq/cpu_init.c
new file mode 100644
index 000000000000..ec5ee59e169d
--- /dev/null
+++ b/arch/arm/mach-zynq/cpu_init.c
@@ -0,0 +1,15 @@
+// SPDX-License-Identifier: GPL-2.0
+
+#include <common.h>
+#include <asm/barebox-arm-head.h>
+#include <asm/errata.h>
+#include <mach/init.h>
+
+void zynq_cpu_lowlevel_init(void)
+{
+ arm_cpu_lowlevel_init();
+
+ enable_arm_errata_761320_war();
+ enable_arm_errata_794072_war();
+ enable_arm_errata_845369_war();
+}
diff --git a/arch/arm/mach-zynq/include/mach/init.h b/arch/arm/mach-zynq/include/mach/init.h
new file mode 100644
index 000000000000..c458f602e4d7
--- /dev/null
+++ b/arch/arm/mach-zynq/include/mach/init.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+
+#ifndef __MACH_INIT_H
+#define __MACH_INIT_H
+
+void zynq_cpu_lowlevel_init(void);
+
+#endif
--
2.24.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/2] ARM: zynq: zed: use zynq_cpu_lowlevel_init()
2020-01-06 20:29 [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function Lucas Stach
@ 2020-01-06 20:29 ` Lucas Stach
2020-01-08 11:25 ` [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function Sascha Hauer
1 sibling, 0 replies; 3+ messages in thread
From: Lucas Stach @ 2020-01-06 20:29 UTC (permalink / raw)
To: barebox
Make sure the required workarounds for CPU errata are applied.
Signed-off-by: Lucas Stach <dev@lynxeye.de>
---
arch/arm/boards/avnet-zedboard/lowlevel.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boards/avnet-zedboard/lowlevel.c b/arch/arm/boards/avnet-zedboard/lowlevel.c
index 58f9e40d11c9..c987db75b068 100644
--- a/arch/arm/boards/avnet-zedboard/lowlevel.c
+++ b/arch/arm/boards/avnet-zedboard/lowlevel.c
@@ -20,6 +20,7 @@
#include <io.h>
#include <asm/barebox-arm.h>
#include <asm/barebox-arm-head.h>
+#include <mach/init.h>
#include <mach/zynq7000-regs.h>
#define DCI_DONE (1 << 13)
@@ -283,7 +284,7 @@ ENTRY_FUNCTION(start_avnet_zedboard, r0, r1, r2)
void *fdt = __dtb_zynq_zed_start + get_runtime_offset();
- arm_cpu_lowlevel_init();
+ zynq_cpu_lowlevel_init();
avnet_zedboard_ps7_init();
--
2.24.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function
2020-01-06 20:29 [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function Lucas Stach
2020-01-06 20:29 ` [PATCH 2/2] ARM: zynq: zed: use zynq_cpu_lowlevel_init() Lucas Stach
@ 2020-01-08 11:25 ` Sascha Hauer
1 sibling, 0 replies; 3+ messages in thread
From: Sascha Hauer @ 2020-01-08 11:25 UTC (permalink / raw)
To: Lucas Stach; +Cc: barebox
On Mon, Jan 06, 2020 at 09:29:44PM +0100, Lucas Stach wrote:
> This adds a Zynq specific CPU lowlevel init function, which applies
> the required workarounds for the Cortex A9 r3p0 core.
>
> Signed-off-by: Lucas Stach <dev@lynxeye.de>
> ---
> arch/arm/mach-zynq/Makefile | 1 +
> arch/arm/mach-zynq/cpu_init.c | 15 +++++++++++++++
> arch/arm/mach-zynq/include/mach/init.h | 8 ++++++++
> 3 files changed, 24 insertions(+)
> create mode 100644 arch/arm/mach-zynq/cpu_init.c
> create mode 100644 arch/arm/mach-zynq/include/mach/init.h
Applied, thanks
Sascha
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-01-08 11:25 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-06 20:29 [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function Lucas Stach
2020-01-06 20:29 ` [PATCH 2/2] ARM: zynq: zed: use zynq_cpu_lowlevel_init() Lucas Stach
2020-01-08 11:25 ` [PATCH 1/2] ARM: zynq: add Zynq specific lowlevel CPU init function Sascha Hauer
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.