]> Joshua Wise's Git repositories - netwatch.git/blobdiff - ich2/smram-ich2.c
Put BSS clearing in firstrun
[netwatch.git] / ich2 / smram-ich2.c
index 20c2b8ac6b301b49a8ccd6cb3569996112c54490..edf8ad5ffda83d1f7a03a5264875da15910ebf07 100644 (file)
@@ -2,7 +2,7 @@
 #include <pci.h>
 #include <smram.h>
 
-#ifdef __linux__
+#ifndef __RAW__
 
 static unsigned long memsz[] = {
        0,                      // 0
@@ -94,7 +94,7 @@ smram_state_t smram_save_state()
 
 void smram_restore_state(smram_state_t state)
 {
-       return pci_write8(0, 0, 0, SMRAMC, state); 
+       pci_write8(0, 0, 0, SMRAMC, state); 
 }
 
 int smram_aseg_set_state (int open) {
@@ -127,3 +127,25 @@ int smram_aseg_set_state (int open) {
 
        return 0;
 }
+
+int smram_tseg_set_state (int open) {
+       unsigned char smramc;
+
+       if (smram_locked())
+               return -1;
+               
+       smramc = pci_read8(0, 0, 0, SMRAMC);
+
+       switch (open)
+       {
+       case SMRAM_TSEG_OPEN:
+               smramc = (smramc & 0x8F) | 0x00;
+               break;
+       default:
+               return -1;
+       }
+
+       pci_write8(0, 0, 0, SMRAMC, smramc);
+
+       return 0;
+}
This page took 0.022376 seconds and 4 git commands to generate.