diff options
Diffstat (limited to 'include/chromeos')
-rw-r--r-- | include/chromeos/fdt_decode.h | 33 | ||||
-rw-r--r-- | include/chromeos/firmware_storage.h | 2 | ||||
-rw-r--r-- | include/chromeos/fmap.h | 45 |
3 files changed, 49 insertions, 31 deletions
diff --git a/include/chromeos/fdt_decode.h b/include/chromeos/fdt_decode.h index 4585b9a62dc..dcb98cbbf11 100644 --- a/include/chromeos/fdt_decode.h +++ b/include/chromeos/fdt_decode.h @@ -11,38 +11,11 @@ #ifndef CHROMEOS_FDT_DECODE_H_ #define CHROMEOS_FDT_DECODE_H_ -/* Decode Chrome OS specific configuration from fdt */ - -struct fdt_fmap_entry { - uint32_t offset; - uint32_t length; -}; - -struct fdt_firmware_entry { - struct fdt_fmap_entry boot; /* U-Boot */ - struct fdt_fmap_entry vblock; - struct fdt_fmap_entry firmware_id; - uint64_t block_lba; -}; - -/* - * Only sections that are used during booting are put here. More sections will - * be added if required. - */ -struct fdt_twostop_fmap { - struct { - struct fdt_fmap_entry fmap; - struct fdt_fmap_entry gbb; - struct fdt_fmap_entry firmware_id; - } readonly; +#include <chromeos/fmap.h> - struct fdt_firmware_entry readwrite_a; - struct fdt_firmware_entry readwrite_b; -}; - -int fdt_decode_twostop_fmap(const void *fdt, struct fdt_twostop_fmap *config); +/* Decode Chrome OS specific configuration from fdt */ -void dump_fmap(struct fdt_twostop_fmap *config); +int fdt_decode_twostop_fmap(const void *fdt, struct twostop_fmap *config); /** * This checks whether a property exists. diff --git a/include/chromeos/firmware_storage.h b/include/chromeos/firmware_storage.h index 8e82aaa7d6c..2ef6e2b0348 100644 --- a/include/chromeos/firmware_storage.h +++ b/include/chromeos/firmware_storage.h @@ -44,6 +44,6 @@ typedef struct firmware_storage_t { int firmware_storage_open_spi(firmware_storage_t *file); int firmware_storage_open_twostop(firmware_storage_t *file, - struct fdt_twostop_fmap *fmap); + struct twostop_fmap *fmap); #endif /* CHROMEOS_FIRMWARE_STORAGE_H_ */ diff --git a/include/chromeos/fmap.h b/include/chromeos/fmap.h new file mode 100644 index 00000000000..37efc4b1284 --- /dev/null +++ b/include/chromeos/fmap.h @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2011 The Chromium OS Authors. All rights reserved. + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + * + * Alternatively, this software may be distributed under the terms of the + * GNU General Public License ("GPL") version 2 as published by the Free + * Software Foundation. + */ + +#ifndef CHROMEOS_FMAP_H_ +#define CHROMEOS_FMAP_H_ + +/* Structures to hold Chrome OS specific configuration from the FMAP. */ + +struct fmap_entry { + uint32_t offset; + uint32_t length; +}; + +struct fmap_firmware_entry { + struct fmap_entry boot; /* U-Boot */ + struct fmap_entry vblock; + struct fmap_entry firmware_id; + uint64_t block_lba; +}; + +/* + * Only sections that are used during booting are put here. More sections will + * be added if required. + */ +struct twostop_fmap { + struct { + struct fmap_entry fmap; + struct fmap_entry gbb; + struct fmap_entry firmware_id; + } readonly; + + struct fmap_firmware_entry readwrite_a; + struct fmap_firmware_entry readwrite_b; +}; + +void dump_fmap(struct twostop_fmap *config); + +#endif /* CHROMEOS_FMAP_H_ */ |