1#!/usr/bin/env python 2# SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3# Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd 4# 5 6 7""" 8Multiple dtb package tool 9 10Usage: scripts/mkmultidtb.py board 11The board is what you defined in DTBS dictionary like DTBS['board'], 12Such as: PX30-EVB, RK3308-EVB 13 14""" 15import os 16import sys 17import shutil 18from collections import OrderedDict 19 20DTBS = {} 21 22DTBS['PX30-EVB'] = OrderedDict([('px30-evb-ddr3-v10', '#_saradc_ch0=1024'), 23 ('px30-evb-ddr3-lvds-v10', '#_saradc_ch0=512')]) 24 25DTBS['RK3308-EVB'] = OrderedDict([('rk3308-evb-dmic-i2s-v10', '#_saradc_ch3=288'), 26 ('rk3308-evb-dmic-pdm-v10', '#_saradc_ch3=1024'), 27 ('rk3308-evb-amic-v10', '#_saradc_ch3=407')]) 28 29def main(): 30 if (len(sys.argv) < 2) or (sys.argv[1] == '-h'): 31 print __doc__ 32 sys.exit(2) 33 34 BOARD = sys.argv[1] 35 TARGET_DTBS = DTBS[BOARD] 36 target_dtb_list = '' 37 default_dtb = True 38 39 for dtb, value in TARGET_DTBS.items(): 40 if default_dtb: 41 ori_file = 'arch/arm64/boot/dts/rockchip/' + dtb + '.dtb' 42 shutil.copyfile(ori_file, "rk-kernel.dtb") 43 target_dtb_list += 'rk-kernel.dtb ' 44 default_dtb = False 45 new_file = dtb + value + '.dtb' 46 ori_file = 'arch/arm64/boot/dts/rockchip/' + dtb + '.dtb' 47 shutil.copyfile(ori_file, new_file) 48 target_dtb_list += ' ' + new_file 49 50 print target_dtb_list 51 os.system('scripts/resource_tool logo.bmp logo_kernel.bmp ' + target_dtb_list) 52 os.system('rm ' + target_dtb_list) 53 54if __name__ == '__main__': 55 main() 56