From: Philipp Tomsich Date: Wed, 15 Mar 2017 11:08:42 +0000 (+0100) Subject: rockchip: mkimage: simplify start/size calculation for rc4_encode X-Git-Tag: v2017.05-rc2~157 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=f3edf8b18ff6a6f5bf9893da5460449bae028430;p=u-boot rockchip: mkimage: simplify start/size calculation for rc4_encode The RC4 encoding works on full blocks, but the calculation of the starting offset and size are needlessly complicated by using a reference value known to be offset into a block by the size of the header and then correcting for the (hard-coded) size of the header (i.e. 4 bytes). We change this over to use the RK_SPL_HDR_START directly (which is known to be on a block boundary). X-AffectedPlatforms: RK3399-Q7 Signed-off-by: Philipp Tomsich Tested-by: Klaus Goger --- diff --git a/tools/rksd.c b/tools/rksd.c index ff2233ff2d..e55c52267f 100644 --- a/tools/rksd.c +++ b/tools/rksd.c @@ -43,8 +43,8 @@ static void rksd_set_header(void *buf, struct stat *sbuf, int ifd, RK_SPL_HDR_SIZE); if (rkcommon_need_rc4_spl(params)) - rkcommon_rc4_encode_spl(buf, RK_SPL_START - 4, - params->file_size - RK_SPL_START + 4); + rkcommon_rc4_encode_spl(buf, RK_SPL_HDR_START, + params->file_size - RK_SPL_HDR_START); } static int rksd_extract_subimage(void *buf, struct image_tool_params *params) diff --git a/tools/rkspi.c b/tools/rkspi.c index 0271d2e817..9fa43e8303 100644 --- a/tools/rkspi.c +++ b/tools/rkspi.c @@ -49,8 +49,8 @@ static void rkspi_set_header(void *buf, struct stat *sbuf, int ifd, RK_SPL_HDR_SIZE); if (rkcommon_need_rc4_spl(params)) - rkcommon_rc4_encode_spl(buf, RK_SPL_START - 4, - params->file_size - RK_SPL_START + 4); + rkcommon_rc4_encode_spl(buf, RK_SPL_HDR_START, + params->file_size - RK_SPL_HDR_START); /* * Spread the image out so we only use the first 2KB of each 4KB