找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 10906|回复: 3

关于SIS 968中APC REG的读写问题

[复制链接]
发表于 2008-7-21 11:31:40 | 显示全部楼层 |阅读模式
sis 968 datasheet ,page468  说了2种存取APC reg的方法,但是其中的SB reg.48h不知道是指哪个寄存器?
0 @# c9 z0 k6 U" }" @. g
% p' }! o8 A0 b- v( TIO index access   
, B1 ?1 n( @8 K9 C/ K( t% Z! HSoftware would use 2 way to access the APC register 7 ~9 u0 M" M; g8 l; ]4 g7 E
- Z" h4 y+ k. `3 o3 C

0 @7 f, y& L" A1.  Software would set SB reg. 48h bit 6 to 1 to enable the APC bank. Use index/data port 3 S3 [2 Y5 O, O6 A
with 70h/71h to read/write data. After access, reset the SB reg. 48h bit 6 to 0 to disable 8 o8 ]. o+ W4 ^' S$ |% p/ h
the APC bank. 3 K* @+ m" p5 W& j

8 d/ `; X1 J* `2 @+ b; W/ s9 [+ t2.  Software would set SB reg. 48h bit 1 to 0 to enable the new re-index. Use index/data " `6 g5 K! b: X
port with 78h/79h to read/write data.
) D2 i0 V* ?' L6 m& U6 r
9 r5 f: B/ [4 U+ T如果指的是48h  RTC control的话, 我将0x7f填进去后,为什么通过70H,71H访问的还是 Internal RTC
发表于 2008-7-21 13:02:13 | 显示全部楼层
你确认访问的位置是Bus0:Device2:Function0的Reg48h吗?
. B$ e$ D0 S- {( [2 U" y% {5 x9 }8 ?) K+ Z请用下面这段代码来试试
6 d2 q- B& y; o' f; e! x3 d7 j: k    reg:BYTE: [- r' Y0 G# v: D! I0 G2 b
        mov ax,0b108h
6 N6 ~+ _' L1 R- a; I' t- I2 {  U        mov bx,10h
! c8 y6 J2 L5 R: m        mov di,48h  M: y. R% O8 d$ [
        int 1ah
1 ^: ~: l+ a  @( J        mov reg,cl          ;get RTC Control Register
$ X5 D6 ?) C, T/ d . A% r; p4 b1 O: T* O4 k# ^
        mov cl,reg" C$ M  `9 ^4 S& N6 n4 E
        and cl,3fh$ e4 @6 K* F/ a4 r( |& C
        or cl,40h           ;set APCREG_EN
( a1 c+ F6 s# x& |# L4 L0 c" }        mov ax,0b10bh
" b$ B* Z) H- w& Y7 A        mov bx,10h6 `9 ^* K  [2 K# H% u* V7 f, q/ g7 u! m
        mov di,48h+ O/ j5 C$ T1 n- U$ ]
        int 1ah
! j. H* B* m) O) i! B       //now can access the APC register
# ~7 n! {; ~9 R, L. K " _2 i) |. B. R1 u2 Y
        mov cl,reg
0 O! y3 D) A; Q) @/ @# n        mov ax,0b10bh2 t5 b. m& M$ g' d3 n3 @6 m1 \8 s
        mov bx,10h
/ I( D8 c5 n+ `' D! a( ~! {        mov di,48h
) \1 b5 M/ V9 |3 |$ j! l0 [        int 1ah              ;Restore
回复

使用道具 举报

 楼主| 发表于 2008-7-21 13:54:47 | 显示全部楼层
应该没弄错啊
# \* r& G7 \7 N! J: T(1L <<31) + (0L << 16) + (2 << 11) + ( 0 << 8) + (0x48 & 0xfc)
回复

使用道具 举报

 楼主| 发表于 2008-7-21 16:11:58 | 显示全部楼层
问题已找到,原因是bios默认ACPI base registers在I/O SPACE(在角落里有这个设定),而我在MEMORY SPACE 中读的,所以只要改一下就OK了
, V) A3 L* V8 c( h" @
* D5 u1 i# _8 ]ps.看来还是要仔细的看datasheet% ^+ b' e! f% m0 Z0 v0 f
- i) `% ^: U' l( y  d# d2 _& C3 U
[ 本帖最后由 jackey_gu 于 2008-7-21 16:13 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2026-10-12 08:07 , Processed in 0.051998 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表