changeset 541097c69e22 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=541097c69e22
description:
        X86: Add makeAtomicResponse to the read/write functions of x86 devices.

diffstat:

8 files changed, 16 insertions(+)
src/arch/x86/interrupts.cc |    2 ++
src/dev/x86/cmos.cc        |    2 ++
src/dev/x86/i8042.cc       |    2 ++
src/dev/x86/i82094aa.cc    |    2 ++
src/dev/x86/i8237.cc       |    2 ++
src/dev/x86/i8254.cc       |    2 ++
src/dev/x86/i8259.cc       |    2 ++
src/dev/x86/speaker.cc     |    2 ++

diffs (152 lines):

diff -r 29cecf4fe602 -r 541097c69e22 src/arch/x86/interrupts.cc
--- a/src/arch/x86/interrupts.cc        Wed Feb 25 10:16:34 2009 -0800
+++ b/src/arch/x86/interrupts.cc        Wed Feb 25 10:16:43 2009 -0800
@@ -221,6 +221,7 @@
             "Reading Local APIC register %d at offset %#x as %#x.\n",
             reg, offset, val);
     pkt->setData(((uint8_t *)&val) + (offset & mask(3)));
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -238,6 +239,7 @@
             "Writing Local APIC register %d at offset %#x as %#x.\n",
             reg, offset, gtoh(val));
     setReg(reg, gtoh(val));
+    pkt->makeAtomicResponse();
     return latency;
 }
 void
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/cmos.cc
--- a/src/dev/x86/cmos.cc       Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/cmos.cc       Wed Feb 25 10:16:43 2009 -0800
@@ -56,6 +56,7 @@
       default:
         panic("Read from undefined CMOS port.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -74,6 +75,7 @@
       default:
         panic("Write to undefined CMOS port.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/i8042.cc
--- a/src/dev/x86/i8042.cc      Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/i8042.cc      Wed Feb 25 10:16:43 2009 -0800
@@ -303,6 +303,7 @@
     } else {
         panic("Read from unrecognized port %#x.\n", addr);
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -434,6 +435,7 @@
     } else {
         panic("Write to unrecognized port %#x.\n", addr);
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/i82094aa.cc
--- a/src/dev/x86/i82094aa.cc   Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/i82094aa.cc   Wed Feb 25 10:16:43 2009 -0800
@@ -67,6 +67,7 @@
       default:
         panic("Illegal read from I/O APIC.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -85,6 +86,7 @@
       default:
         panic("Illegal write to I/O APIC.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/i8237.cc
--- a/src/dev/x86/i8237.cc      Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/i8237.cc      Wed Feb 25 10:16:43 2009 -0800
@@ -63,6 +63,7 @@
       default:
         panic("Read from undefined i8237 register %d.\n", offset);
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -120,6 +121,7 @@
       default:
         panic("Write to undefined i8254 register.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/i8254.cc
--- a/src/dev/x86/i8254.cc      Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/i8254.cc      Wed Feb 25 10:16:43 2009 -0800
@@ -56,6 +56,7 @@
     } else {
         panic("Read from undefined i8254 register.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -71,6 +72,7 @@
     } else {
         panic("Write to undefined i8254 register.\n");
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/i8259.cc
--- a/src/dev/x86/i8259.cc      Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/i8259.cc      Wed Feb 25 10:16:43 2009 -0800
@@ -65,6 +65,7 @@
         pkt->set(IMR);
         break;
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -210,6 +211,7 @@
         }
         break;
     }
+    pkt->makeAtomicResponse();
     return latency;
 }
 
diff -r 29cecf4fe602 -r 541097c69e22 src/dev/x86/speaker.cc
--- a/src/dev/x86/speaker.cc    Wed Feb 25 10:16:34 2009 -0800
+++ b/src/dev/x86/speaker.cc    Wed Feb 25 10:16:43 2009 -0800
@@ -47,6 +47,7 @@
             controlVal.speaker ? "on" : "off",
             controlVal.timer ? "on" : "off");
     pkt->set((uint8_t)controlVal);
+    pkt->makeAtomicResponse();
     return latency;
 }
 
@@ -67,6 +68,7 @@
     controlVal.speaker = val.speaker;
     DPRINTF(PcSpeaker, "Writing to speaker device: gate %s, speaker %s.\n",
             controlVal.gate ? "on" : "off", controlVal.speaker ? "on" : "off");
+    pkt->makeAtomicResponse();
     return latency;
 }
 
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to