[Feature]Upload Modem source code
Change-Id: Id4294f30faced84d3e6fd6d5e61e1111bf287a37
diff --git a/mcu/tools/bl_info.pl b/mcu/tools/bl_info.pl
new file mode 100644
index 0000000..854eedd
--- /dev/null
+++ b/mcu/tools/bl_info.pl
@@ -0,0 +1,217 @@
+#!/usr/bin/perl
+#
+# Copyright Statement:
+# --------------------
+# This software is protected by Copyright and the information contained
+# herein is confidential. The software may not be copied and the information
+# contained herein may not be used or disclosed except with the written
+# permission of MediaTek Inc. (C) 2005
+#
+# BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+# THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+# RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+# AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+# NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+# SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+# SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+# THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+# NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+# SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+#
+# BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+# LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+# AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+# OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+# MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+#
+# THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+# WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+# LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+# RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+# THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+#
+#
+
+my $lisfile="make\\bootloader\\bootloader.lis";
+my $pthfile="make\\bootloader\\bootloader.pth";
+my $incfile="make\\bootloader\\bootloader.inc";
+
+while ($#ARGV != -1) {
+ if ($ARGV[0] =~ /^board_ver=(\w+)/i) {
+ $board_ver = $1;
+ } elsif ($ARGV[0] =~ /^themf=([\w|\\||\/|\.]+)/i) {
+ $themf = $1;
+ } else {
+ &Usage;
+ }
+ shift(@ARGV);
+}
+
+(!defined($board_ver) || ($board_ver eq "") || (!-d ".\\custom\\system\\${board_ver}")) && &Usage;
+
+die "$themf does NOT exist\n" if (!-e $themf);
+open (FILE_HANDLE, "<$themf") or die "Cannot open $themf\n";
+while (<FILE_HANDLE>) {
+ if (/^(\S+)\s*=\s*(\S+)/) {
+ $keyname = lc($1);
+ defined($${keyname}) && warn "$1 redefined in $themf!\n";
+ $${keyname} = uc($2);
+ }
+}
+close FILE_HANDLE;
+
+open (file,"+<$lisfile") || die "cannot open $lisfile\n";
+truncate file, 0;
+
+my $reading = "";
+
+# Bootloader System
+my $thatdir = "bootloader\\src";
+opendir THATDIR, $thatdir;
+@allfiles1 = grep -T, map "$thatdir/$_", readdir THATDIR;
+closedir THATDIR;
+
+foreach $elem (@allfiles1) {
+ $elem =~ s/\//\\/g;
+ if ($elem =~ m/[a-zA-Z0-9_\.\\\/]*\.[csCS]$/) {
+ $reading .= "$elem\n";
+ }
+}
+
+$reading .= "custom\\system\\${board_ver}\\custom_emi.c\n";
+$reading .= "sss\\interface\\src\\SSS_interface.c\n";
+$reading .= "custom\\system\\${board_ver}\\custom_blconfig.c\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\gpio_drv.c\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\keypad_def.c\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\usb_custom.c\n";
+$reading .= "custom\\system\\${board_ver}\\custom_flash.c\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\codegen\\gpio_var.c\n" if (-e "custom\\drv\\misc_drv\\${board_ver}\\codegen\\gpio_var.c");
+$reading .= "custom\\drv\\common_drv\\gpio_setting.c\n";
+$reading .= "drv\\src\\gpio.c\n";
+$reading .= "custom\\drv\\common_drv\\pwic_cust.c\n";
+$reading .= "init\\src\\cp15.s\n";
+$reading .= "init\\src\\cache.c\n";
+$reading .= "drv\\src\\nand_mtd_fdm50.c\n";
+$reading .= "drv\\src\\nand_dal.c\n";
+$reading .= "drv\\src\\NAND_DevConfig.c\n";
+$reading .= "interface\\l1interface\\l1_interface.c\n";
+$reading .= "init\\GFH\\public\\br_GFH_parser.c\n";
+$reading .= "init\\GFH\\public\\br_GFH_file_info.c\n";
+$reading .= "sss\\interface\\crypto\\export\\public\\br_crypto_platform.c\n";
+$reading .= "drv\\src\\flash_mtd_sf_common.c\n";
+$reading .= "init\\src\\dmdsp_init.c\n";
+
+# CARD Download
+if ($card_download eq "TRUE") {
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\msdc_custom.c\n" if (-e "custom\\drv\\misc_drv\\${board_ver}\\msdc_custom.c");
+ $reading .= "drv\\src\\msdc.c\n";
+ $reading .= "drv\\src\\sd.c\n";
+ $reading .= "drv\\src\\sd_drv.c\n";
+ $reading .= "drv\\src\\msdc_fake_kal.c\n";
+ #$reading .= "drv\\display\\src\\mt6236lcd\\lcd_if_6236.c\n";
+ $reading .= "drv\\display\\src\\lcd_if.c\n";
+ $reading .= "lqt\\src\\lcd_lqt.c\n";
+ $reading .= "lcd.c\n";
+
+ # For Backlight
+ $reading .= "drv\\src\\pwic.c\n";
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\alerterdrv.c\n";
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\pwmdrv.c\n";
+ $reading .= "drv\\src\\rtc.c\n";
+ $reading .= "drv\\src\\rwg.c\n";
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\uem_gpio.c\n";
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\custom_equipment.c\n";
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\custom_hw_default.c\n";
+ $reading .= "custom\\drv\\misc_drv\\${board_ver}\\codegen\\uem_drv.c\n";
+
+ #$reading .= "drv\\src\\pwm.c\n";
+
+ $reading .= "plutommi\\Framework\\GDI\\GDISrc\\gdi_image_alpha_bmp_v2_internal.c\n";
+ $reading .= "plutommi\\Framework\\GDI\\GDISrc\\gdi_image_alpha_bmp_v2_core.c\n";
+}
+
+
+$reading .= "drv\\src\\keypad_bl.c\n";
+$reading .= "drv\\src\\pmu_bl.c\n";
+$reading .= "drv\\src\\pmu6236_bl.c\n";
+$reading .= "drv\\src\\pmu6253_bl.c\n";
+$reading .= "drv\\src\\pmu6253el_bl.c\n";
+$reading .= "drv\\src\\pmu6255_bl.c\n";
+$reading .= "drv\\src\\pmu6276_bl.c\n";
+$reading .= "drv\\src\\pmu6251_bl.c\n";
+$reading .= "drv\\src\\upmu_common_bl.c\n";
+$reading .= "drv\\src\\pwm_bl.c\n";
+
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\pmu_custom.c\n" if (-e "custom\\drv\\misc_drv\\${board_ver}\\pmu_custom.c");;
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\codegen\\pmic_drv.c\n" if (-e "custom\\drv\\misc_drv\\${board_ver}\\codegen\\pmic_drv.c");
+$reading .= "drv\\src\\pmic_MT6255PMU_drv.c\n";
+$reading .= "drv\\src\\pmic_MT6276PMU_drv.c\n";
+$reading .= "drv\\src\\pmic_MT6251PMU_drv.c\n";
+
+$reading .= "init\\CBR\\CBR.c\n";
+
+seek(file, 0, 0);
+print file $reading;
+close file;
+
+open (file,"+<$pthfile") || die "cannot open $pthfile\n";
+truncate file, 0;
+$reading = "custom\\system\\${board_ver}\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\codegen\n";
+$reading .= "custom\\drv\\common_drv\n";
+$reading .= "bootloader\\src\n";
+$reading .= "drv\\src\n";
+$reading .= "sss\\interface\\src\n";
+$reading .= "init\\src\n";
+$reading .= "init\\CBR\n";
+$reading .= "interface\\l1interface\n";
+$reading .= "init\\GFH\\public\n";
+$reading .= "drv\\display\\src\\mt6236lcd\n";
+$reading .= "drv\\display\\src\n";
+$reading .= "plutommi\\Framework\\GDI\\GDISrc\n";
+$reading .= "lqt\\src\n";
+$reading .= "sss\\interface\\crypto\\export\\public\n";
+
+seek(file, 0, 0);
+print file $reading;
+close file;
+
+open (file,"+<$incfile") || die "cannot open $incfile\n";
+truncate file, 0;
+$reading = "bootloader\\inc\n";
+$reading .= "inc\n";
+$reading .= "init\\include\n";
+$reading .= "init\\CBR\n";
+$reading .= "drv\\include\n";
+$reading .= "dp_engine\\che\\include\n";
+$reading .= "applib\\misc\\include\n";
+$reading .= "custom\\drv\\misc_drv\\${board_ver}\\codegen\n";
+$reading .= "custom\\system\\${board_ver}\n";
+$reading .= "fota\\inc\n";
+$reading .= "ssf\\inc\n";
+$reading .= "custom\\common\n";
+$reading .= "kal\\Efs\\include\n";
+$reading .= "interface\\l1interface\n";
+$reading .= "interface\\hwdrv\n";
+$reading .= "dsp_ram\n";
+$reading .= "drv\\display\\include\\mt6236lcd\n";
+$reading .= "drv\\display\\include\n";
+$reading .= "plutommi\\Framework\\GDI\\GDIInc\n";
+$reading .= "sss\\interface\\inc\n";
+$reading .= "init\\GFH\\public\n";
+$reading .= "init\\ftl\n";
+$reading .= "sss\\interface\\crypto\\export\\public\n";
+seek(file, 0, 0);
+print file $reading;
+close file;
+
+exit 0;
+
+sub Usage {
+ warn " Usage:\n";
+ warn " $0 board_ver=MT6226_EVB\n";
+ exit 1;
+}