ITE chips model identify bug fix by Serge

git-svn-id: svn://kolibrios.org@243 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Iliya Mihailov (Ghost) 2006-12-23 19:01:56 +00:00
parent 3a022d4441
commit b22c241723
4 changed files with 225 additions and 15 deletions

View File

@ -901,11 +901,25 @@ reserve_irqs_ports:
; RESERVE PORTS
mov edi,1 ; 0x00-0xdf
mov edi,1 ; 0x00-0x2d
mov [0x2d0000],edi
shl edi,4
mov [0x2d0000+edi+0],dword 1
mov [0x2d0000+edi+4],dword 0x0
mov [0x2d0000+edi+8],dword 0x2d
inc dword [0x2d0000] ; 0x30-0x4d
mov edi,[0x2d0000]
shl edi,4
mov [0x2d0000+edi+0],dword 1
mov [0x2d0000+edi+4],dword 0x30
mov [0x2d0000+edi+8],dword 0x4d
inc dword [0x2d0000] ; 0x50-0xdf
mov edi,[0x2d0000]
shl edi,4
mov [0x2d0000+edi+0],dword 1
mov [0x2d0000+edi+4],dword 0x50
mov [0x2d0000+edi+8],dword 0xdf
inc dword [0x2d0000] ; 0xe5-0xff

View File

@ -45,6 +45,7 @@
; 25/11/2006 - äîáàâëåí ABIT uGuru
; 20/12/2006 - W83627DHG, W83627EHF, W83627EHG, mutipliers for AthonXP-M, Athlon64, Athlon64-M,
; Intel Dothan, Yonah, Conroe, Merom
; 24/12/2006 - ITE chips model id bugfix by Serge
;
; Ýé! Ó ìåíÿ íåò ìíîãî âðåìåíè.
@ -509,7 +510,7 @@ about_tab:
DATA
act_tab db 2 ; Íîìåð àêòèâíîé âêëàäêè
tab_lab db 'Info Tests Configs About'
title db 'Ghost Monitor v0.4 [20/12/06]'
title db 'Ghost Monitor v0.4 [24/12/06]'
msgs_mon mls \
'CPU Load (%)',\

View File

@ -27,15 +27,46 @@ it87_init:
; Ïðîâåðêà íàëè÷èÿ è èíèöèàëèçàöèÿ
; OUT - CF = 1 - error
cmp byte[acc_type], 2 ; Only ISA and SMBus
jae it87_no
;--- Ïðîâåðÿåì IT87* --------
mov al, IT87_REGCHIP
call [IO_Read]
cmp al, IT87_CHIPID
jne it87_no ; ýòî íå it87 !!!
; -~- not tested ~-~-
mov al, 0x21 ; --- óçíà¸ì èäåíòèôèêàòîð ÷èïà --
call [IO_Read]
jae .no_io
mov ecx, 0x2e
mov edx, 0x2f
call ReservePorts
test eax, eax
jnz .no_io
mov eax, 0x55550187 ; ïåðåõîä â MB PnP Mode
out 0x2e, al
shr eax, 8
out 0x2e, al
shr eax, 8
out 0x2e, al
shr eax, 8
out 0x2e, al
mov al, 0x20
out 0x2e, al
in al, 0x2f ; al = 0x87
push eax
mov al, 0x21
out 0x2e, al
in al, 0x2f ; al = model
push eax
mov al, 0x02 ; âûõîä èç ðåæèìà
out 0x2E, al
out 0x2F, al
mov ecx, 0x2e
mov edx, 0x2f
call FreePorts
pop eax
pop ebx
cmp bl, 0x87
jne .no_io
mov edx, it8705
cmp al, 0x05
je @f
@ -47,12 +78,39 @@ it87_init:
je @f
mov edx, ite_unk
@@: mov [hwm_chip_name], edx
; -~-~-~-~-~-~-~-~-~-
clc
ret
it87_no:stc
.no_io: stc
ret
; cmp byte[acc_type], 2 ; Only ISA and SMBus
; jae it87_no
;;--- Ïðîâåðÿåì IT87* --------
; mov al, IT87_REGCHIP
; call [IO_Read]
; cmp al, IT87_CHIPID
; jne it87_no ; ýòî íå it87 !!!
;;-~- not tested ~-~-
; mov al, 0x21 ; --- óçíà¸ì èäåíòèôèêàòîð ÷èïà --
; call [IO_Read]
; mov edx, it8705
; cmp al, 0x05
; je @f
; mov edx, it8712
; cmp al, 0x12
; je @f
; mov edx, it8716
; cmp al, 0x16
; je @f
; mov edx, ite_unk
; @@: mov [hwm_chip_name], edx
;;-~-~-~-~-~-~-~-~-~-
; clc
; ret
; it87_no:stc
; ret
;-----------------------------------
it87_getparam:
call it87_get_temp
@ -106,3 +164,140 @@ it87_get_fan_speed:
ret
;--------------------------------------------------------------------------
;
; Presets for IT8712
;
; Volt = A * read_val + B
;
; A, B
; --- 0 ---
; dd 0.01565, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.0, 0.0
; dd 0.0608, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0
; dd 0.08224, -22.104
; dd 0.016, 0.0
; --- 1 ---
; dd 0.01614, 0.0
; dd 0.01614, 0.0
; dd 0.01614, 0.0
; dd 0.01614, 0.0
; dd 0.062946, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 2 ---
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.062946, 0.0
; dd 0.016, 0.0
; dd 0.01614, 0.0
; dd 0.0, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 3 ---
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.027, 0.0
; dd 0.06564, 0.0
; dd 0.084, -17.408
; dd 0.0512, -9.0112
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 4 ---
; dd 0.01653, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.02684, 0.0
; dd 0.06398, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 5 ---
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.027, 0.0
; dd 0.06369, 0.0
; dd 0.082285714288, -16.9691428598999
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 6 ---
; dd 0.01565, 0.0
; dd 0.06564, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.02688, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 7 ---
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.027, 0.0
; dd 0.06369, 0.0
; dd 0.082285714288, -16.9691428598999
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 8 ---
; dd 0.01653, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.0265, 0.0
; dd 0.06398, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 9 ---
; dd 0.016, 0.0
; dd 0.01565, 0.0
; dd 0.016, 0.0
; dd 0.0265, 0.0
; dd 0.06398, 0.0
; dd 0.09152, -20.592
; dd 0.03728, -8.388
; dd 0.016, 0.0
; dd 0.016, 0.0
; --- 10 ---
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.0265, 0.0
; dd 0.06398, 0.0
; dd 0.016, 0.0
; dd 0.0512, -9.0112
; dd 0.0, 0.0
; dd 0.0, 0.0
; --- 11 ---
; dd 0.016, 0.0
; dd 0.0, 0.0
; dd 0.016, 0.0
; dd 0.016, 0.0
; dd 0.06564, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0
; dd 0.0, 0.0

View File

@ -25,7 +25,7 @@ ABIT : uGuru
Функции мониторинга можно проверить в Windows на эмуляторе KlbrInWin, для этого необходимо в
файле настроек написать (пользуйтесь последней версией):
EnablePorts=e0-e8 295 296
EnablePorts=2e 2f 4e 4f e0-e8 295 296
AllowReadMSR=true
Тесты :