| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- From c87a500c45f36ad248b1298d63e590d1d7e74f12 Mon Sep 17 00:00:00 2001
- From: Yangbo Lu <[email protected]>
- Date: Tue, 3 Jul 2018 11:06:47 +0800
- Subject: [PATCH] rcw: support byte swapping without tclsh tool
- Signed-off-by: Yangbo Lu <[email protected]>
- ---
- Makefile | 4 ----
- byte_swap.py | 32 ++++++++++++++++++++++++++++++++
- qspi_swap.sh | 2 +-
- 3 files changed, 33 insertions(+), 5 deletions(-)
- create mode 100755 byte_swap.py
- diff --git a/Makefile b/Makefile
- index 9f0587e..393bb2c 100644
- --- a/Makefile
- +++ b/Makefile
- @@ -13,10 +13,6 @@ TCLSH := $(shell command -v tclsh 2> /dev/null)
- VER = $(shell git describe --tags)
-
- all install clean:
- -ifndef TCLSH
- - $(error "tclsh is not available. please install it.")
- - exit 1
- -endif
- @for board in $(BOARDS); do \
- $(MAKE) -C $$board $@ DESTDIR=$(DESTDIR)/$$board; \
- done
- diff --git a/byte_swap.py b/byte_swap.py
- new file mode 100755
- index 0000000..386310e
- --- /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 + '.swapped','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 + '.swapped')
- diff --git a/qspi_swap.sh b/qspi_swap.sh
- index 0b58e44..d23fd8b 100755
- --- a/qspi_swap.sh
- +++ b/qspi_swap.sh
- @@ -9,7 +9,7 @@ do
- if [ "$board_name" = "$current_dir" ]; then
- if [ -e $filename ]; then
- swapped_file="$filename.swapped"
- - tclsh ../tools/byte_swap.tcl $filename $swapped_file 8
- + ../byte_swap.py $filename 8
- fi
- fi
- done < $1
- --
- 1.7.1
|