bl33: uboot 2023 bringup [1/1]
PD#SWPL-105943
Problem:
uboot 2023 bringup on s4
Solution:
add s4 environment of uboot 2023
Verify:
compile pass on s4_ap222
Change-Id: I9f53a8413551bacf9dddf27e75224728c22cf1e7
Signed-off-by: Bo Lv <bo.lv@amlogic.com>
diff --git a/scripts/amlogic/coding_style/auto_fix.py b/scripts/amlogic/coding_style/auto_fix.py
new file mode 100755
index 0000000..498cfae
--- /dev/null
+++ b/scripts/amlogic/coding_style/auto_fix.py
@@ -0,0 +1,255 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+# Amlogic gerrit code auto-fix script
+# Author: xiaobo.gu@amlogic.com
+# Init version: 2015.05.01
+
+import sys, os
+import json
+
+MESSAGE_INFO_1 = "trailing spaces"
+MESSAGE_INFO_2 = "spacing around parenthesis"
+MESSAGE_INFO_3 = "spacing around =="
+MESSAGE_INFO_4 = "spacing around !="
+MESSAGE_INFO_5 = "do {"
+MESSAGE_INFO_6 = "file should not be executable"
+MESSAGE_INFO_7 = "possibly incorrect mixed spaces then tabs indentation"
+MESSAGE_INFO_8 = "file should not have carriage returns"
+MESSAGE_INFO_9 = "make sure indent style matches rest of file"
+MESSAGE_INFO_10 = "spacing around &&"
+MESSAGE_INFO_11 = "spacing around ||"
+MESSAGE_INFO_12 = "spacing around >="
+MESSAGE_INFO_13 = "spacing around <="
+
+class fixer(object):
+ def __init__(self, filename):
+ self.filename = filename
+ self.info_review = None
+ self.info_comment = None
+ self.info_labels = None
+ self.cur_file_name = ""
+ self.cur_file_lines = 0
+ self.cur_file_content = ""
+ self.cur_line_content = ""
+ self.cur_line = 0
+ self.cur_message = ""
+ self.verified = -1
+
+ def read_log(self):
+ self.file_handle = open(self.filename)
+ self.info_str = self.file_handle.read()
+ self.file_handle.close()
+ self.info_review = json.loads(self.info_str)
+ self.info_comment = self.info_review.get("comments")
+ self.info_labels = self.info_review.get("labels")
+
+ def fix(self):
+ self.verified = self.info_labels.get("Verified")
+ if(1 == self.verified):
+ print "Verified +1, Quit..."
+ return
+ for file_info in self.info_comment:
+ print file_info
+ #print self.cur_file_content
+ #for line in self.cur_file_content:
+ # print line,
+ # start fix for each warning line
+ for message_info in self.info_comment[file_info]:
+ self.cur_file_name = file_info
+ self.cur_message = message_info.get("message")
+ self.cur_line = (int)(message_info.get("line")) - 1 # index-1
+
+ if (self.cur_line >= 0):
+ # <0 always means line0 error,
+ # that means file format error etc..
+ # it's no need open the file
+ cur_file = open(file_info) # open current file
+ self.cur_file_content = cur_file.readlines() # get all content of current file, and split info lines
+ cur_file.close() # close current file
+ self.cur_file_lines = len(self.cur_file_content)
+ self.cur_line_content = str(self.cur_file_content[self.cur_line])
+ self.message_handler()
+ if (self.cur_line >= 0):
+ # <0 always means line0 error,
+ # that means file format error etc..
+ # it's no need write back current line
+ self.cur_file_content[self.cur_line] = self.cur_line_content
+ cur_file = open(file_info, 'w') # open current file
+ cur_file.writelines(self.cur_file_content) # save file
+ cur_file.close() # close current file
+
+ def message_handler(self):
+ if (self.cur_message.find(MESSAGE_INFO_1) >= 0):
+ self.message_1()
+ if (self.cur_message.find(MESSAGE_INFO_2) >= 0):
+ self.message_2()
+ if (self.cur_message.find(MESSAGE_INFO_3) >= 0):
+ self.message_3()
+ if (self.cur_message.find(MESSAGE_INFO_4) >= 0):
+ self.message_4()
+ if (self.cur_message.find(MESSAGE_INFO_5) >= 0):
+ self.message_5()
+ if (self.cur_message.find(MESSAGE_INFO_6) >= 0):
+ self.message_6()
+ if (self.cur_message.find(MESSAGE_INFO_7) >= 0):
+ self.message_7()
+ if (self.cur_message.find(MESSAGE_INFO_8) >= 0):
+ self.message_8()
+ if (self.cur_message.find(MESSAGE_INFO_9) >= 0):
+ self.message_9()
+ if (self.cur_message.find(MESSAGE_INFO_10) >= 0):
+ self.message_10()
+ if (self.cur_message.find(MESSAGE_INFO_11) >= 0):
+ self.message_11()
+ if (self.cur_message.find(MESSAGE_INFO_12) >= 0):
+ self.message_12()
+ if (self.cur_message.find(MESSAGE_INFO_13) >= 0):
+ self.message_13()
+
+ def message_1(self):
+ # acknowledge bug: can not fix last line with last blank character
+ '''MESSAGE_INFO_1 start'''
+ #print " -", self.cur_line, self.cur_line_content,
+ cur_line_length = len(self.cur_line_content)
+ #print "cur_line_length", cur_line_length
+ #print self.cur_line_content
+ for cur_length in range(cur_line_length-1):
+ #print cur_length
+ cur_char_pos = cur_line_length-2-cur_length
+ #print cur_char_pos
+ #print self.cur_line_content[cur_char_pos]
+ #print self.cur_line_content
+ #print self.cur_line_content[0:cur_char_pos], "test"
+ if (self.cur_line_content[cur_char_pos] == ' ') or \
+ (self.cur_line_content[cur_char_pos] == ' ') :
+ self.cur_line_content = self.cur_line_content[0:cur_char_pos] + '\n'
+ #print self.cur_line_content
+ else:
+ break
+ '''MESSAGE_INFO_1 end'''
+
+ def message_2(self):
+ '''MESSAGE_INFO_2 start'''
+ cur_line_length = len(self.cur_line_content)
+ # search parenthesis from left
+ pare_pos_left = self.cur_line_content.find('(')
+ #print "self.cur_line_content[pare_pos_left]:", self.cur_line_content[pare_pos_left-1]
+ #print self.cur_line_content
+ # insert blank char if doesn't have one
+ if (pare_pos_left > 0) and (' ' != self.cur_line_content[pare_pos_left-1]):
+ self.cur_line_content = self.cur_line_content[0:pare_pos_left] + ' ' + self.cur_line_content[pare_pos_left:cur_line_length]
+ #print self.cur_line_content
+ # re-calculate cur line length, maybe previous operations changed it's content
+ cur_line_length = len(self.cur_line_content)
+ # search parenthesis from right
+ pare_pos_right = self.cur_line_content.rfind(')')
+ if ((pare_pos_right+1) <= cur_line_length):
+ #print "self.cur_line_content[pare_pos_right]:", self.cur_line_content[pare_pos_right+1]
+ #print self.cur_line_content
+ if (pare_pos_right > 0) and (' ' != self.cur_line_content[pare_pos_right+1]) and \
+ ('\n' != self.cur_line_content[pare_pos_right+1]):
+ self.cur_line_content = self.cur_line_content[0:pare_pos_right+1] + ' ' + self.cur_line_content[pare_pos_right+1:cur_line_length]
+ #print self.cur_line_content
+ '''MESSAGE_INFO_2 end'''
+
+ def message_3(self):
+ self.message_space_around("==")
+
+ def message_4(self):
+ self.message_space_around("!=")
+
+ def message_5(self):
+ cur_line_length = len(self.cur_line_content)
+ msg_pos = self.cur_line_content.find("do")
+ #print "self.cur_line_content[msg_pos+2]", self.cur_line_content[msg_pos+2]
+ if (' ' != self.cur_line_content[msg_pos+2]):
+ self.cur_line_content = self.cur_line_content[0:msg_pos+2] + ' ' + self.cur_line_content[msg_pos+2:cur_line_length]
+
+ def message_6(self):
+ shell_cmd = "chmod -x " + self.cur_file_name
+ os.system(shell_cmd)
+
+ def message_7(self):
+ cur_line_length = len(self.cur_line_content)
+ cur_line_first_noblank_pos = 0
+ # find out first non-blank(' '&' ') char
+ for cur_char_pos in range(cur_line_length):
+ if (' ' != self.cur_line_content[cur_char_pos]) and \
+ (' ' != self.cur_line_content[cur_char_pos]):
+ cur_line_first_noblank_pos = cur_char_pos
+ break
+ #print self.cur_line_content
+ # replace these 4' 's with tab, 1,2,3 blanks will be deleted
+ no_blank_str = self.cur_line_content[0:cur_line_first_noblank_pos]
+ no_blank_str = no_blank_str.replace(" ", " ")
+ no_blank_str = no_blank_str.replace(" ", "")
+ no_blank_str = no_blank_str.replace(" ", "")
+ no_blank_str = no_blank_str.replace(" ", "")
+ self.cur_line_content = no_blank_str + self.cur_line_content[cur_line_first_noblank_pos:cur_line_length]
+
+ def message_8(self):
+ shell_cmd = "dos2unix -o -f " + self.cur_file_name
+ os.system(shell_cmd)
+
+ def message_9(self):
+ cur_line_length = len(self.cur_line_content)
+ cur_line_first_noblank_pos = 0
+ # find out first non-blank(' '&' ') char
+ for cur_char_pos in range(cur_line_length):
+ if (' ' != self.cur_line_content[cur_char_pos]) and \
+ (' ' != self.cur_line_content[cur_char_pos]):
+ cur_line_first_noblank_pos = cur_char_pos
+ break
+ no_blank_str = self.cur_line_content[0:cur_line_first_noblank_pos]
+ no_blank_str_tmp = no_blank_str.replace(" ", " ")
+ if (no_blank_str_tmp == no_blank_str):
+ no_blank_str = no_blank_str.replace(" ", " ")
+ else:
+ no_blank_str = no_blank_str_tmp
+ #print self.cur_line_content
+ self.cur_line_content = no_blank_str + self.cur_line_content[cur_line_first_noblank_pos:cur_line_length]
+ #print self.cur_line_content
+
+ def message_10(self):
+ self.message_space_around("&&")
+
+ def message_11(self):
+ self.message_space_around("||")
+
+ def message_12(self):
+ self.message_space_around(">=")
+
+ def message_13(self):
+ self.message_space_around("<=")
+
+ def message_space_around(self, symbol):
+ replace_symbol = []
+ replace_symbol.append(' ' + symbol + ' ')
+ replace_symbol.append(' ' + symbol)
+ replace_symbol.append(symbol + ' ')
+ #print self.cur_line_content
+ for rep in range(len(replace_symbol)):
+ self.cur_line_content = self.cur_line_content.replace(replace_symbol[rep], symbol)
+ self.cur_line_content = self.cur_line_content.replace(symbol, replace_symbol[0])
+ #print self.cur_line_content
+
+ def printf(self):
+ #print "comment: ", self.info_comment
+ #print "labels: ", self.info_labels
+ for file_info in self.info_comment:
+ print file_info
+ for message_info in self.info_comment[file_info]:
+ print " ", message_info
+
+ def run(self):
+ self.read_log()
+ #self.printf()
+ self.fix()
+
+if __name__=='__main__':
+ if len(sys.argv) != 2:
+ print 'auto_fix.py [review_log_file]'
+ exit(1)
+ fixer = fixer(sys.argv[1])
+ fixer.run()