mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-10-31 03:58:17 +00:00 
			
		
		
		
	We can remove common.h from most cases of the code here, and only a few places need an additional header instead. Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Alexey Brodkin <abrodkin@synopsys.com>
		
			
				
	
	
		
			57 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0+ */
 | |
| /*
 | |
|  * Copyright (C) 2018 Synopsys, Inc. All rights reserved.
 | |
|  * Author: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
 | |
|  */
 | |
| 
 | |
| #ifndef __BOARD_ENV_LIB_H
 | |
| #define __BOARD_ENV_LIB_H
 | |
| 
 | |
| #include <config.h>
 | |
| #include <linux/kernel.h>
 | |
| 
 | |
| enum env_type {
 | |
| 	ENV_DEC,
 | |
| 	ENV_HEX
 | |
| };
 | |
| 
 | |
| typedef struct {
 | |
| 	u32 val;
 | |
| 	bool set;
 | |
| } u32_env;
 | |
| 
 | |
| struct env_map_common {
 | |
| 	const char *const env_name;
 | |
| 	enum env_type type;
 | |
| 	bool mandatory;
 | |
| 	u32 min;
 | |
| 	u32 max;
 | |
| 	u32_env *val;
 | |
| };
 | |
| 
 | |
| struct env_map_percpu {
 | |
| 	const char *const env_name;
 | |
| 	enum env_type type;
 | |
| 	bool mandatory;
 | |
| 	u32 min[NR_CPUS];
 | |
| 	u32 max[NR_CPUS];
 | |
| 	u32_env (*val)[NR_CPUS];
 | |
| };
 | |
| 
 | |
| void envs_cleanup_common(const struct env_map_common *map);
 | |
| int envs_read_common(const struct env_map_common *map);
 | |
| int envs_validate_common(const struct env_map_common *map);
 | |
| int envs_read_validate_common(const struct env_map_common *map);
 | |
| 
 | |
| void envs_cleanup_core(const struct env_map_percpu *map);
 | |
| int envs_read_validate_core(const struct env_map_percpu *map,
 | |
| 			    bool (*cpu_used)(u32));
 | |
| int envs_process_and_validate(const struct env_map_common *common,
 | |
| 			      const struct env_map_percpu *core,
 | |
| 			      bool (*cpu_used)(u32));
 | |
| 
 | |
| int args_envs_enumerate(const struct env_map_common *map,
 | |
| 			int enum_by, int argc, char *const argv[]);
 | |
| 
 | |
| #endif /* __BOARD_ENV_LIB_H */
 |