Forum RSS Feed Follow @ Twitter Follow On Facebook

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[-]
Welcome
You have to register before you can post on our site.

Username:


Password:





[-]
Latest Threads
HP Pro 3500: CPU Upgrade
Last Post: DeathBringer
Today 12:13 AM
» Replies: 20
» Views: 4418
[READ FIRST] Access Advanced settings th...
Last Post: Klinzah
Yesterday 05:11 PM
» Replies: 424
» Views: 568590
[REQUEST] Asus eeepc 1025C
Last Post: sloseba123
Yesterday 04:44 PM
» Replies: 87
» Views: 110281
[REQUEST] Lenovo Ideapad 100-14IBD & 100...
Last Post: striderhiryuart
Yesterday 01:01 PM
» Replies: 14
» Views: 6736
HP EliteBook 840 g2 NVMe
Last Post: x86-64
Yesterday 06:30 AM
» Replies: 0
» Views: 72
[Request] Dell 7400 2 in 1 Computrace/Ab...
Last Post: Lorand187
05-01-2024 10:34 PM
» Replies: 0
» Views: 116
Fujitsu Esprimo P5710 - unlock [REQUEST]
Last Post: monkeywrench
05-01-2024 02:28 PM
» Replies: 12
» Views: 351
[REQUEST] Gigabyte B75M-D3H BIOS Unlock
Last Post: topadefir
05-01-2024 12:56 PM
» Replies: 10
» Views: 4018
[REQUEST] Lenovo B590 (H9ETxxWW) Whiteli...
Last Post: samugarob
05-01-2024 10:08 AM
» Replies: 674
» Views: 168425
[REQUEST] Asus GL504GV BIOS Unlock
Last Post: merjeu
05-01-2024 09:28 AM
» Replies: 5
» Views: 1687
[REQUEST] Asus ROG Strix GL702ZC BIOS Un...
Last Post: George205
05-01-2024 09:22 AM
» Replies: 168
» Views: 68617
[REQUEST] Lenovo G780 advanced menu
Last Post: serinity63
05-01-2024 07:03 AM
» Replies: 42
» Views: 16910
[REQUEST] HP Gaming Pavilion 15-cx0xxx B...
Last Post: falkorikstv
05-01-2024 07:03 AM
» Replies: 10
» Views: 1597
[REQUEST] Gigabyte G5 KC Unlock BIOS
Last Post: Dudu2002
05-01-2024 04:06 AM
» Replies: 6
» Views: 2258
[REQUEST] M920q BIOS unlock
Last Post: d3vf0x
04-30-2024 04:50 PM
» Replies: 0
» Views: 161
[REQUEST] Lenovo G500 (78CNxxWW) Whiteli...
Last Post: MAVARACOMPLEX
04-30-2024 02:15 PM
» Replies: 1186
» Views: 268558
[REQUEST] Lenovo Thinkpad X240 (GIETxxWW...
Last Post: BOJIKA
04-30-2024 01:33 PM
» Replies: 49
» Views: 17241
[REQUEST] Lenovo Y400 & Y500 (6BCNxxWW) ...
Last Post: Dudu2002
04-30-2024 11:17 AM
» Replies: 157
» Views: 55289
[REQUEST] Lenovo G780 (5ECNxxWW) Whiteli...
Last Post: Dudu2002
04-30-2024 11:16 AM
» Replies: 877
» Views: 290372
[Removed, sp52359] HP Touchsmart Tm2t-22...
Last Post: OrionDakota
04-30-2024 10:04 AM
» Replies: 24
» Views: 21140

Asus N73 - no boot from internal card-reader (bios/hw mod required?)
#11
wish i could call smth for basic debug (to know if function called or not), like SpeakerBeep for ex., but N73 lacks onboard beeper
+ later: acually, there's FixedDelay (requires only imm32 put into ecxbefore call) - quite usable with noticable delays (5s+)

looks like we need to get to CreateBbsEntry:

Code:
USBAPI_Start - invoked via software SMI (system management interrupt), USBRT
    USB_StartHostControllers                        // for(bDriverIndex=0; bDriverIndex<gUsbData->max_hc
        USB_EnumerateRootHubPorts                    // for(Index = 0; Index < gUsbData->bHCInitialized
            (func-ptr pfnHCDEnumeratePorts) EHCI_EnumeratePorts    // for(bPortNum=1; bPortNum<=fpHCStruc->bNumPorts
                USBCheckPortChange
                    USB_GetHubPortStatus
                    USB_ResetHubPort
                    USB_EnableHubPort
                    USB_DisconnectDevice
                    USB_DisableHubPort(fpHCStruc, hubAddr, portNum);
                    USB_DetectNewDevice
                        USB_MemAlloc
                        USB_MemFree
                        SpeakerBeep
                        USB_GetDescriptor
                        USB_InitDeviceDataDummy
                        USBIdentifyAndConfigureDevice
                            USBCheckNonCompliantDevice
                            OEMSkipList
                            USB_ConfigureDevice - sets func-ptr for configuring dev
                            (func-ptr) USBMassCheckForStorageDevice
                            CheckDeviceLimit
                            USB_SmiQueuePut
                        USBLogError
                        USB_DisableHubPort

AmiUsbDriverEntryPoint - UHCD module EP
    UsbMassInit
        UsbMassStart - called by handler set by InstallMultipleProtocolInterfaces in UsbMassInit
            InstallUSBMass
                UsbInstallLegacyDevice
                    UnlockShadow
                    CreateBbsEntry            // <- TARGET, ?not reached?
                    InsertBbsEntryAt
                    UsbUninstallLegacyDevice

UsbInt13EntryPoint - USBINT13 module EP
    UsbInstallLegacyDevice
        CreateBbsEntry            // <- TARGET, ?not reached?
find
quote
#12
found out, that some "debug port" is skipped during enumeration in EHCI_EnumeratePorts
patched EhciIsolateDebugPort to never mark any port as debug
still no boot from cardreader

+ so i looked through all 3 relevant modules: uhcd, usbrt and usbint13
didn't find any "excluding" or blacklisting code
looks like now i have no options, but try to jumpwire data+/data- from cardreader to any usb port, booting from which actually works (from usb flash for ex.)
my guess is that this particular cardreader can not be identified as mass storage device - if it will not show up after rewiring, this is the case
find
quote
#13
so, i did rewired cardreader to port#1 (one of the backside ports, that was broken anyway by trying too hard to plug usb cable upside-down)
now it boots from sdcard, bios recognizes card reader as "MultipleCard Reader 1.00"

that means, that:
- the device itself is ok (mass stoarge-compatible) and not blacklistend in bios as incompatible (there's an array of USB_BAD_DEVS specified)
- it was a software problem after all, it's a pity i was unable to find it

if anyone has any more ideas - please let me know (my hw mod is perfectly reversable)
surely i'd like to fix the problem inside bios
thx


Attached Files Thumbnail(s)
   
find
quote
#14
Sorry,earlier I was wrong,my memory tricks me.
I checked now and that skip list was inside UsbBus module.
But that is Insyde Bios and could be totally different implementation.
There was three occurence of similar code inside that module.

Code:
mov     [rsp+98h+var_58], 3 ; 3 5 6 usb ports used by webcam card reader and BT module
mov     [rsp+98h+var_57], 5
mov     [rsp+98h+var_56], 6
mov     [rsp+98h+var_55], sil
mov     [rsp+98h+var_53], sil
mov     [rsp+98h+var_54], r13b
mov     [rsp+98h+var_52], 7Fh
mov     [rsp+98h+var_51], 0FFh
mov     [rsp+98h+var_50], 4
mov     [rsp+98h+var_4F], sil
Replaced 5 with 2 which was unused port and after that card reader was enumerated as boot device.
find
quote


Forum Jump:


Users browsing this thread: 1 Guest(s)