1 /* $NetBSD: cfe_ioctl.h,v 1.2 2003/02/07 17:52:08 cgd Exp $ */ 2 3 /*- 4 * Copyright 2000, 2001 5 * Broadcom Corporation. All rights reserved. 6 * 7 * This software is furnished under license and may be used and copied only 8 * in accordance with the following terms and conditions. Subject to these 9 * conditions, you may download, copy, install, use, modify and distribute 10 * modified or unmodified copies of this software in source and/or binary 11 * form. No title or ownership is transferred hereby. 12 * 13 * 1) Any source code used, modified or distributed must reproduce and 14 * retain this copyright notice and list of conditions as they appear in 15 * the source file. 16 * 17 * 2) No right is granted to use any trade name, trademark, or logo of 18 * Broadcom Corporation. The "Broadcom Corporation" name may not be 19 * used to endorse or promote products derived from this software 20 * without the prior written permission of Broadcom Corporation. 21 * 22 * 3) THIS SOFTWARE IS PROVIDED "AS-IS" AND ANY EXPRESS OR IMPLIED 23 * WARRANTIES, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF 24 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR 25 * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL BROADCOM BE LIABLE 26 * FOR ANY DAMAGES WHATSOEVER, AND IN PARTICULAR, BROADCOM SHALL NOT BE 27 * LIABLE FOR DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 30 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 31 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 32 * OR OTHERWISE), EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 * 34 * $FreeBSD$ 35 */ 36 37 /* ********************************************************************* 38 * Broadcom Common Firmware Environment (CFE) 39 * 40 * IOCTL definitions File: cfe_ioctl.h 41 * 42 * IOCTL function numbers and I/O data structures. 43 * 44 * Author: Mitch Lichtenberg (mpl@broadcom.com) 45 * 46 ********************************************************************* */ 47 48 49 /* ********************************************************************* 50 * NVFAM and FLASH stuff 51 ********************************************************************* */ 52 53 #define IOCTL_NVRAM_GETINFO 1 /* return nvram_info_t */ 54 #define IOCTL_NVRAM_ERASE 2 /* erase sector containing nvram_info_t area */ 55 #define IOCTL_FLASH_ERASE_SECTOR 3 /* erase an arbitrary sector */ 56 #define IOCTL_FLASH_ERASE_ALL 4 /* Erase the entire flash */ 57 58 typedef struct nvram_info_s { 59 int nvram_offset; /* offset of environment area */ 60 int nvram_size; /* size of environment area */ 61 int nvram_eraseflg; /* true if we need to erase first */ 62 } nvram_info_t; 63 64 /* ********************************************************************* 65 * Ethernet stuff 66 ********************************************************************* */ 67 68 #define IOCTL_ETHER_GETHWADDR 1 69 70 /* ********************************************************************* 71 * Block device stuff 72 ********************************************************************* */ 73 74 #define IOCTL_BLOCK_GETBLOCKSIZE 1 75 #define IOCTL_BLOCK_GETTOTALBLOCKS 2 76