Kernel: use 22.10 fixed point arithmetic in HPET timestamp calculation.

git-svn-id: svn://kolibrios.org@5791 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Sergey Semyonov (Serge)
2015-09-04 11:50:27 +00:00
parent 86fb4bfe83
commit a410b6abe3
2 changed files with 22 additions and 10 deletions

View File

@@ -623,10 +623,12 @@ init_hpet:
mov ecx, eax
mov eax, [ebx+HPET_PERIOD]
mov edx, 0x431BDE83
mul edx
shr edx, 18
mov [hpet_period-OS_BASE], edx
xor edx, edx
shld edx, eax, 10
shl eax, 10
mov esi, 1000000
div esi
mov [hpet_period-OS_BASE], eax
mov esi, [ebx+HPET_CFG]
and esi, not HPET_CFG_ENABLE