Chromium Code Reviews| Index: host/include/fmap.h |
| diff --git a/host/include/fmap.h b/host/include/fmap.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..638b5d852d0cd0a218f4158dd89f580a25db617b |
| --- /dev/null |
| +++ b/host/include/fmap.h |
| @@ -0,0 +1,44 @@ |
| +/* |
| + * 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. |
| + */ |
| + |
| +#ifndef __FMAP_H__ |
| +#define __FMAP_H__ |
| + |
| +#include <inttypes.h> |
| +#include <stddef.h> |
| + |
| +/* FMAP structs. See http://code.google.com/p/flashmap/wiki/FmapSpec */ |
| +#define FMAP_SIGLEN 8 |
| +#define FMAP_NAMELEN 32 |
| +#define FMAP_SEARCH_STRIDE 4 |
| +typedef struct _FmapHeader { |
| + char fmap_signature[FMAP_SIGLEN]; /* avoiding endian issues */ |
| + uint8_t fmap_ver_major; |
| + uint8_t fmap_ver_minor; |
| + uint64_t fmap_base; |
| + uint32_t fmap_size; |
| + char fmap_name[FMAP_NAMELEN]; |
| + uint16_t fmap_nareas; |
| +} __attribute__((packed)) FmapHeader; |
| + |
| +typedef struct _FmapAreaHeader { |
| + uint32_t area_offset; |
| + uint32_t area_size; |
| + char area_name[FMAP_NAMELEN]; |
| + uint16_t area_flags; |
| +} __attribute__((packed)) FmapAreaHeader; |
| + |
| + |
| +/* Scan firmware image, pointed by [ptr] with length [size], for fmap header. |
| + * Return pointer to fmap header, or NULL if not found. |
| + */ |
| +const char *FindFmap(const char *ptr, size_t size); |
|
gauravsh
2011/02/10 20:02:05
char*
Randall Spangler
2011/02/11 17:26:04
FmapFind() would give it a consistent Fmap*() pref
Che-Liang Chiou
2011/02/14 02:27:53
Done.
Che-Liang Chiou
2011/02/14 02:27:53
Done.
|
| + |
| +/* Look up fmap area by name. Retrun index of fmap area or -1 if not found. */ |
|
gauravsh
2011/02/10 20:02:05
Retrun->Return
return index into what?
Che-Liang Chiou
2011/02/14 02:27:53
Done.
|
| +int FmapAreaIndex(const FmapHeader* fh, const FmapAreaHeader* ah, |
|
gauravsh
2011/02/10 20:02:05
still not clear from the comment what |fh| and |ah
Che-Liang Chiou
2011/02/14 02:27:53
Done.
P.S. They are FmapHeader and FmapAreaHeader
|
| + const char* name); |
| + |
| +#endif /*__FMAP_H__ */ |
|
gauravsh
2011/02/10 20:02:05
2 spaces here before start of comment
Che-Liang Chiou
2011/02/14 02:27:53
Done.
|