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