[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