1 |
/* GXemul: $Id: cyclone_boot.h,v 1.1 2005/08/20 12:47:06 debug Exp $ */ |
2 |
/* $NetBSD: cyclone_boot.h,v 1.1 2001/06/20 22:14:34 chris Exp $ */ |
3 |
|
4 |
#ifndef CYCLONE_BOOT_H |
5 |
#define CYCLONE_BOOT_H |
6 |
|
7 |
/* |
8 |
* Copyright (c) 1997,1998 Mark Brinicombe. |
9 |
* Copyright (c) 1997,1998 Causality Limited. |
10 |
* All rights reserved. |
11 |
* |
12 |
* Redistribution and use in source and binary forms, with or without |
13 |
* modification, are permitted provided that the following conditions |
14 |
* are met: |
15 |
* 1. Redistributions of source code must retain the above copyright |
16 |
* notice, this list of conditions and the following disclaimer. |
17 |
* 2. Redistributions in binary form must reproduce the above copyright |
18 |
* notice, this list of conditions and the following disclaimer in the |
19 |
* documentation and/or other materials provided with the distribution. |
20 |
* 3. All advertising materials mentioning features or use of this software |
21 |
* must display the following acknowledgement: |
22 |
* This product includes software developed by Mark Brinicombe. |
23 |
* 4. The name of the company nor the name of the author may be used to |
24 |
* endorse or promote products derived from this software without specific |
25 |
* prior written permission. |
26 |
* |
27 |
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED |
28 |
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
29 |
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
30 |
* IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
31 |
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
32 |
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
33 |
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
34 |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
35 |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
36 |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
37 |
* SUCH DAMAGE. |
38 |
*/ |
39 |
|
40 |
/* |
41 |
* Define the boot structure that is passed to the kernel |
42 |
* from the cyclone firmware. |
43 |
* |
44 |
* The bootloader reserves a page for boot argument info. |
45 |
* This page will contain the ebsaboot structure and the |
46 |
* kernel argument string. |
47 |
*/ |
48 |
|
49 |
struct ebsaboot { |
50 |
u_int32_t bt_magic; /* boot info magic number */ |
51 |
u_int32_t bt_vargp; /* virtual addr of arg page */ |
52 |
u_int32_t bt_pargp; /* physical addr of arg page */ |
53 |
u_int32_t bt_args; /* kernel args string pointer */ |
54 |
/* was: const char * */ |
55 |
uint32_t bt_l1; /* active L1 page table */ |
56 |
/* was: pd_entry_t * */ |
57 |
u_int32_t bt_memstart; /* start of physical memory */ |
58 |
u_int32_t bt_memend; /* end of physical memory */ |
59 |
u_int32_t bt_memavail; /* start of avail phys memory */ |
60 |
u_int32_t bt_fclk; /* fclk frequency */ |
61 |
u_int32_t bt_pciclk; /* PCI bus frequency */ |
62 |
u_int32_t bt_vers; /* structure version (CATS) */ |
63 |
u_int32_t bt_features; /* feature mask (CATS) */ |
64 |
}; |
65 |
|
66 |
#define BT_MAGIC_NUMBER_EBSA 0x45425341 |
67 |
#define BT_MAGIC_NUMBER_CATS 0x43415453 |
68 |
|
69 |
#define BT_BOOT_VERSION_OLD 0 |
70 |
#define BT_BOOT_VERSION_NEW 1 |
71 |
|
72 |
/* End of cyclone_boot.h */ |
73 |
|
74 |
#endif /* CYCLONE_BOOT_H */ |