1 /*- 2 * Copyright (c) 2012 The NetBSD Foundation, Inc. 3 * All rights reserved. 4 * 5 * This code is derived from software contributed to The NetBSD Foundation 6 * by Paul Fleischer <paul@xpg.dk> 7 * 8 * Redistribution and use in source and binary forms, with or without 9 * modification, are permitted provided that the following conditions 10 * are met: 11 * 1. Redistributions of source code must retain the above copyright 12 * notice, this list of conditions and the following disclaimer. 13 * 2. Redistributions in binary form must reproduce the above copyright 14 * notice, this list of conditions and the following disclaimer in the 15 * documentation and/or other materials provided with the distribution. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 18 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 19 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 20 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 25 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 27 * POSSIBILITY OF SUCH DAMAGE. 28 */ 29 /* arch/sandpoint/include/bootinfo.h has served as base for this file */ 30 #ifndef _MINI2440_BOOTINFO_H 31 #define _MINI2440_BOOTINFO_H 32 33 #include <machine/bootconfig.h> 34 35 #define BOOTINFO_MAGIC 0xb007babe 36 #define BOOTINFO_MAXSIZE 4096 37 38 struct btinfo_common { 39 int next; 40 int type; 41 }; 42 43 #define BTINFO_MAGIC 1 44 #define BTINFO_SYMTAB 2 45 #define BTINFO_BOOTSTRING 3 46 #define BTINFO_BOOTPATH 4 47 #define BTINFO_ROOTDEVICE 5 48 #define BTINFO_NET 6 49 50 struct btinfo_magic { 51 struct btinfo_common common; 52 unsigned int magic; 53 }; 54 55 struct btinfo_symtab { 56 struct btinfo_common common; 57 int nsym; 58 void *ssym; 59 void *esym; 60 }; 61 62 struct btinfo_bootstring { 63 struct btinfo_common common; 64 char bootstring[MAX_BOOT_STRING]; 65 }; 66 67 struct btinfo_bootpath { 68 struct btinfo_common common; 69 char bootpath[80]; 70 }; 71 72 struct btinfo_rootdevice { 73 struct btinfo_common common; 74 char devname[16]; 75 unsigned int cookie; 76 unsigned int partition; 77 }; 78 79 struct btinfo_net { 80 struct btinfo_common common; 81 char devname[16]; 82 unsigned cookie; 83 uint8_t mac_address[6]; 84 }; 85 86 #endif 87