diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 1998-06-23 19:45:29 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 1998-06-23 19:45:29 +0000 |
commit | 23e2da6e244ebccae95599bd22e8eb82191c7520 (patch) | |
tree | 140e42b22e679c83aa3f7f3c084b52a9eca16f8e /sys/arch/hppa/include/nvm.h | |
parent | eae609490d212153bfb18fdecc719446860a4433 (diff) |
some includes
Diffstat (limited to 'sys/arch/hppa/include/nvm.h')
-rw-r--r-- | sys/arch/hppa/include/nvm.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/sys/arch/hppa/include/nvm.h b/sys/arch/hppa/include/nvm.h new file mode 100644 index 00000000000..a0712807762 --- /dev/null +++ b/sys/arch/hppa/include/nvm.h @@ -0,0 +1,74 @@ +/* $OpenBSD: nvm.h,v 1.1 1998/06/23 19:45:24 mickey Exp $ */ + +/* + * Copyright (c) 1990, 1994 The University of Utah and + * the Computer Systems Laboratory at the University of Utah (CSL). + * All rights reserved. + * + * Permission to use, copy, modify and distribute this software is hereby + * granted provided that (1) source code retains these copyright, permission, + * and disclaimer notices, and (2) redistributions including binaries + * reproduce the notices in supporting documentation, and (3) all advertising + * materials mentioning features or use of this software display the following + * acknowledgement: ``This product includes software developed by the + * Computer Systems Laboratory at the University of Utah.'' + * + * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS + * IS" CONDITION. THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF + * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. + * + * CSL requests users of this software to return to csl-dist@cs.utah.edu any + * improvements that they make and grant CSL redistribution rights. + * + * Utah $Hdr: nvm.h 1.4 94/12/14$ + * Author: Jeff Forys, University of Utah CSL + */ + +#ifndef _NVM_ +#define _NVM_ + +/* + * The PDC provides access to Non-Volatile Memory (NVM). If this + * is implemented (it's HVERSION dependent), the first 256 bytes + * are formatted as follows: + * + * 0x000 +----------------------------+ + * | Implementation information | + * 0x024 +----------------------------+ + * | | + * | IPL information | + * | | + * 0x080 +----------------------------+ + * | | + * | | + * | OS Panic information | + * | | + * | | + * 0x100 +----------------------------+ + * + * It appears that there are at least 256 bytes of NVM, and only + * the "OS Panic information" is not architected. This means that + * we can use locations 0x80 - 0xFF for saving information across + * boots (e.g. boot flags and boot device). I think we should use + * the higher portions of this space first, to avoid conflicting + * with possible future HP-PA plans for the NVM. + * + * The PDC requires that NVM be read/written to in word multiples. + */ + +/* + * Boot flags and boot device (0xF4 - 0xFF). + */ + +#define NVM_BOOTDATA 0xF4 /* location of bootdata in NVM */ +#define NVM_BOOTMAGIC 0xACCEDE /* magic used for bootdata cksum */ +#define NVM_BOOTCKSUM(bd) \ + ((unsigned int) NVM_BOOTMAGIC + (bd).flags + (bd).device) + +struct bootdata { + unsigned int cksum; /* NVM_BOOTMAGIC + flags + device */ + unsigned int flags; /* boot flags */ + unsigned int device; /* boot device */ +}; + +#endif /* _NVM_ */ |