diff options
author | Andrey Smirnov <andrew.smirnov@gmail.com> | 2018-08-10 12:04:27 -0700 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-08-13 09:12:03 +0200 |
commit | 60a79c025a36366cb9ce4e218ff17d55d049ace6 (patch) | |
tree | ef1203e4ed56a89bdcb783a4d25914ce47cb47e9 /arch | |
parent | aee10ec8cc64e8c84cf92a80dc96cc8f9dd65b50 (diff) | |
download | barebox-60a79c025a36366cb9ce4e218ff17d55d049ace6.tar.gz barebox-60a79c025a36366cb9ce4e218ff17d55d049ace6.tar.xz |
ARM: i.MX8MQ: Replace magic numbers with named constants
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-imx/imx8mq.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-imx/include/mach/imx8mq.h | 11 |
2 files changed, 11 insertions, 6 deletions
diff --git a/arch/arm/mach-imx/imx8mq.c b/arch/arm/mach-imx/imx8mq.c index bc463ee75d..95839f31de 100644 --- a/arch/arm/mach-imx/imx8mq.c +++ b/arch/arm/mach-imx/imx8mq.c @@ -47,13 +47,13 @@ core_initcall(imx8mq_init_syscnt_frequency); int imx8mq_init(void) { void __iomem *anatop = IOMEM(MX8MQ_ANATOP_BASE_ADDR); - uint32_t reg = readl(anatop + MX8MQ_ANATOP_DIGPROG); - uint32_t type = (reg >> 16) & 0xff; + uint32_t type = FIELD_GET(DIGPROG_MAJOR, + readl(anatop + MX8MQ_ANATOP_DIGPROG)); struct arm_smccc_res res; const char *cputypestr; switch (type) { - case 0x82: + case IMX8M_CPUTYPE_IMX8MQ: cputypestr = "i.MX8MQ"; break; default: diff --git a/arch/arm/mach-imx/include/mach/imx8mq.h b/arch/arm/mach-imx/include/mach/imx8mq.h index f51d4e6641..f4a537d2b1 100644 --- a/arch/arm/mach-imx/include/mach/imx8mq.h +++ b/arch/arm/mach-imx/include/mach/imx8mq.h @@ -5,18 +5,23 @@ #include <mach/generic.h> #include <mach/imx8mq-regs.h> #include <mach/revision.h> +#include <linux/bitfield.h> #define IMX8MQ_ROM_VERSION_A0 0x800 #define IMX8MQ_ROM_VERSION_B0 0x83C #define MX8MQ_ANATOP_DIGPROG 0x6c +#define DIGPROG_MAJOR GENMASK(23, 8) +#define DIGPROG_MINOR GENMASK(7, 0) + +#define IMX8M_CPUTYPE_IMX8MQ 0x8240 + static inline int imx8mq_cpu_revision(void) { void __iomem *anatop = IOMEM(MX8MQ_ANATOP_BASE_ADDR); - uint32_t revision = readl(anatop + MX8MQ_ANATOP_DIGPROG); - - revision &= 0xff; + uint32_t revision = FIELD_GET(DIGPROG_MINOR, + readl(anatop + MX8MQ_ANATOP_DIGPROG)); if (revision == IMX_CHIP_REV_1_0) { uint32_t rom_version; |