hc
2024-03-22 f63cd4c03ea42695d5f9b0e1798edd196923aae6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*
 * 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