aboutsummaryrefslogtreecommitdiff
path: root/util/romcc/tests/simple_test61.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/romcc/tests/simple_test61.c')
-rw-r--r--util/romcc/tests/simple_test61.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/util/romcc/tests/simple_test61.c b/util/romcc/tests/simple_test61.c
new file mode 100644
index 0000000000..583a9db36b
--- /dev/null
+++ b/util/romcc/tests/simple_test61.c
@@ -0,0 +1,26 @@
+static void spd_set_nbxcfg(void)
+{
+ /*
+ * Effects: Uses serial presence detect to set the
+ * ECC support flags in the NBXCFG register
+ * FIXME: Check for illegal/unsupported ram configurations and abort
+ */
+ unsigned device;
+
+ for(device = 0x50; device <= 0x53; device += 1) {
+ int byte;
+
+ byte = 0; /* Disable ECC */
+ /* 0 == None, 1 == Parity, 2 == ECC */
+ if (byte != 2) continue;
+
+ /* set the device I'm talking too */
+ __builtin_outb(device, 0x1004);
+
+ /* poll for transaction completion */
+ byte = __builtin_inb(0x10);
+ while(byte == 0) {
+ byte = __builtin_inb(0x10);
+ }
+ }
+}