47 lines
		
	
	
		
			1018 B
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1018 B
		
	
	
	
		
			C
		
	
	
	
| /*
 | |
|  * Copyright (c) 2017 Google, Inc
 | |
|  * Written by Simon Glass <sjg@chromium.org>
 | |
|  *
 | |
|  * SPDX-License-Identifier:	GPL-2.0+
 | |
|  */
 | |
| 
 | |
| #ifndef _DM_OF_EXTRA_H
 | |
| #define _DM_OF_EXTRA_H
 | |
| 
 | |
| #include <dm/ofnode.h>
 | |
| 
 | |
| enum fmap_compress_t {
 | |
| 	FMAP_COMPRESS_NONE,
 | |
| 	FMAP_COMPRESS_LZO,
 | |
| };
 | |
| 
 | |
| enum fmap_hash_t {
 | |
| 	FMAP_HASH_NONE,
 | |
| 	FMAP_HASH_SHA1,
 | |
| 	FMAP_HASH_SHA256,
 | |
| };
 | |
| 
 | |
| /* A flash map entry, containing an offset and length */
 | |
| struct fmap_entry {
 | |
| 	uint32_t offset;
 | |
| 	uint32_t length;
 | |
| 	uint32_t used;			/* Number of bytes used in region */
 | |
| 	enum fmap_compress_t compress_algo;	/* Compression type */
 | |
| 	enum fmap_hash_t hash_algo;		/* Hash algorithm */
 | |
| 	const uint8_t *hash;			/* Hash value */
 | |
| 	int hash_size;				/* Hash size */
 | |
| };
 | |
| 
 | |
| /**
 | |
|  * Read a flash entry from the fdt
 | |
|  *
 | |
|  * @param node	Reference to node to read
 | |
|  * @param name		Name of node being read
 | |
|  * @param entry		Place to put offset and size of this node
 | |
|  * @return 0 if ok, -ve on error
 | |
|  */
 | |
| int of_read_fmap_entry(ofnode node, const char *name,
 | |
| 		       struct fmap_entry *entry);
 | |
| 
 | |
| #endif
 |