armadillo9var.h revision 1.2.22.2 1 1.2.22.2 rpaulo /* $NetBSD: armadillo9var.h,v 1.2.22.2 2006/09/09 02:38:40 rpaulo Exp $ */
2 1.2.22.2 rpaulo
3 1.2.22.2 rpaulo /*
4 1.2.22.2 rpaulo * Copyright (c) 2006 HAMAJIMA Katsuomi. All rights reserved.
5 1.2.22.2 rpaulo *
6 1.2.22.2 rpaulo * Redistribution and use in source and binary forms, with or without
7 1.2.22.2 rpaulo * modification, are permitted provided that the following conditions
8 1.2.22.2 rpaulo * are met:
9 1.2.22.2 rpaulo * 1. Redistributions of source code must retain the above copyright
10 1.2.22.2 rpaulo * notice, this list of conditions and the following disclaimer.
11 1.2.22.2 rpaulo * 2. Redistributions in binary form must reproduce the above copyright
12 1.2.22.2 rpaulo * notice, this list of conditions and the following disclaimer in the
13 1.2.22.2 rpaulo * documentation and/or other materials provided with the distribution.
14 1.2.22.2 rpaulo *
15 1.2.22.2 rpaulo * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 1.2.22.2 rpaulo * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 1.2.22.2 rpaulo * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 1.2.22.2 rpaulo * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 1.2.22.2 rpaulo * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 1.2.22.2 rpaulo * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 1.2.22.2 rpaulo * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 1.2.22.2 rpaulo * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 1.2.22.2 rpaulo * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 1.2.22.2 rpaulo * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 1.2.22.2 rpaulo * SUCH DAMAGE.
26 1.2.22.2 rpaulo */
27 1.2.22.2 rpaulo
28 1.2.22.2 rpaulo #ifndef _ARMADILLO9VAR_H_
29 1.2.22.2 rpaulo #define _ARMADILLO9VAR_H_
30 1.2.22.2 rpaulo
31 1.2.22.2 rpaulo /* model type */
32 1.2.22.2 rpaulo
33 1.2.22.2 rpaulo #define DEVCFG_ARMADILLO9 0x08140000
34 1.2.22.2 rpaulo #define DEVCFG_ARMADILLO210 0x0a140d00
35 1.2.22.2 rpaulo
36 1.2.22.2 rpaulo struct armadillo_model_t {
37 1.2.22.2 rpaulo unsigned long devcfg;
38 1.2.22.2 rpaulo const char *name;
39 1.2.22.2 rpaulo };
40 1.2.22.2 rpaulo
41 1.2.22.2 rpaulo extern struct armadillo_model_t *armadillo_model;
42 1.2.22.2 rpaulo
43 1.2.22.2 rpaulo
44 1.2.22.2 rpaulo /* information from bootloader */
45 1.2.22.2 rpaulo
46 1.2.22.2 rpaulo #define BOOTPARAM_TAG_NONE 0x00000000
47 1.2.22.2 rpaulo #define BOOTPARAM_TAG_MEM 0x54410002
48 1.2.22.2 rpaulo #define BOOTPARAM_TAG_CMDLINE 0x54410009
49 1.2.22.2 rpaulo
50 1.2.22.2 rpaulo struct bootparam_tag_header {
51 1.2.22.2 rpaulo unsigned long size;
52 1.2.22.2 rpaulo unsigned long tag;
53 1.2.22.2 rpaulo };
54 1.2.22.2 rpaulo
55 1.2.22.2 rpaulo struct bootparam_tag_mem32 {
56 1.2.22.2 rpaulo unsigned long size;
57 1.2.22.2 rpaulo unsigned long start;
58 1.2.22.2 rpaulo };
59 1.2.22.2 rpaulo
60 1.2.22.2 rpaulo struct bootparam_tag_cmdline {
61 1.2.22.2 rpaulo char cmdline[1];
62 1.2.22.2 rpaulo };
63 1.2.22.2 rpaulo
64 1.2.22.2 rpaulo struct bootparam_tag {
65 1.2.22.2 rpaulo struct bootparam_tag_header hdr;
66 1.2.22.2 rpaulo union {
67 1.2.22.2 rpaulo struct bootparam_tag_mem32 mem;
68 1.2.22.2 rpaulo struct bootparam_tag_cmdline cmdline;
69 1.2.22.2 rpaulo } u;
70 1.2.22.2 rpaulo };
71 1.2.22.2 rpaulo
72 1.2.22.2 rpaulo #define bootparam_tag_next(t) \
73 1.2.22.2 rpaulo ((struct bootparam_tag *)((unsigned long *)(t) + (t)->hdr.size))
74 1.2.22.2 rpaulo
75 1.2.22.2 rpaulo extern char bootparam[];
76 1.2.22.2 rpaulo
77 1.2.22.2 rpaulo extern uint8_t armadillo9_ethaddr[];
78 1.2.22.2 rpaulo
79 1.2.22.2 rpaulo #endif /* _ARMADILLO9VAR_H_ */
80