1d4abc757SPeter Tyser /* 2d4abc757SPeter Tyser * (C) Copyright 2007 Semihalf 3d4abc757SPeter Tyser * 4d4abc757SPeter Tyser * Written by: Rafal Jaworowski <raj@semihalf.com> 5d4abc757SPeter Tyser * 61a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 7d4abc757SPeter Tyser * 8d4abc757SPeter Tyser * This is is a set of wrappers/stubs that allow to use certain routines from 978acc472SPeter Tyser * U-Boot's lib in the standalone app. This way way we can re-use 10d4abc757SPeter Tyser * existing code e.g. operations on strings and similar. 11d4abc757SPeter Tyser */ 12d4abc757SPeter Tyser 13d4abc757SPeter Tyser #include <common.h> 14d4abc757SPeter Tyser #include <linux/types.h> 15d4abc757SPeter Tyser #include <api_public.h> 16d4abc757SPeter Tyser 17d4abc757SPeter Tyser #include "glue.h" 18d4abc757SPeter Tyser putc(const char c)19d4abc757SPeter Tyservoid putc(const char c) 20d4abc757SPeter Tyser { 21d4abc757SPeter Tyser ub_putc(c); 22d4abc757SPeter Tyser } 23d4abc757SPeter Tyser puts(const char * s)24*7d9cde10SStefan Roesevoid puts(const char *s) 25*7d9cde10SStefan Roese { 26*7d9cde10SStefan Roese ub_puts(s); 27*7d9cde10SStefan Roese } 28*7d9cde10SStefan Roese __udelay(unsigned long usec)293eb90badSIngo van Lilvoid __udelay(unsigned long usec) 30d4abc757SPeter Tyser { 31d4abc757SPeter Tyser ub_udelay(usec); 32d4abc757SPeter Tyser } 33d4abc757SPeter Tyser do_reset(cmd_tbl_t * cmdtp,int flag,int argc,char * const argv[])34e0306cabSMike Frysingerint do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) 35d4abc757SPeter Tyser { 36d4abc757SPeter Tyser ub_reset(); 37e0306cabSMike Frysinger return 0; 38d4abc757SPeter Tyser } 39d4abc757SPeter Tyser malloc(size_t len)40d4abc757SPeter Tyservoid *malloc (size_t len) 41d4abc757SPeter Tyser { 42d4abc757SPeter Tyser return NULL; 43d4abc757SPeter Tyser } 44d4abc757SPeter Tyser hang(void)45d4abc757SPeter Tyservoid hang (void) 46d4abc757SPeter Tyser { 47d4abc757SPeter Tyser while (1) ; 48d4abc757SPeter Tyser } 49