,-,((
!*
and ah,3fh ; bit[15,14] set to [0,0] to let GPI7 not
out dx,eax ; evoke SCI event
mov dx,0CF8h ; PCI Config Read
mov eax,8000F844h ; B0:D31:F0:Offset_44h
out dx,eax
mov dx,0CFCh
in eax,dx
or al,10h ; bit 4 set to 1 to enable PMBASE
out dx,eax ;
mov dx,0CF8h ; Get PMBASE
mov eax,8000F840h ; B0:D31:F0:Offset_40h
out dx,eax
mov dx,0CFCh
in eax,dx
and al,0feh ; bit0 cleared to 0.
rol eax,10h
mov ebx,eax ; Save PMBASE to EBX[31..16]
------------- SAMPLE END-------------------------------------------------------------------------------
PG_Step2 : Enable GPIO IO function and get GPIOBASE, then save to
ECX_Bit[31..16]
How to program GPIO [24, 32, 33, 34, 35]
-------------------------------------------------------
Get GPIOBASE =: B0:D31:F0:Offset[58..5Bh] ;(and let bit0 = 0 )
GPIO_CNTL =: B0:D31:F0:Offset_5Ch_bit4P1 ;Enable ICH4 GPIO
GPIO24 as output :
GP_IO_SEL(=:(GP 04h))_bit24P0; Dir.=output
GP_LVL (=:(GP 0Ch))_bit24P[0/1]; Write value 0/1
GPIO24 as input :
GP_IO_SEL(=:(GP 04h))_bit24P1; Dir.=input
Read GP_LVL (=:(GP 0Ch))_bit24 ; Read value
-------------------------------------------------------
GPIO32,33,34,35 read (define as GPI) and write (define as GPO)
GPIO32-->bit0, GPIO33-->bit1, GPIO34 -->bit2, GPIO35-->bit3,
Summary of Contents for PEB-7710VLA
Page 10: ......
Page 32: ...in eax dx...