[openfirmware] r1354 - cpu/x86/pc/olpc/via

svn at openfirmware.info svn at openfirmware.info
Thu Sep 10 10:02:28 CEST 2009


Author: wmb
Date: 2009-09-10 10:02:28 +0200 (Thu, 10 Sep 2009)
New Revision: 1354

Modified:
   cpu/x86/pc/olpc/via/resume.bth
Log:
Via S3 support - save and restore PCI config registers - BARs,
enables, IRQs - during S3 from OFW.


Modified: cpu/x86/pc/olpc/via/resume.bth
===================================================================
--- cpu/x86/pc/olpc/via/resume.bth	2009-09-10 08:00:00 UTC (rev 1353)
+++ cpu/x86/pc/olpc/via/resume.bth	2009-09-10 08:02:28 UTC (rev 1354)
@@ -107,6 +107,66 @@
    rdtsc  eax h# 10 #) mov  edx h# 14 #) mov
 [then]
 
+   \ D12F0 SDIO
+   h# 6010 config-rl  ax stos  \ BAR0
+   h# 6014 config-rl  ax stos  \ BAR1
+   h# 6018 config-rl  ax stos  \ BAR2
+   h# 603c config-rb  al stos  \ IRQ
+   h# 6004 config-rw  op: ax stos  \ Enables
+   h# 0000 h# 6004 config-ww       \ Disable
+
+   \ D15F0 EIDE
+   h# 7810 config-rl  ax stos  \ BAR0
+   h# 7814 config-rl  ax stos  \ BAR1
+   h# 7818 config-rl  ax stos  \ BAR2
+   h# 781c config-rl  ax stos  \ BAR3
+   h# 7820 config-rl  ax stos  \ BAR4
+   h# 783c config-rb  al stos  \ IRQ
+   h# 780d config-rb  al stos  \ Latency timer
+   h# 7804 config-rw  op: ax stos  \ Enables
+   h# 0000 h# 7804 config-ww       \ Disable
+
+   \ D16F0 UHCI 0,1
+   h# 8020 config-rl  ax stos  \ IO Base
+   h# 803c config-rb  al stos  \ IRQ
+   h# 800d config-rb  al stos  \ Latency timer
+   h# 8004 config-rw  op: ax stos  \ Enables
+   h# 0000 h# 8004 config-ww       \ Disable
+
+   \ D16F1 UHCI 2,3
+   h# 8120 config-rl  ax stos  \ IO Base
+   h# 813c config-rb  al stos  \ IRQ
+   h# 810d config-rb  al stos  \ Latency timer
+   h# 8104 config-rw  op: ax stos  \ Enables
+   h# 0000 h# 8104 config-ww       \ Disable
+
+   \ D16F2 UHCI 4,5
+   h# 8220 config-rl  ax stos  \ IO Base
+   h# 823c config-rb  al stos  \ IRQ
+   h# 820d config-rb  al stos  \ Latency timer
+   h# 8204 config-rw  op: ax stos  \ Enables
+   h# 0000 h# 8204 config-ww       \ Disable
+
+   \ D16F4 EHCI
+   h# 8410 config-rl  ax stos  \ BAR
+   h# 843c config-rb  al stos  \ IRQ
+   h# 840d config-rb  al stos  \ Latency timer
+   h# 8404 config-rw  op: ax stos  \ Enables
+   h# 0000 h# 8404 config-ww       \ Disable
+
+   \ D17F0 Bus Control and Power Management
+   h# 88d2 config-rb  al stos  \ SMBUS clock divisor
+
+   \ D17F7 South-North Module Interface Control
+   h# 8f0d config-rb  al stos  \ Latency timer
+
+   \ D20F0 HD Audio
+   h# a010 config-rl  ax stos  \ BAR
+   h# a03c config-rb  al stos  \ IRQ
+   h# a00d config-rb  al stos  \ Latency timer
+   h# a004 config-rw  op: ax stos  \ Enables
+   h# 0000 h# a004 config-ww       \ Disable
+
 \ This is where Geode saves msrs
 \ This is where Geode handles the DCON
 \ This is where Geode saves the GPIO setup
@@ -331,9 +391,60 @@
 
    h# 29 resume-progress
 
-   \ AC97
-   \ Codec
+   \ D12F0 SDIO
+   h# 6010 config-setup  ax lods  ax dx out  \ BAR0
+   h# 6014 config-setup  ax lods  ax dx out  \ BAR1
+   h# 6018 config-setup  ax lods  ax dx out  \ BAR2
+   h# 603c config-setup  al lods  al dx out  \ IRQ
+   h# 6004 config-setup  op: ax lods  op: ax dx out  \ Enables
 
+   \ D15F0 EIDE
+   h# 7810 config-setup  ax lods  ax dx out  \ BAR0
+   h# 7814 config-setup  ax lods  ax dx out  \ BAR1
+   h# 7818 config-setup  ax lods  ax dx out  \ BAR2
+   h# 781c config-setup  ax lods  ax dx out  \ BAR3
+   h# 7820 config-setup  ax lods  ax dx out  \ BAR4
+   h# 783c config-setup  al lods  al dx out  \ IRQ
+   h# 780d config-setup  al lods  al dx out  \ Latency timer
+   h# 7804 config-setup  op: ax lods  op: ax dx out  \ Enables
+   h# 0000 h# 7804 config-ww       \ Disable
+
+   \ D16F0 UHCI 0,1
+   h# 8020 config-setup  ax lods  ax dx out  \ IO Base
+   h# 803c config-setup  al lods  al dx out  \ IRQ
+   h# 800d config-setup  al lods  al dx out  \ Latency timer
+   h# 8004 config-setup  op: ax lods  op: ax dx out  \ Enables
+
+   \ D16F1 UHCI 2,3
+   h# 8120 config-setup  ax lods  ax dx out  \ IO Base
+   h# 813c config-setup  al lods  al dx out  \ IRQ
+   h# 810d config-setup  al lods  al dx out  \ Latency timer
+   h# 8104 config-setup  op: ax lods  op: ax dx out  \ Enables
+
+   \ D16F2 UHCI 4,5
+   h# 8220 config-setup  ax lods  ax dx out  \ IO Base
+   h# 823c config-setup  al lods  al dx out  \ IRQ
+   h# 820d config-setup  al lods  al dx out  \ Latency timer
+   h# 8204 config-setup  op: ax lods  op: ax dx out  \ Enables
+
+   \ D16F4 EHCI
+   h# 8410 config-setup  ax lods  ax dx out  \ BAR
+   h# 843c config-setup  al lods  al dx out  \ IRQ
+   h# 840d config-setup  al lods  al dx out  \ Latency timer
+   h# 8404 config-setup  op: ax lods  op: ax dx out  \ Enables
+
+   \ D17F0 Bus Control and Power Management
+   h# 88d2 config-setup  al lods  al dx out  \ SMBUS clock divisor
+
+   \ D17F7 South-North Module Interface Control
+   h# 8f0d config-setup  al lods  al dx out  \ Latency timer
+
+   \ D20F0 HD Audio
+   h# a010 config-setup  ax lods  ax dx out  \ BAR
+   h# a03c config-setup  al lods  al dx out  \ IRQ
+   h# a00d config-setup  al lods  al dx out  \ Latency timer
+   h# a004 config-setup  op: ax lods  op: ax dx out  \ Enables
+
    \ h# 8000 h# 4000.0000 or h# 1440 pl!  \ Fail-safe delay
 
 \ Turn on USB power




More information about the openfirmware mailing list