aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYangbo Lu <yangbo.lu@nxp.com>2017-12-25 14:38:11 +0800
committerHauke Mehrtens <hauke@hauke-m.de>2017-12-26 23:30:59 +0100
commitab8da4d2854908578fefa08f73c4a87716127f68 (patch)
treefc3b5d936e660f030a41da6100ad0f5d97e9361f
parent5741835ed48c9205ff2cfd9f5ee9fe8fd997cad5 (diff)
downloadupstream-ab8da4d2854908578fefa08f73c4a87716127f68.tar.gz
upstream-ab8da4d2854908578fefa08f73c4a87716127f68.tar.bz2
upstream-ab8da4d2854908578fefa08f73c4a87716127f68.zip
layerscape: add byte_swap.py script for ls-rcw package
This patch is to add a byte_swap.py script for rcw bin byte swapping instead of using tclsh. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
-rw-r--r--package/firmware/layerscape/ls-rcw/Makefile2
-rw-r--r--package/firmware/layerscape/ls-rcw/patches/0001-makefile-generate-byte_swap-rcw-for-ls1046ardb.patch26
-rw-r--r--package/firmware/layerscape/ls-rcw/patches/0001-rcw-add-a-python-script-for-byte-swapping.patch66
3 files changed, 67 insertions, 27 deletions
diff --git a/package/firmware/layerscape/ls-rcw/Makefile b/package/firmware/layerscape/ls-rcw/Makefile
index b0d582ef20..70791d47b6 100644
--- a/package/firmware/layerscape/ls-rcw/Makefile
+++ b/package/firmware/layerscape/ls-rcw/Makefile
@@ -38,7 +38,7 @@ endef
define rcw/ls1046ardb
TITLE=RCW binary $(PKG_VERSION) for NXP ls1046ardb 64b/32b Dev Board
- CONFIG=ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot_swap.bin
+ CONFIG=ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin.swap
endef
define rcw/ls1012ardb
diff --git a/package/firmware/layerscape/ls-rcw/patches/0001-makefile-generate-byte_swap-rcw-for-ls1046ardb.patch b/package/firmware/layerscape/ls-rcw/patches/0001-makefile-generate-byte_swap-rcw-for-ls1046ardb.patch
deleted file mode 100644
index 1eac881899..0000000000
--- a/package/firmware/layerscape/ls-rcw/patches/0001-makefile-generate-byte_swap-rcw-for-ls1046ardb.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 6836519a638a0c30ef3d2137c248a1a9f1befbc4 Mon Sep 17 00:00:00 2001
-From: Yangbo Lu <yangbo.lu@nxp.com>
-Date: Tue, 4 Jul 2017 20:25:40 +0800
-Subject: [PATCH] makefile: generate byte_swap rcw for ls1046ardb
-
-Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
----
- Makefile | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/Makefile b/Makefile
-index fb55c8b..ab1b573 100644
---- a/Makefile
-+++ b/Makefile
-@@ -11,6 +11,8 @@ all install clean:
- @for board in $(BOARDS); do \
- $(MAKE) -C $$board $@ DESTDIR=$(DESTDIR)/$$board; \
- done
-+ tclsh ./tools/byte_swap.tcl ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin \
-+ ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot_swap.bin 8
-
- release: $(foreach board,$(BOARDS),rcw-$(board)-$(VER).tar.gz)
-
---
-2.7.4
-
diff --git a/package/firmware/layerscape/ls-rcw/patches/0001-rcw-add-a-python-script-for-byte-swapping.patch b/package/firmware/layerscape/ls-rcw/patches/0001-rcw-add-a-python-script-for-byte-swapping.patch
new file mode 100644
index 0000000000..a2b7140654
--- /dev/null
+++ b/package/firmware/layerscape/ls-rcw/patches/0001-rcw-add-a-python-script-for-byte-swapping.patch
@@ -0,0 +1,66 @@
+From ebded197f9c12168d61973043fd9ebd5d49528a8 Mon Sep 17 00:00:00 2001
+From: Yangbo Lu <yangbo.lu@nxp.com>
+Date: Mon, 25 Dec 2017 14:11:02 +0800
+Subject: [PATCH] rcw: add a python script for byte swapping
+
+Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
+---
+ Makefile | 2 ++
+ byte_swap.py | 32 ++++++++++++++++++++++++++++++++
+ 2 files changed, 34 insertions(+)
+ create mode 100755 byte_swap.py
+
+diff --git a/Makefile b/Makefile
+index fb55c8b..27e3ba2 100644
+--- a/Makefile
++++ b/Makefile
+@@ -11,6 +11,8 @@ all install clean:
+ @for board in $(BOARDS); do \
+ $(MAKE) -C $$board $@ DESTDIR=$(DESTDIR)/$$board; \
+ done
++ chmod 755 ./byte_swap.py; \
++ ./byte_swap.py ls1046ardb/RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot.bin 8
+
+ release: $(foreach board,$(BOARDS),rcw-$(board)-$(VER).tar.gz)
+
+diff --git a/byte_swap.py b/byte_swap.py
+new file mode 100755
+index 0000000..7ee4129
+--- /dev/null
++++ b/byte_swap.py
+@@ -0,0 +1,32 @@
++#!/usr/bin/env python
++"""
++Swap the 4/8 bytes endian except for PBI CRC
++2016-10-9: Initial version
++
++Usage:
++ ./byte_swap.py <file_name> <byte>
++"""
++import sys
++
++try:
++ file_name = sys.argv[1]
++ byte = int(sys.argv[2])
++except:
++ print("Usage: ./byte_swap.py <file_name> <byte>")
++ print("E.g.: ./byte_swap.py rcw_1600.bin 8\n")
++ exit
++
++with open(file_name,'rb') as file:
++ tmp = file.read()
++file.close()
++
++with open(file_name + '.swap','wb') as file:
++ for i in range(0, len(tmp) - 1, byte):
++ if(tmp[i:i+4].encode('hex')) == "08610040":
++ #print("PBI CRC command")
++ file.write(tmp[i:i+8])
++ break
++ file.write(tmp[i:i+byte][::-1])
++file.close()
++
++print("Swapped file: " + file_name + '.swap')
+--
+2.7.4
+