xref: /rk3399_rockchip-uboot/arch/arm/include/asm/bootm.h (revision c19d13b030e93c6b30f61743e940da8d4418e714)
1*c19d13b0SSimon Glass /*
2*c19d13b0SSimon Glass  * Copyright (c) 2013, Google Inc.
3*c19d13b0SSimon Glass  *
4*c19d13b0SSimon Glass  * Copyright (C) 2011
50a672d49SSimon Schwarz  * Corscience GmbH & Co. KG - Simon Schwarz <schwarz@corscience.de>
60a672d49SSimon Schwarz  *
70a672d49SSimon Schwarz  * This program is free software; you can redistribute it and/or modify
80a672d49SSimon Schwarz  * it under the terms of the GNU General Public License as published by
90a672d49SSimon Schwarz  * the Free Software Foundation; either version 2 of the License, or
100a672d49SSimon Schwarz  * (at your option) any later version.
110a672d49SSimon Schwarz  *
120a672d49SSimon Schwarz  * This program is distributed in the hope that it will be useful,
130a672d49SSimon Schwarz  * but WITHOUT ANY WARRANTY; without even the implied warranty of
140a672d49SSimon Schwarz  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
150a672d49SSimon Schwarz  * GNU General Public License for more details.
160a672d49SSimon Schwarz  *
170a672d49SSimon Schwarz  * You should have received a copy of the GNU General Public License
180a672d49SSimon Schwarz  * along with this program; if not, write to the Free Software
190a672d49SSimon Schwarz  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
200a672d49SSimon Schwarz  *
210a672d49SSimon Schwarz  */
220a672d49SSimon Schwarz #ifndef ARM_BOOTM_H
230a672d49SSimon Schwarz #define ARM_BOOTM_H
240a672d49SSimon Schwarz 
250a672d49SSimon Schwarz extern void udc_disconnect(void);
26*c19d13b0SSimon Glass 
27*c19d13b0SSimon Glass #if defined(CONFIG_SETUP_MEMORY_TAGS) || \
28*c19d13b0SSimon Glass 		defined(CONFIG_CMDLINE_TAG) || \
29*c19d13b0SSimon Glass 		defined(CONFIG_INITRD_TAG) || \
30*c19d13b0SSimon Glass 		defined(CONFIG_SERIAL_TAG) || \
31*c19d13b0SSimon Glass 		defined(CONFIG_REVISION_TAG)
32*c19d13b0SSimon Glass # define BOOTM_ENABLE_TAGS		1
33*c19d13b0SSimon Glass #else
34*c19d13b0SSimon Glass # define BOOTM_ENABLE_TAGS		0
35*c19d13b0SSimon Glass #endif
36*c19d13b0SSimon Glass 
37*c19d13b0SSimon Glass #ifdef CONFIG_SETUP_MEMORY_TAGS
38*c19d13b0SSimon Glass # define BOOTM_ENABLE_MEMORY_TAGS	1
39*c19d13b0SSimon Glass #else
40*c19d13b0SSimon Glass # define BOOTM_ENABLE_MEMORY_TAGS	0
41*c19d13b0SSimon Glass #endif
42*c19d13b0SSimon Glass 
43*c19d13b0SSimon Glass #ifdef CONFIG_CMDLINE_TAG
44*c19d13b0SSimon Glass  #define BOOTM_ENABLE_CMDLINE_TAG	1
45*c19d13b0SSimon Glass #else
46*c19d13b0SSimon Glass  #define BOOTM_ENABLE_CMDLINE_TAG	0
47*c19d13b0SSimon Glass #endif
48*c19d13b0SSimon Glass 
49*c19d13b0SSimon Glass #ifdef CONFIG_INITRD_TAG
50*c19d13b0SSimon Glass  #define BOOTM_ENABLE_INITRD_TAG	1
51*c19d13b0SSimon Glass #else
52*c19d13b0SSimon Glass  #define BOOTM_ENABLE_INITRD_TAG	0
53*c19d13b0SSimon Glass #endif
54*c19d13b0SSimon Glass 
55*c19d13b0SSimon Glass #ifdef CONFIG_SERIAL_TAG
56*c19d13b0SSimon Glass  #define BOOTM_ENABLE_SERIAL_TAG	1
57*c19d13b0SSimon Glass void get_board_serial(struct tag_serialnr *serialnr);
58*c19d13b0SSimon Glass #else
59*c19d13b0SSimon Glass  #define BOOTM_ENABLE_SERIAL_TAG	0
60*c19d13b0SSimon Glass static inline void get_board_serial(struct tag_serialnr *serialnr)
61*c19d13b0SSimon Glass {
62*c19d13b0SSimon Glass }
63*c19d13b0SSimon Glass #endif
64*c19d13b0SSimon Glass 
65*c19d13b0SSimon Glass #ifdef CONFIG_REVISION_TAG
66*c19d13b0SSimon Glass  #define BOOTM_ENABLE_REVISION_TAG	1
67*c19d13b0SSimon Glass u32 get_board_rev(void);
68*c19d13b0SSimon Glass #else
69*c19d13b0SSimon Glass  #define BOOTM_ENABLE_REVISION_TAG	0
70*c19d13b0SSimon Glass static inline u32 get_board_rev(void)
71*c19d13b0SSimon Glass {
72*c19d13b0SSimon Glass 	return 0;
73*c19d13b0SSimon Glass }
740a672d49SSimon Schwarz #endif
750a672d49SSimon Schwarz 
760a672d49SSimon Schwarz #endif
77