summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2015-04-25 09:03:15 -0400
committerShawn Guo <shawn.guo@linaro.org>2015-06-03 02:44:30 -0400
commit9bbef18750b34fa1d476e46a7833867b49f856c4 (patch)
tree58dc8ec69a7cd45d3fd3739c494d7968aaa29d8d
parent5ab96a8df094b87673b67e4dce70e31248d663a3 (diff)
ARM: imx: move revision definitions and declarations into a header
The revision definitions and declarations are widely used by clock drivers. As a step of moving clock drivers out of arch/arm/mach-imx, let's create header include/soc/imx/revision.h to accommodate them. Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
-rw-r--r--arch/arm/mach-imx/common.h4
-rw-r--r--arch/arm/mach-imx/hardware.h1
-rw-r--r--arch/arm/mach-imx/mx27.h4
-rw-r--r--arch/arm/mach-imx/mx3x.h7
-rw-r--r--arch/arm/mach-imx/mxc.h16
-rw-r--r--include/soc/imx/revision.h37
6 files changed, 38 insertions, 31 deletions
diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
index 5cddd1534265..3682d094a259 100644
--- a/arch/arm/mach-imx/common.h
+++ b/arch/arm/mach-imx/common.h
@@ -56,13 +56,10 @@ struct platform_device *mxc_register_gpio(char *name, int id,
56void mxc_set_cpu_type(unsigned int type); 56void mxc_set_cpu_type(unsigned int type);
57void mxc_restart(enum reboot_mode, const char *); 57void mxc_restart(enum reboot_mode, const char *);
58void mxc_arch_reset_init(void __iomem *); 58void mxc_arch_reset_init(void __iomem *);
59int mx51_revision(void);
60int mx53_revision(void);
61void imx_set_aips(void __iomem *); 59void imx_set_aips(void __iomem *);
62void imx_aips_allow_unprivileged_access(const char *compat); 60void imx_aips_allow_unprivileged_access(const char *compat);
63int mxc_device_init(void); 61int mxc_device_init(void);
64void imx_set_soc_revision(unsigned int rev); 62void imx_set_soc_revision(unsigned int rev);
65unsigned int imx_get_soc_revision(void);
66void imx_init_revision_from_anatop(void); 63void imx_init_revision_from_anatop(void);
67struct device *imx_soc_device_init(void); 64struct device *imx_soc_device_init(void);
68void imx6_enable_rbc(bool enable); 65void imx6_enable_rbc(bool enable);
@@ -87,7 +84,6 @@ enum mx3_cpu_pwr_mode {
87}; 84};
88 85
89void mx3_cpu_lp_set(enum mx3_cpu_pwr_mode mode); 86void mx3_cpu_lp_set(enum mx3_cpu_pwr_mode mode);
90void imx_print_silicon_rev(const char *cpu, int srev);
91 87
92void imx_enable_cpu(int cpu, bool enable); 88void imx_enable_cpu(int cpu, bool enable);
93void imx_set_cpu_jump(int cpu, void *jump_addr); 89void imx_set_cpu_jump(int cpu, void *jump_addr);
diff --git a/arch/arm/mach-imx/hardware.h b/arch/arm/mach-imx/hardware.h
index 76af2c03c241..d737f95ebb07 100644
--- a/arch/arm/mach-imx/hardware.h
+++ b/arch/arm/mach-imx/hardware.h
@@ -22,6 +22,7 @@
22 22
23#ifndef __ASSEMBLY__ 23#ifndef __ASSEMBLY__
24#include <asm/io.h> 24#include <asm/io.h>
25#include <soc/imx/revision.h>
25#endif 26#endif
26#include <asm/sizes.h> 27#include <asm/sizes.h>
27 28
diff --git a/arch/arm/mach-imx/mx27.h b/arch/arm/mach-imx/mx27.h
index 8a65f192e7f3..f96bb2642677 100644
--- a/arch/arm/mach-imx/mx27.h
+++ b/arch/arm/mach-imx/mx27.h
@@ -231,8 +231,4 @@
231#define MX27_DMA_REQ_SDHC3 36 231#define MX27_DMA_REQ_SDHC3 36
232#define MX27_DMA_REQ_NFC 37 232#define MX27_DMA_REQ_NFC 37
233 233
234#ifndef __ASSEMBLY__
235extern int mx27_revision(void);
236#endif
237
238#endif /* ifndef __MACH_MX27_H__ */ 234#endif /* ifndef __MACH_MX27_H__ */
diff --git a/arch/arm/mach-imx/mx3x.h b/arch/arm/mach-imx/mx3x.h
index 96fb4fbc8ad7..6fec6114c2f1 100644
--- a/arch/arm/mach-imx/mx3x.h
+++ b/arch/arm/mach-imx/mx3x.h
@@ -185,11 +185,4 @@
185 185
186#define MX3x_PROD_SIGNATURE 0x1 /* For MX31 */ 186#define MX3x_PROD_SIGNATURE 0x1 /* For MX31 */
187 187
188/* Mandatory defines used globally */
189
190#if !defined(__ASSEMBLY__) && !defined(__MXC_BOOT_UNCOMPRESS)
191extern int mx35_revision(void);
192extern int mx31_revision(void);
193#endif
194
195#endif /* ifndef __MACH_MX3x_H__ */ 188#endif /* ifndef __MACH_MX3x_H__ */
diff --git a/arch/arm/mach-imx/mxc.h b/arch/arm/mach-imx/mxc.h
index 4c1343df2ba4..8726051fcfca 100644
--- a/arch/arm/mach-imx/mxc.h
+++ b/arch/arm/mach-imx/mxc.h
@@ -39,22 +39,6 @@
39#define MXC_CPU_IMX6SX 0x62 39#define MXC_CPU_IMX6SX 0x62
40#define MXC_CPU_IMX6Q 0x63 40#define MXC_CPU_IMX6Q 0x63
41 41
42#define IMX_CHIP_REVISION_1_0 0x10
43#define IMX_CHIP_REVISION_1_1 0x11
44#define IMX_CHIP_REVISION_1_2 0x12
45#define IMX_CHIP_REVISION_1_3 0x13
46#define IMX_CHIP_REVISION_1_4 0x14
47#define IMX_CHIP_REVISION_1_5 0x15
48#define IMX_CHIP_REVISION_2_0 0x20
49#define IMX_CHIP_REVISION_2_1 0x21
50#define IMX_CHIP_REVISION_2_2 0x22
51#define IMX_CHIP_REVISION_2_3 0x23
52#define IMX_CHIP_REVISION_3_0 0x30
53#define IMX_CHIP_REVISION_3_1 0x31
54#define IMX_CHIP_REVISION_3_2 0x32
55#define IMX_CHIP_REVISION_3_3 0x33
56#define IMX_CHIP_REVISION_UNKNOWN 0xff
57
58#define IMX_DDR_TYPE_LPDDR2 1 42#define IMX_DDR_TYPE_LPDDR2 1
59 43
60#ifndef __ASSEMBLY__ 44#ifndef __ASSEMBLY__
diff --git a/include/soc/imx/revision.h b/include/soc/imx/revision.h
new file mode 100644
index 000000000000..9ea346924c35
--- /dev/null
+++ b/include/soc/imx/revision.h
@@ -0,0 +1,37 @@
1/*
2 * Copyright 2015 Linaro Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9#ifndef __SOC_IMX_REVISION_H__
10#define __SOC_IMX_REVISION_H__
11
12#define IMX_CHIP_REVISION_1_0 0x10
13#define IMX_CHIP_REVISION_1_1 0x11
14#define IMX_CHIP_REVISION_1_2 0x12
15#define IMX_CHIP_REVISION_1_3 0x13
16#define IMX_CHIP_REVISION_1_4 0x14
17#define IMX_CHIP_REVISION_1_5 0x15
18#define IMX_CHIP_REVISION_2_0 0x20
19#define IMX_CHIP_REVISION_2_1 0x21
20#define IMX_CHIP_REVISION_2_2 0x22
21#define IMX_CHIP_REVISION_2_3 0x23
22#define IMX_CHIP_REVISION_3_0 0x30
23#define IMX_CHIP_REVISION_3_1 0x31
24#define IMX_CHIP_REVISION_3_2 0x32
25#define IMX_CHIP_REVISION_3_3 0x33
26#define IMX_CHIP_REVISION_UNKNOWN 0xff
27
28int mx27_revision(void);
29int mx31_revision(void);
30int mx35_revision(void);
31int mx51_revision(void);
32int mx53_revision(void);
33
34unsigned int imx_get_soc_revision(void);
35void imx_print_silicon_rev(const char *cpu, int srev);
36
37#endif /* __SOC_IMX_REVISION_H__ */