[PATCH 1/2] ARM: i.MX: boot: Make use of FIELD_GET() in imx51_get_boot_source()

Andrey Smirnov andrew.smirnov at gmail.com
Wed Sep 19 08:48:46 PDT 2018


Signed-off-by: Andrey Smirnov <andrew.smirnov at gmail.com>
---
 arch/arm/mach-imx/boot.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-imx/boot.c b/arch/arm/mach-imx/boot.c
index f1fc40479..830ea08f3 100644
--- a/arch/arm/mach-imx/boot.c
+++ b/arch/arm/mach-imx/boot.c
@@ -167,10 +167,10 @@ void imx27_boot_save_loc(void)
 	imx_boot_save_loc(imx27_get_boot_source);
 }
 
-#define IMX51_SRC_SBMR			0x4
-#define IMX51_SBMR_BT_MEM_TYPE_SHIFT	7
-#define IMX51_SBMR_BT_MEM_CTL_SHIFT	0
-#define IMX51_SBMR_BMOD_SHIFT		14
+#define IMX51_SRC_SBMR		0x4
+#define IMX51_SBMR_BT_MEM_TYPE	GENMASK(8, 7)
+#define IMX51_SBMR_BT_MEM_CTL	GENMASK(1, 0)
+#define IMX51_SBMR_BMOD		GENMASK(15, 14)
 
 void imx51_get_boot_source(enum bootsource *src, int *instance)
 {
@@ -180,12 +180,12 @@ void imx51_get_boot_source(enum bootsource *src, int *instance)
 
 	reg = readl(src_base + IMX51_SRC_SBMR);
 
-	switch ((reg >> IMX51_SBMR_BMOD_SHIFT) & 0x3) {
+	switch (FIELD_GET(IMX51_SBMR_BMOD, reg)) {
 	case 0:
 	case 2:
 		/* internal boot */
-		ctrl = (reg >> IMX51_SBMR_BT_MEM_CTL_SHIFT) & 0x3;
-		type = (reg >> IMX51_SBMR_BT_MEM_TYPE_SHIFT) & 0x3;
+		ctrl = FIELD_GET(IMX51_SBMR_BT_MEM_CTL, reg);
+		type = FIELD_GET(IMX51_SBMR_BT_MEM_TYPE, reg);
 
 		*src = locations[ctrl][type];
 		break;
-- 
2.17.1




More information about the barebox mailing list