/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (c) 2017 Google, Inc * Written by Simon Glass <sjg@chromium.org> */ #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