mirror of
https://github.com/Doczom/SDHCI_driver_for_Kolibrios.git
synced 2025-09-21 02:50:10 +02:00
save file
save file
This commit is contained in:
@@ -18,9 +18,9 @@ proc send_sdhc_command
|
||||
@@:
|
||||
;test dword[esi + SDHCI_CONTROLLER.flag_command_copmlate], -1
|
||||
test dword[eax + SDHC_INT_STATUS], 0x01
|
||||
jnz @b
|
||||
jz @b
|
||||
DEBUGF 1,"SDHCI: Command is out INT_STAT=%x\n", [eax + SDHC_INT_STATUS]
|
||||
or dword[eax + SDHC_INT_STATUS], 0x01
|
||||
DEBUGF 1,"SDHCI: Command is out\n"
|
||||
DEBUGF 1,"SDHCI: resp1=%x resp2=%x \n", [eax + SDHC_RESP1_0], [eax + SDHC_RESP3_2]
|
||||
ret
|
||||
endp
|
||||
@@ -30,8 +30,8 @@ endp
|
||||
;cmd0 - Resets all cards to idle state
|
||||
proc GO_IDLE_SATTE
|
||||
xor ebx, ebx
|
||||
mov ecx, 0x00
|
||||
mov edx, 0x00
|
||||
mov ecx, 0x02 ; read mull
|
||||
mov edx, 0x0220
|
||||
call send_sdhc_command
|
||||
ret
|
||||
endp
|
||||
|
@@ -939,6 +939,7 @@ proc card_init
|
||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<>01
|
||||
or dword[eax + SDHC_INT_MASK], 0xFFFF0001
|
||||
or dword[eax + SDHC_SOG_MASK], 0xFFFF0001
|
||||
DEBUGF 1,'SDHCI: INT_MASK = %x\n',[eax + SDHC_INT_MASK]
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (3.3<EFBFBD> - <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
; <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
mov ebx, [esi + SDHCI_CONTROLLER.Capabilities]
|
||||
@@ -955,6 +956,7 @@ proc card_init
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 400 <20><><EFBFBD>
|
||||
mov ebx, [esi + SDHCI_CONTROLLER.divider400KHz]
|
||||
mov ebx, [esi + SDHCI_CONTROLLER.divider25MHz]
|
||||
call set_SD_clock
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SDHC_CTRL1
|
||||
and dword[eax + SDHC_CTRL1], 11000b + 0x0f00 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> dma <20><><EFBFBD><EFBFBD><EFBFBD> <20> power control
|
||||
@@ -1031,6 +1033,9 @@ proc card_detect
|
||||
DEBUGF 1,'SDHCI: Card init - SDIO card\n'
|
||||
ret
|
||||
.unknowe:
|
||||
and dword[eax + SDHC_CTRL1], not 0x0100 ; stop power
|
||||
and dword[eax + SDHC_CTRL2], not 0x04 ; stop SD clock
|
||||
|
||||
DEBUGF 1,'SDHCI: Card not init\n'
|
||||
ret
|
||||
endp
|
||||
|
Reference in New Issue
Block a user