19d242745SMichal Simek /* 29d242745SMichal Simek * (C) Copyright 2013 - 2014 Xilinx, Inc 39d242745SMichal Simek * 49d242745SMichal Simek * Michal Simek <michal.simek@xilinx.com> 59d242745SMichal Simek * 69d242745SMichal Simek * SPDX-License-Identifier: GPL-2.0+ 79d242745SMichal Simek */ 89d242745SMichal Simek 99d242745SMichal Simek #include <common.h> 109d242745SMichal Simek #include <image.h> 119d242745SMichal Simek #include <spl.h> 129d242745SMichal Simek #include <asm/io.h> 139d242745SMichal Simek #include <asm/u-boot.h> 149d242745SMichal Simek 159d242745SMichal Simek DECLARE_GLOBAL_DATA_PTR; 169d242745SMichal Simek 179d242745SMichal Simek bool boot_linux; 189d242745SMichal Simek spl_boot_device(void)199d242745SMichal Simeku32 spl_boot_device(void) 209d242745SMichal Simek { 219d242745SMichal Simek return BOOT_DEVICE_NOR; 229d242745SMichal Simek } 239d242745SMichal Simek 249d242745SMichal Simek /* Board initialization after bss clearance */ spl_board_init(void)259d242745SMichal Simekvoid spl_board_init(void) 269d242745SMichal Simek { 279d242745SMichal Simek /* enable console uart printing */ 289d242745SMichal Simek preloader_console_init(); 299d242745SMichal Simek } 309d242745SMichal Simek 319d242745SMichal Simek #ifdef CONFIG_SPL_OS_BOOT jump_to_image_linux(struct spl_image_info * spl_image)32*5bf5250eSVikas Manochavoid __noreturn jump_to_image_linux(struct spl_image_info *spl_image) 339d242745SMichal Simek { 34*5bf5250eSVikas Manocha debug("Entering kernel arg pointer: 0x%p\n", spl_image->arg); 359d242745SMichal Simek typedef void (*image_entry_arg_t)(char *, ulong, ulong) 369d242745SMichal Simek __attribute__ ((noreturn)); 379d242745SMichal Simek image_entry_arg_t image_entry = 38ca12e65cSSimon Glass (image_entry_arg_t)spl_image->entry_point; 399d242745SMichal Simek 40*5bf5250eSVikas Manocha image_entry(NULL, 0, (ulong)spl_image->arg); 419d242745SMichal Simek } 429d242745SMichal Simek #endif /* CONFIG_SPL_OS_BOOT */ 439d242745SMichal Simek spl_start_uboot(void)449d242745SMichal Simekint spl_start_uboot(void) 459d242745SMichal Simek { 469d242745SMichal Simek #ifdef CONFIG_SPL_OS_BOOT 479d242745SMichal Simek if (boot_linux) 489d242745SMichal Simek return 0; 499d242745SMichal Simek #endif 509d242745SMichal Simek 519d242745SMichal Simek return 1; 529d242745SMichal Simek } 53