1*e961a66dSSimon Glass /* 2*e961a66dSSimon Glass * Copyright (c) 2016 Google, Inc 3*e961a66dSSimon Glass * SPDX-License-Identifier: GPL-2.0+ 4*e961a66dSSimon Glass */ 5*e961a66dSSimon Glass 6*e961a66dSSimon Glass #include <common.h> 7*e961a66dSSimon Glass #include <dm.h> 8*e961a66dSSimon Glass #include <os.h> 9*e961a66dSSimon Glass #include <asm/spl.h> 10*e961a66dSSimon Glass #include <asm/state.h> 11*e961a66dSSimon Glass 12*e961a66dSSimon Glass DECLARE_GLOBAL_DATA_PTR; 13*e961a66dSSimon Glass 14*e961a66dSSimon Glass void board_init_f(ulong flag) 15*e961a66dSSimon Glass { 16*e961a66dSSimon Glass struct sandbox_state *state = state_get_current(); 17*e961a66dSSimon Glass 18*e961a66dSSimon Glass gd->arch.ram_buf = state->ram_buf; 19*e961a66dSSimon Glass gd->ram_size = state->ram_size; 20*e961a66dSSimon Glass } 21*e961a66dSSimon Glass 22*e961a66dSSimon Glass u32 spl_boot_device(void) 23*e961a66dSSimon Glass { 24*e961a66dSSimon Glass return BOOT_DEVICE_BOARD; 25*e961a66dSSimon Glass } 26*e961a66dSSimon Glass 27*e961a66dSSimon Glass void spl_board_announce_boot_device(void) 28*e961a66dSSimon Glass { 29*e961a66dSSimon Glass char fname[256]; 30*e961a66dSSimon Glass int ret; 31*e961a66dSSimon Glass 32*e961a66dSSimon Glass ret = os_find_u_boot(fname, sizeof(fname)); 33*e961a66dSSimon Glass if (ret) { 34*e961a66dSSimon Glass printf("(%s not found, error %d)\n", fname, ret); 35*e961a66dSSimon Glass return; 36*e961a66dSSimon Glass } 37*e961a66dSSimon Glass printf("%s\n", fname); 38*e961a66dSSimon Glass } 39*e961a66dSSimon Glass 40*e961a66dSSimon Glass int spl_board_load_image(void) 41*e961a66dSSimon Glass { 42*e961a66dSSimon Glass char fname[256]; 43*e961a66dSSimon Glass int ret; 44*e961a66dSSimon Glass 45*e961a66dSSimon Glass ret = os_find_u_boot(fname, sizeof(fname)); 46*e961a66dSSimon Glass if (ret) 47*e961a66dSSimon Glass return ret; 48*e961a66dSSimon Glass 49*e961a66dSSimon Glass /* Hopefully this will not return */ 50*e961a66dSSimon Glass return os_spl_to_uboot(fname); 51*e961a66dSSimon Glass } 52