arm: zynq: Move ps7_* to separate file
authorMichal Simek <michal.simek@xilinx.com>
Wed, 8 Nov 2017 15:14:47 +0000 (16:14 +0100)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 29 Nov 2017 07:02:39 +0000 (08:02 +0100)
Extract ps7_* from spl code to prepare for extension.
And also return value.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/arm/mach-zynq/Makefile
arch/arm/mach-zynq/include/mach/ps7_init_gpl.h [new file with mode: 0644]
arch/arm/mach-zynq/include/mach/sys_proto.h
arch/arm/mach-zynq/ps7_spl_init.c [new file with mode: 0644]
arch/arm/mach-zynq/spl.c

index bf29b4d396d3abeda7fe24964171340a9e4b2bb2..e3f0117da56305cef997f1608c76edc882e13270 100644 (file)
@@ -15,4 +15,4 @@ obj-y += slcr.o
 obj-y  += clk.o
 obj-y  += lowlevel_init.o
 AFLAGS_lowlevel_init.o := -mfpu=neon
-obj-$(CONFIG_SPL_BUILD)        += spl.o
+obj-$(CONFIG_SPL_BUILD)        += spl.o ps7_spl_init.o
diff --git a/arch/arm/mach-zynq/include/mach/ps7_init_gpl.h b/arch/arm/mach-zynq/include/mach/ps7_init_gpl.h
new file mode 100644 (file)
index 0000000..6e30108
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * (c) Copyright 2010-2017 Xilinx, Inc. All rights reserved.
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+#ifndef _ASM_ARCH_PS7_INIT_GPL_H
+#define _ASM_ARCH_PS7_INIT_GPL_H
+
+/* Called by spl.c */
+int ps7_init(void);
+int ps7_post_config(void);
+
+#endif /* _ASM_ARCH_PS7_INIT_GPL_H */
index 0ef688309da35de8ec86fffe0b587c57c603abbe..af61352dd1108345e44fe50cb22207597f6efa1f 100644 (file)
@@ -20,8 +20,4 @@ extern unsigned int zynq_get_silicon_version(void);
 
 int zynq_board_read_rom_ethaddr(unsigned char *ethaddr);
 
-/* Driver extern functions */
-extern void ps7_init(void);
-int ps7_post_config(void);
-
 #endif /* _SYS_PROTO_H_ */
diff --git a/arch/arm/mach-zynq/ps7_spl_init.c b/arch/arm/mach-zynq/ps7_spl_init.c
new file mode 100644 (file)
index 0000000..6adf852
--- /dev/null
@@ -0,0 +1,27 @@
+/*
+ * (c) Copyright 2010-2017 Xilinx, Inc. All rights reserved.
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+#include <asm/io.h>
+#include <asm/spl.h>
+#include <asm/arch/ps7_init_gpl.h>
+
+__weak int ps7_init(void)
+{
+       /*
+        * This function is overridden by the one in
+        * board/xilinx/zynq/(platform)/ps7_init_gpl.c, if it exists.
+        */
+       return 0;
+}
+
+__weak int ps7_post_config(void)
+{
+       /*
+        * This function is overridden by the one in
+        * board/xilinx/zynq/(platform)/ps7_init_gpl.c, if it exists.
+        */
+       return 0;
+}
index e8added155672f0905b3740b7ea6e55e605f7e09..1672fa05c26a191857e1398b73a5f8d7e0f190f0 100644 (file)
@@ -11,6 +11,7 @@
 #include <asm/spl.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/arch/ps7_init_gpl.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -83,23 +84,6 @@ int spl_start_uboot(void)
 }
 #endif
 
-__weak void ps7_init(void)
-{
-       /*
-        * This function is overridden by the one in
-        * board/xilinx/zynq/(platform)/ps7_init_gpl.c, if it exists.
-        */
-}
-
-__weak int ps7_post_config(void)
-{
-       /*
-        * This function is overridden by the one in
-        * board/xilinx/zynq/(platform)/ps7_init_gpl.c, if it exists.
-        */
-       return 0;
-}
-
 void spl_board_prepare_for_boot(void)
 {
        ps7_post_config();