]> git.sur5r.net Git - openocd/commitdiff
target/image: Add support for S6 record in Motorola SREC files
authorBohdan Tymkiv <bhdt@cypress.com>
Fri, 10 Aug 2018 08:31:29 +0000 (11:31 +0300)
committerTomas Vanek <vanekt@fbl.cz>
Sun, 18 Nov 2018 08:21:25 +0000 (08:21 +0000)
S6 record is equivalent to S5 but it uses 24-bit value (instead of 16-bit)
to store total number of data records. It can be found in big srec files
with total number of data records bigger than 65535

Handle S6 record in the same way as S5 (simply ignore it)

Change-Id: I3e15a4e8f784fd38803c00accf422f803e8469cd
Signed-off-by: Bohdan Tymkiv <bhdt@cypress.com>
Reviewed-on: http://openocd.zylin.com/4645
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/target/image.c

index 0d98c57b2a5d414edb2e835e0b488fafd315216e..9bd8f6b0c6f492074ae56b0571273a5329efd784 100644 (file)
@@ -643,8 +643,8 @@ static int image_mot_buffer_complete_inner(struct image *image,
                                        section[image->num_sections].size += 1;
                                        full_address++;
                                }
                                        section[image->num_sections].size += 1;
                                        full_address++;
                                }
-                       } else if (record_type == 5) {
-                               /* S5 is the data count record, we ignore it */
+                       } else if (record_type == 5 || record_type == 6) {
+                               /* S5 and S6 are the data count records, we ignore them */
                                uint32_t dummy;
 
                                while (count-- > 0) {
                                uint32_t dummy;
 
                                while (count-- > 0) {