Annotation of funnyos/arch/testarm/config.c, Revision 1.13
1.1 init 1: /*
1.13 ! nbrk 2: * $Id: config.c,v 1.12 2007/11/19 11:21:48 nbrk Exp $
1.1 init 3: */
4: #include <sys/types.h>
5: #include <sys/device.h>
1.13 ! nbrk 6: #include <sys/kern_sched.h>
1.1 init 7: /*
8: * Configuration file for platform (testarm).
9: */
10:
11: /* device drivers */
12: extern struct driver root_dr;
13: extern struct driver cpu_dr;
1.3 init 14: extern struct driver obio_dr;
1.5 init 15: extern struct driver tacons_dr;
1.6 init 16: extern struct driver fcons_dr;
1.9 init 17: extern struct driver tartc_dr;
1.11 init 18: extern struct driver tairqc_dr;
1.1 init 19:
20:
1.13 ! nbrk 21: /* putchar & early putchar */
1.1 init 22: extern void(*putchar)(char);
23: void tacons_early_putc(char ch);
24:
1.13 ! nbrk 25: /* tasks */
! 26: extern void hello_enter(void);
! 27:
! 28:
1.1 init 29: /* amount of physical memory, in Bytes */
30: uint32_t physmem = 33554432;
31:
32: /*
33: * Where to attach each device.
34: */
35: struct attachinfo config_attachinfo[] = {
1.10 init 36: /* child, parent, pminor, loc, intrno, flags */
37: { "cpu" , "root", 0, 0, 0, 0 },
38: { "obio", "root", 0, 0, 0, 0 },
39: { "tacons", "obio", 0, 0x10000000, 0, 0 },
40: { "tartc", "obio", 0, 0x15000000, 4, 0 },
1.11 init 41: { "tairqc", "obio", 0, 0x16000000, 0, 0 },
1.10 init 42: { "fcons", "tacons", 0, 0, 0, 0 },
43: { NULL, NULL, 0, 0, 0, 0 }
1.1 init 44: };
45:
46:
47: /*
48: * Link device names with their drivers.
49: */
50: struct driverinfo config_driverinfo[] = {
1.7 init 51: /* name, driverp, ninstances (should be -1) */
1.1 init 52: { "root", &root_dr, -1 },
1.3 init 53: { "obio", &obio_dr, -1 },
1.1 init 54: { "cpu" , &cpu_dr, -1 },
1.4 init 55: { "tacons", &tacons_dr, -1 },
1.9 init 56: { "tartc", &tartc_dr, -1 },
1.6 init 57: { "fcons", &fcons_dr, -1 },
1.11 init 58: { "tairqc", &tairqc_dr, -1 },
1.1 init 59: { NULL, NULL, 0 }
60: };
61:
62:
63: /*
1.13 ! nbrk 64: * Tasks.
! 65: */
! 66: struct u_task config_tasklist[] = {
! 67: /* name, priority, enter */
! 68: { "hello", 1, hello_enter },
! 69: { NULL, 0, NULL }
! 70: };
! 71:
! 72:
! 73: /*
1.1 init 74: * Machine early-stage initialization hooks.
75: */
76:
77: void
1.12 nbrk 78: config_machineinit(void)
1.1 init 79: {
80: /*
81: * Configure putchar, so we can printf messages to the console without fcons.
82: */
83: /* putchar = tauart_early_putc; */
84: putchar = tacons_early_putc;
1.13 ! nbrk 85:
1.1 init 86: }
87:
88:
CVSweb