Ok. I didn't make 2.4.0 in 2000. Tough. I tried, but we had some
[davej-history.git] / include / asm-arm / setup.h
blobc067c9618b4457e76f6357e5349123c411e3f234
1 /*
2 * linux/include/asm/setup.h
4 * Copyright (C) 1997-1999 Russell King
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
10 * Structure passed to kernel to tell it about the
11 * hardware it's running on. See linux/Documentation/arm/Setup
12 * for more info.
14 #ifndef __ASMARM_SETUP_H
15 #define __ASMARM_SETUP_H
18 * Usage:
19 * - do not go blindly adding fields, add them at the end
20 * - when adding fields, don't rely on the address until
21 * a patch from me has been released
22 * - unused fields should be zero (for future expansion)
23 * - this structure is relatively short-lived - only
24 * guaranteed to contain useful data in setup_arch()
26 #define COMMAND_LINE_SIZE 1024
28 struct param_struct {
29 union {
30 struct {
31 unsigned long page_size; /* 0 */
32 unsigned long nr_pages; /* 4 */
33 unsigned long ramdisk_size; /* 8 */
34 unsigned long flags; /* 12 */
35 #define FLAG_READONLY 1
36 #define FLAG_RDLOAD 4
37 #define FLAG_RDPROMPT 8
38 unsigned long rootdev; /* 16 */
39 unsigned long video_num_cols; /* 20 */
40 unsigned long video_num_rows; /* 24 */
41 unsigned long video_x; /* 28 */
42 unsigned long video_y; /* 32 */
43 unsigned long memc_control_reg; /* 36 */
44 unsigned char sounddefault; /* 40 */
45 unsigned char adfsdrives; /* 41 */
46 unsigned char bytes_per_char_h; /* 42 */
47 unsigned char bytes_per_char_v; /* 43 */
48 unsigned long pages_in_bank[4]; /* 44 */
49 unsigned long pages_in_vram; /* 60 */
50 unsigned long initrd_start; /* 64 */
51 unsigned long initrd_size; /* 68 */
52 unsigned long rd_start; /* 72 */
53 unsigned long system_rev; /* 76 */
54 unsigned long system_serial_low; /* 80 */
55 unsigned long system_serial_high; /* 84 */
56 unsigned long mem_fclk_21285; /* 88 */
57 } s;
58 char unused[256];
59 } u1;
60 union {
61 char paths[8][128];
62 struct {
63 unsigned long magic;
64 char n[1024 - sizeof(unsigned long)];
65 } s;
66 } u2;
67 char commandline[COMMAND_LINE_SIZE];
71 * Memory map description
73 #define NR_BANKS 4
75 struct meminfo {
76 int nr_banks;
77 unsigned long end;
78 struct {
79 unsigned long start;
80 unsigned long size;
81 int node;
82 } bank[NR_BANKS];
85 extern struct meminfo meminfo;
87 #endif