1 #include "normal_mode.h"
\r
2 #include <asm/arch/sprd_reg.h>
\r
3 #ifdef CONFIG_ARCH_SCX35L //only for sharkL branch modem boot process
\r
4 #include <asm/arch/cp_boot.h>
\r
7 extern void boot_cp0(void);
\r
8 extern void boot_cp1(void);
\r
9 extern void boot_cp2(void);
\r
11 #ifdef CONFIG_ARCH_SCX35L //only for sharkL branch modem boot process
\r
13 void cp_adr_remap(u32 cp_kernel_exec_addr, u32 cp_zero_map_addr)
\r
15 u32 data[3] = {0xe59f0000, 0xe12fff10, cp_kernel_exec_addr};
\r
16 memcpy( cp_zero_map_addr, data, sizeof(data)); /* copy cp0 source code */
\r
22 #ifdef CONFIG_PMIC_ARM7_BOOT //arm7 boot
\r
26 #ifdef CONFIG_CP0_ARM0_BOOT //cp0 arm0 boot
\r
27 debugf(" REG_PMU_APB_CP_SOFT_RST=%x,REG_AON_APB_APB_RST1=0x%x\n", REG_PMU_APB_CP_SOFT_RST,REG_AON_APB_APB_RST1);
\r
28 cp_adr_remap(CP0_ARM0_EXEC_ADR, CP0_ZERO_MAP_ADR);
\r
32 #ifdef CONFIG_CP1_BOOT //cp1 boot
\r
33 cp_adr_remap(CP1_EXEC_ADR, CP1_ZERO_MAP_ADR);
\r
35 #endif //end of TDLTE_DSDA
\r
37 #else //shark,9620,tshark branch
\r
40 #if modem_cp0_enable
\r
44 #if modem_cp1_enable
\r
48 #if modem_cp2_enable
\r
53 #endif /* CONFIG_ARCH_SCX35L */
\r