void mxs_common_spl_init(const uint32_t arg, const uint32_t *resptr, const iomux_cfg_t *iomux_setup, const unsigned int iomux_size) { struct mxs_spl_data *data = MXS_SPL_DATA; uint8_t bootmode = mxs_get_bootmode_index(); gd = &gdata; mxs_spl_fixup_vectors(); mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size); mxs_spl_console_init(); debug("SPL: Serial Console Initialised\n"); mxs_power_init(); mxs_mem_init(); data->mem_dram_size = mxs_mem_get_size(); data->boot_mode_idx = bootmode; mxs_power_wait_pswitch(); if (mxs_boot_modes[data->boot_mode_idx].boot_pads == MXS_BM_JTAG) { debug("SPL: Waiting for JTAG user\n"); asm volatile ("x: b x"); }
void mxs_common_spl_init(const iomux_cfg_t *iomux_setup, const unsigned int iomux_size) { struct mxs_spl_data *data = (struct mxs_spl_data *) ((CONFIG_SYS_TEXT_BASE - sizeof(struct mxs_spl_data)) & ~0xf); uint8_t bootmode = mxs_get_bootmode_index(); mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size); mxs_power_init(); mxs_mem_init(); data->mem_dram_size = mxs_mem_get_size(); data->boot_mode_idx = bootmode; mxs_power_wait_pswitch(); }