[BACK]Return to config.c CVS log [TXT][DIR] Up to [local] / funnyos / arch / testarm

Annotation of funnyos/arch/testarm/config.c, Revision 1.15

1.1       init        1: /*
1.15    ! nbrk        2:  * $Id: config.c,v 1.14 2007/11/23 13:37:42 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);
1.14      nbrk       27: extern void hello2_enter(void);
1.13      nbrk       28:
                     29:
1.1       init       30: /* amount of physical memory, in Bytes */
                     31: uint32_t physmem = 33554432;
                     32:
                     33: /*
                     34:  * Where to attach each device.
                     35:  */
                     36: struct attachinfo config_attachinfo[] = {
1.10      init       37:        /* child,   parent, pminor, loc,        intrno, flags */
1.15    ! nbrk       38:        { "cpu" ,       "root",         0, 0,                   -1,     0 },
        !            39:        { "obio",       "root",         0, 0,                   -1,     0 },
        !            40:        { "tacons",     "obio",         0, 0x10000000,  -1,     0 },
1.10      init       41:        { "tartc",      "obio",         0, 0x15000000,  4,  0 },
1.15    ! nbrk       42:        { "tairqc", "obio",             0, 0x16000000,  -1,     0 },
        !            43:        { "fcons",      "tacons",       0, 0,                   -1,     0 },
        !            44:        { NULL,         NULL,           0, 0,                   -1,  0 }
1.1       init       45: };
                     46:
                     47:
                     48: /*
                     49:  * Link device names with their drivers.
                     50:  */
                     51: struct driverinfo config_driverinfo[] = {
1.7       init       52: /* name, driverp, ninstances (should be -1) */
1.1       init       53:        { "root", &root_dr, -1 },
1.3       init       54:        { "obio", &obio_dr, -1 },
1.1       init       55:        { "cpu" , &cpu_dr, -1 },
1.4       init       56:        { "tacons", &tacons_dr, -1 },
1.9       init       57:        { "tartc", &tartc_dr, -1 },
1.6       init       58:        { "fcons", &fcons_dr, -1 },
1.11      init       59:        { "tairqc", &tairqc_dr, -1 },
1.1       init       60:        { NULL, NULL, 0 }
                     61: };
                     62:
                     63:
                     64: /*
1.13      nbrk       65:  * Tasks.
                     66:  */
                     67: struct u_task config_tasklist[] = {
                     68: /* name, priority, enter */
                     69:        { "hello", 1, hello_enter },
1.14      nbrk       70:        { "hello2",1, hello2_enter },
1.13      nbrk       71:        { NULL,    0, NULL }
                     72: };
                     73:
                     74:
                     75: /*
1.1       init       76:  * Machine early-stage initialization hooks.
                     77:  */
                     78:
                     79: void
1.12      nbrk       80: config_machineinit(void)
1.1       init       81: {
                     82:        /*
                     83:         * Configure putchar, so we can printf messages to the console without fcons.
                     84:         */
                     85:        /* putchar = tauart_early_putc; */
                     86:        putchar = tacons_early_putc;
1.13      nbrk       87:
1.1       init       88: }
                     89:
                     90:

CVSweb