|
|
1.1 ! root 1: /****************************************************************************** ! 2: * Copyright (c) 2004, 2008 IBM Corporation ! 3: * All rights reserved. ! 4: * This program and the accompanying materials ! 5: * are made available under the terms of the BSD License ! 6: * which accompanies this distribution, and is available at ! 7: * http://www.opensource.org/licenses/bsd-license.php ! 8: * ! 9: * Contributors: ! 10: * IBM Corporation - initial implementation ! 11: *****************************************************************************/ ! 12: #ifndef CFGPARSE_H ! 13: #define CFGPARSE_H ! 14: ! 15: #include <byteswap.h> ! 16: #include <endian.h> ! 17: ! 18: #if __BYTE_ORDER == __BIG_ENDIAN ! 19: #define cpu_to_be64(x) (x) ! 20: #else ! 21: #define cpu_to_be64(x) bswap_64(x) ! 22: #endif ! 23: ! 24: struct ffs_chain_t { ! 25: int count; ! 26: unsigned int romfs_size; ! 27: struct ffs_header_t *first; ! 28: }; ! 29: ! 30: #define FLAG_LLFW 1 /* low level firmware at fix offs in romfs */ ! 31: ! 32: #define needs_fix_offset(hdr) ((hdr)->flags & FLAG_LLFW) ! 33: ! 34: struct ffs_header_t { ! 35: unsigned long long flags; ! 36: unsigned long long romaddr; ! 37: char *token; ! 38: char *imagefile; ! 39: int imagefile_length; ! 40: struct ffs_header_t *linked_to; ! 41: struct ffs_header_t *next; ! 42: unsigned long long save_data; ! 43: unsigned long long save_data_len; ! 44: int save_data_valid; ! 45: ! 46: unsigned long long addr; /* tmp */ ! 47: int hdrsize; /* tmp */ ! 48: int tokensize; /* tmp */ ! 49: int ffsize; /* tmp */ ! 50: }; ! 51: ! 52: void dump_fs_contents(struct ffs_chain_t *chain); ! 53: void find_duplicates(struct ffs_chain_t *chain); ! 54: void free_chain_memory(struct ffs_chain_t *chain); ! 55: ! 56: int read_config(int conf_file, struct ffs_chain_t *ffs_chain); ! 57: int reorder_ffs_chain(struct ffs_chain_t *fs); ! 58: int build_ffs(struct ffs_chain_t *fs, const char *outfile, int notime); ! 59: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.