Fix volatileness of bwio
authorMichael Spang <mspang@csclub.uwaterloo.ca>
Wed, 10 Nov 2010 12:44:14 +0000 (07:44 -0500)
committerMichael Spang <mspang@csclub.uwaterloo.ca>
Wed, 10 Nov 2010 12:44:14 +0000 (07:44 -0500)
src/bwio.c

index 935b895..5e21a37 100644 (file)
@@ -17,7 +17,7 @@
  *     fifos enabled
  */
 int bwsetfifo(int channel, int state) {
-    int *line, buf;
+    volatile int *line, buf;
     switch (channel) {
     case COM1:
         line = (int *)(UART1_BASE + UART_LCRH_OFFSET);
@@ -36,7 +36,7 @@ int bwsetfifo(int channel, int state) {
 }
 
 int bwsetspeed(int channel, int speed) {
-    int *high, *low;
+    volatile int *high, *low;
     switch (channel) {
     case COM1:
         high = (int *)(UART1_BASE + UART_LCRM_OFFSET);
@@ -65,7 +65,7 @@ int bwsetspeed(int channel, int speed) {
 }
 
 int bwputc(int channel, char c) {
-    int *flags, *data;
+    volatile int *flags, *data;
     switch (channel) {
     case COM1:
         flags = (int *)(UART1_BASE + UART_FLAG_OFFSET);
@@ -130,7 +130,7 @@ void bwputw(int channel, int n, char fc, char *bf) {
 }
 
 int bwgetc(int channel) {
-    int *flags, *data;
+    volatile int *flags, *data;
     unsigned char c;
 
     switch (channel) {