42 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			42 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
|   | /*
 | ||
|  |  * Flattened Image Tree loader. | ||
|  |  * | ||
|  |  * Copyright (c) 2016 Imagination Technologies | ||
|  |  * | ||
|  |  * This library is free software; you can redistribute it and/or | ||
|  |  * modify it under the terms of the GNU Lesser General Public | ||
|  |  * License as published by the Free Software Foundation; either | ||
|  |  * version 2 of the License, or (at your option) any later version. | ||
|  |  * | ||
|  |  * This library is distributed in the hope that it will be useful, | ||
|  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
|  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||
|  |  * Lesser General Public License for more details. | ||
|  |  * | ||
|  |  * You should have received a copy of the GNU Lesser General Public | ||
|  |  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
 | ||
|  |  */ | ||
|  | 
 | ||
|  | #ifndef HW_LOADER_FIT_H
 | ||
|  | #define HW_LOADER_FIT_H
 | ||
|  | 
 | ||
|  | #include <exec/hwaddr.h>
 | ||
|  | 
 | ||
|  | struct fit_loader_match { | ||
|  |     const char *compatible; | ||
|  |     const void *data; | ||
|  | }; | ||
|  | 
 | ||
|  | struct fit_loader { | ||
|  |     const struct fit_loader_match *matches; | ||
|  |     hwaddr (*addr_to_phys)(void *opaque, uint64_t addr); | ||
|  |     const void *(*fdt_filter)(void *opaque, const void *fdt, | ||
|  |                               const void *match_data, hwaddr *load_addr); | ||
|  |     const void *(*kernel_filter)(void *opaque, const void *kernel, | ||
|  |                                  hwaddr *load_addr, hwaddr *entry_addr); | ||
|  | }; | ||
|  | 
 | ||
|  | int load_fit(const struct fit_loader *ldr, const char *filename, void *opaque); | ||
|  | 
 | ||
|  | #endif /* HW_LOADER_FIT_H */
 |