ENTRY_FUNCTION(start_imx6dl_hummingboard, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); fdt = __dtb_imx6dl_hummingboard_start - get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_512M, fdt); }
ENTRY_FUNCTION(start_imx6q_sabrelite, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); fdt = __dtb_imx6q_sabrelite_start - get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_1G, fdt); }
ENTRY_FUNCTION(start_imx6dl_nitrogen6x_2g, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); fdt = __dtb_imx6dl_nitrogen6x_start - get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_2G, fdt); }
ENTRY_FUNCTION(start_imx6_wandboard, r0, r1, r2) { imx6_cpu_lowlevel_init(); arm_setup_stack(0x0091ffb0); relocate_to_current_adr(); setup_c(); barrier(); wandboard_start(); }
ENTRY_FUNCTION(start_imx6sx_udoo_neo, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); if (IS_ENABLED(CONFIG_DEBUG_LL)) setup_uart(); fdt = __dtb_imx6sx_udoo_neo_full_start + get_runtime_offset(); imx6sx_barebox_entry(fdt); }
ENTRY_FUNCTION(start_imx6sx_sabresdb, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); if (IS_ENABLED(CONFIG_DEBUG_LL)) setup_uart(); fdt = __dtb_imx6sx_sdb_start + get_runtime_offset(); barebox_arm_entry(0x80000000, SZ_1G, fdt); }
ENTRY_FUNCTION(start_variscite_custom, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); arm_setup_stack(0x00920000 - 8); if (IS_ENABLED(CONFIG_DEBUG_LL)) setup_uart(); fdt = __dtb_imx6q_var_custom_start + get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_1G, fdt); }
ENTRY_FUNCTION(start_imx6s_riotboard, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); if (IS_ENABLED(CONFIG_DEBUG_LL)) { writel(0x4, 0x020e016c); imx6_uart_setup_ll(); putc_ll('a'); } fdt = __dtb_imx6s_riotboard_start + get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_1G, fdt); }
static void __noreturn start_imx6q_phytec_pbaa03_common(uint32_t size) { void *fdt; imx6_cpu_lowlevel_init(); arm_setup_stack(0x00920000 - 8); if (IS_ENABLED(CONFIG_DEBUG_LL)) setup_uart(); fdt = __dtb_imx6q_phytec_pbaa03_start - get_runtime_offset(); barebox_arm_entry(0x10000000, size, fdt); }
static void __noreturn start_imx6_phytec_common(uint32_t size, bool do_early_uart_config, void *fdt_blob_fixed_offset) { void *fdt; imx6_cpu_lowlevel_init(); arm_setup_stack(0x00920000 - 8); if (do_early_uart_config && IS_ENABLED(CONFIG_DEBUG_LL)) setup_uart(); fdt = fdt_blob_fixed_offset - get_runtime_offset(); barebox_arm_entry(0x10000000, size, fdt); }
ENTRY_FUNCTION(start_imx6dl_dfi_fs700_m60_6s, r0, r1, r2) { void *fdt; int i; imx6_cpu_lowlevel_init(); arm_setup_stack(0x00920000 - 8); for (i = 0x68; i <= 0x80; i += 4) writel(0xffffffff, MX6_CCM_BASE_ADDR + i); early_uart_init_6s(); fdt = __dtb_imx6dl_dfi_fs700_m60_6s_start - get_runtime_offset(); barebox_arm_entry(0x10000000, memsize_512M_1G(), fdt); }
ENTRY_FUNCTION(start_imx6dl_mba6x, r0, r1, r2) { void *fdt; imx6_cpu_lowlevel_init(); arm_setup_stack(0x00920000 - 8); if (IS_ENABLED(CONFIG_DEBUG_LL)) { writel(0x2, 0x020e035c); imx6_uart_setup_ll(); putc_ll('a'); } arm_early_mmu_cache_invalidate(); fdt = __dtb_imx6dl_mba6x_start - get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_512M, fdt); }
ENTRY_FUNCTION(start_imx6q_dfi_fs700_m60_6q_micron, r0, r1, r2) { void *fdt; int i; imx6_cpu_lowlevel_init(); arm_setup_stack(0x00940000 - 8); for (i = 0x68; i <= 0x80; i += 4) writel(0xffffffff, MX6_CCM_BASE_ADDR + i); early_uart_init_6q(); fdt = __dtb_imx6q_dfi_fs700_m60_6q_start - get_runtime_offset(); *(uint32_t *)0x10000000 = SZ_1G; barebox_arm_entry(0x10000000, SZ_1G, fdt); }