[PATCH 1/4] ARM: i.MX: bbu-internal: factor out a prereq function
Sascha Hauer
s.hauer at pengutronix.de
Tue Aug 6 09:42:51 EDT 2013
To elminate some code duplication.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
arch/arm/mach-imx/imx-bbu-internal.c | 30 ++++++++++++++++++------------
1 file changed, 18 insertions(+), 12 deletions(-)
diff --git a/arch/arm/mach-imx/imx-bbu-internal.c b/arch/arm/mach-imx/imx-bbu-internal.c
index bbc620a..70b7c44 100644
--- a/arch/arm/mach-imx/imx-bbu-internal.c
+++ b/arch/arm/mach-imx/imx-bbu-internal.c
@@ -103,6 +103,22 @@ err_close:
return ret;
}
+static int imx_bbu_check_prereq(struct bbu_data *data)
+{
+ int ret;
+
+ if (file_detect_type(data->image, data->len) != filetype_arm_barebox) {
+ if (!bbu_force(data, "Not an ARM barebox image"))
+ return -EINVAL;
+ }
+
+ ret = bbu_confirm(data);
+ if (ret)
+ return ret;
+
+ return 0;
+}
+
/*
* Update barebox on a v1 type internal boot (i.MX25, i.MX35, i.MX51)
*
@@ -122,12 +138,7 @@ static int imx_bbu_internal_v1_update(struct bbu_handler *handler, struct bbu_da
int ret, image_len;
void *buf;
- if (file_detect_type(data->image, data->len) != filetype_arm_barebox) {
- if (!bbu_force(data, "Not an ARM barebox image"))
- return -EINVAL;
- }
-
- ret = bbu_confirm(data);
+ ret = imx_bbu_check_prereq(data);
if (ret)
return ret;
@@ -344,12 +355,7 @@ static int imx_bbu_internal_v2_update(struct bbu_handler *handler, struct bbu_da
int ret, image_len;
void *buf;
- if (file_detect_type(data->image, data->len) != filetype_arm_barebox) {
- if (!bbu_force(data, "Not an ARM barebox image"))
- return -EINVAL;
- }
-
- ret = bbu_confirm(data);
+ ret = imx_bbu_check_prereq(data);
if (ret)
return ret;
--
1.8.4.rc1
More information about the barebox
mailing list