/*****************************************************************************\ * opts.h ***************************************************************************** * Copyright (C) 2002-2005 The Regents of the University of California. * Produced at the Lawrence Livermore National Laboratory. * Written by Dave Peterson <dsp@llnl.gov> <dave_peterson@pobox.com>. * UCRL-CODE-2003-012 * All rights reserved. * * This file is part of nvramtool, a utility for reading/writing coreboot * parameters and displaying information from the coreboot table. * For details, see http://coreboot.org/nvramtool. * * Please also read the file DISCLAIMER which is included in this software * distribution. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License (as published by the * Free Software Foundation) version 2, dated June 1991. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and * conditions of the GNU General Public License for more details. \*****************************************************************************/ #ifndef OPTS_H #define OPTS_H #include "common.h" typedef enum { NVRAMTOOL_OP_SHOW_VERSION = 0, NVRAMTOOL_OP_SHOW_USAGE, NVRAMTOOL_OP_LBTABLE_SHOW_INFO, NVRAMTOOL_OP_LBTABLE_DUMP, NVRAMTOOL_OP_SHOW_PARAM_VALUES, NVRAMTOOL_OP_CMOS_SHOW_ONE_PARAM, NVRAMTOOL_OP_CMOS_SHOW_ALL_PARAMS, NVRAMTOOL_OP_CMOS_SET_ONE_PARAM, NVRAMTOOL_OP_CMOS_SET_PARAMS_STDIN, NVRAMTOOL_OP_CMOS_SET_PARAMS_FILE, NVRAMTOOL_OP_CMOS_CHECKSUM, NVRAMTOOL_OP_SHOW_LAYOUT, NVRAMTOOL_OP_WRITE_CMOS_DUMP, NVRAMTOOL_OP_READ_CMOS_DUMP, NVRAMTOOL_OP_SHOW_CMOS_HEX_DUMP, NVRAMTOOL_OP_SHOW_CMOS_DUMPFILE, NVRAMTOOL_OP_WRITE_BINARY_FILE, NVRAMTOOL_OP_WRITE_HEADER_FILE } nvramtool_op_t; typedef struct { nvramtool_op_t op; char *param; } nvramtool_op_info_t; typedef enum { NVRAMTOOL_MOD_SHOW_VALUE_ONLY = 0, NVRAMTOOL_MOD_USE_CMOS_LAYOUT_FILE, NVRAMTOOL_MOD_USE_CBFS_FILE, NVRAMTOOL_MOD_USE_CMOS_FILE, NVRAMTOOL_MOD_USE_CMOS_OPT_TABLE, NVRAMTOOL_NUM_OP_MODIFIERS /* must always be last */ } nvramtool_op_modifier_t; typedef struct { int found; int found_seq; char *param; } nvramtool_op_modifier_info_t; extern nvramtool_op_info_t nvramtool_op; extern nvramtool_op_modifier_info_t nvramtool_op_modifiers[]; void parse_nvramtool_args(int argc, char *argv[]); #endif /* OPTS_H */