From a67aab70834fe28c34d4a1c9203f6f1b8462cc38 Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Sat, 27 Sep 2008 10:08:28 +0000 Subject: Add string support to nvramtool. To add a string to your cmos.layout, you need to specify type 's': #start len type unused name 416 512 s 0 boot_devices With this patch you can do $ nvramtool -w boot_devices="(hd0,0);(hd2,1);(hd3)" And FILO will attempt to load a menu.lst from any of these devices in that order. The patch is not exactly pretty, but a cleaner solution might have resulted in a complete rewrite of the tool, which I did not want. Signed-off-by: Stefan Reinauer Acked-by: Joseph Smith git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3613 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- util/nvramtool/cmos_lowlevel.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'util/nvramtool/cmos_lowlevel.h') diff --git a/util/nvramtool/cmos_lowlevel.h b/util/nvramtool/cmos_lowlevel.h index 73634e02c9..20a503f75b 100644 --- a/util/nvramtool/cmos_lowlevel.h +++ b/util/nvramtool/cmos_lowlevel.h @@ -1,6 +1,5 @@ /*****************************************************************************\ * cmos_lowlevel.h - * $Id$ ***************************************************************************** * Copyright (C) 2002-2005 The Regents of the University of California. * Produced at the Lawrence Livermore National Laboratory. @@ -33,19 +32,20 @@ #define NVRAMTOOL_CMOS_LOWLEVEL_H #include "common.h" +#include "layout.h" #define CMOS_AREA_OUT_OF_RANGE (CMOS_RESULT_START + 0) #define CMOS_AREA_OVERLAPS_RTC (CMOS_RESULT_START + 1) #define CMOS_AREA_TOO_WIDE (CMOS_RESULT_START + 2) -unsigned long long cmos_read (unsigned bit, unsigned length); -void cmos_write (unsigned bit, unsigned length, unsigned long long value); +unsigned long long cmos_read (const cmos_entry_t *e); +void cmos_write (const cmos_entry_t *e, unsigned long long value); unsigned char cmos_read_byte (unsigned index); void cmos_write_byte (unsigned index, unsigned char value); void cmos_read_all (unsigned char data[]); void cmos_write_all (unsigned char data[]); void set_iopl (int level); -int verify_cmos_op (unsigned bit, unsigned length); +int verify_cmos_op (unsigned bit, unsigned length, cmos_entry_config_t config); #define CMOS_SIZE 256 /* size of CMOS memory in bytes */ #define CMOS_RTC_AREA_SIZE 14 /* first 14 bytes control real time clock */ -- cgit v1.2.3