]>
sourceware.org Git - newlib-cygwin.git/blob - libgloss/mips/jmr3904-io.c
3 #define READ_UINT8( _register_, _value_ ) \
4 ((_value_) = *((volatile unsigned char *)(_register_)))
6 #define WRITE_UINT8( _register_, _value_ ) \
7 (*((volatile unsigned char *)(_register_)) = (_value_))
9 /* - Board specific addresses for serial chip */
10 #define DIAG_BASE 0xfffff300
11 #define DIAG_SLCR (DIAG_BASE+0x00)
12 #define DIAG_SLSR (DIAG_BASE+0x04)
13 #define DIAG_SLDICR (DIAG_BASE+0x08)
14 #define DIAG_SLDISR (DIAG_BASE+0x0C)
15 #define DIAG_SFCR (DIAG_BASE+0x10)
16 #define DIAG_SBRG (DIAG_BASE+0x14)
17 #define DIAG_TFIFO (DIAG_BASE+0x20)
18 #define DIAG_RFIFO (DIAG_BASE+0x30)
26 #define READ_UINT16( _register_, _value_ ) \
27 ((_value_) = *((volatile unsigned short *)(_register_)))
29 #define WRITE_UINT16( _register_, _value_ ) \
30 (*((volatile unsigned short *)(_register_)) = (_value_))
40 READ_UINT16 (DIAG_SLDISR
, disr
);
44 disr
= disr
& ~0x0001;
45 READ_UINT8 (DIAG_RFIFO
, c
);
46 WRITE_UINT16 (DIAG_SLDISR
, disr
);
51 outbyte (unsigned char c
)
57 READ_UINT16 (DIAG_SLDISR
, disr
);
61 disr
= disr
& ~0x0002;
62 WRITE_UINT8 (DIAG_TFIFO
, c
);
63 WRITE_UINT16 (DIAG_SLDISR
, disr
);
66 /* Stuff required to setup IO on this board */
67 void board_serial_init (void)
69 WRITE_UINT16 (DIAG_SLCR
, 0x0020);
70 WRITE_UINT16 (DIAG_SLDICR
, 0x0000);
71 WRITE_UINT16 (DIAG_SFCR
, 0x0000);
72 WRITE_UINT16 (DIAG_SBRG
, BRG_T2
| 5);
75 /* If you want this to be initialized as part of the stuff which gets called
76 by crt0, it should be named 'hardware_init_hook'.
77 Local implementations may want to move or add to this function OR
78 do the initializations after main() is entered.
80 void hardware_init_hook(void)
85 /* Structure filled in by get_mem_info. Only the size field is
86 actually used (by sbrk), so the others aren't even filled in. */
95 /* mem_size is provided in the linker script so that we don't have to
97 extern char _mem_size
[];
103 mem
->size
= (unsigned int)_mem_size
;
This page took 0.038078 seconds and 5 git commands to generate.