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
ACER Aspire 7736ZG BIOS microcode update...
Last Post: DeathBringer
Today 02:04 AM
» Replies: 11
» Views: 361
Lenovo Legion 5 15ITH6H – “Device Freeze...
Last Post: laret
Yesterday 09:32 AM
» Replies: 5
» Views: 178
sony vaio VGN-Z56MG insydeH20 bios unloc...
Last Post: DevilEpic2
Yesterday 08:37 AM
» Replies: 0
» Views: 134
Modded BIOS for HP 6730b to support Q900...
Last Post: DeathBringer
02-27-2026 05:00 AM
» Replies: 6
» Views: 453
Asus P5Q Deluxe EFI
Last Post: maoshen1234
02-27-2026 12:55 AM
» Replies: 7
» Views: 18676
[REQUEST] Lenovo IdeaPad P400, P500, Z40...
Last Post: anto77562
02-26-2026 11:39 PM
» Replies: 686
» Views: 362123
[REQUEST] Lenovo Legion 5 (EFCNxxWW) BIO...
Last Post: SQ0O
02-26-2026 06:29 PM
» Replies: 53
» Views: 40068
[REQUEST] Lenovo G500(s) (7BCNxxWW) BIOS...
Last Post: INARIUS
02-26-2026 03:34 PM
» Replies: 65
» Views: 49932
[REQUEST] Lenovo T440(S) (GJETxxWW) Whit...
Last Post: cnv
02-26-2026 01:59 PM
» Replies: 502
» Views: 290013
[REQUEST] Lenovo Y50-70 (9ECNxxWW) BIOS ...
Last Post: krankbg
02-26-2026 10:31 AM
» Replies: 1970
» Views: 1201302
[REQUEST] Lenovo Y70-70 (9ECNxxWW) White...
Last Post: Dudu2002
02-26-2026 06:41 AM
» Replies: 91
» Views: 52473
[REQUEST] Lenovo Thinkpad T440p (GLETxxW...
Last Post: laralang
02-26-2026 12:37 AM
» Replies: 530
» Views: 319628
Acer aspire Aspire A315-54k
Last Post: Haaazefan
02-25-2026 07:20 PM
» Replies: 0
» Views: 145
[REQUEST] Lenovo G500 (78CNxxWW) Whiteli...
Last Post: Dudu2002
02-25-2026 09:54 AM
» Replies: 1230
» Views: 596742
[REQUEST] Lenovo B50-70 (9DCNxxWW) BIOS ...
Last Post: Dudu2002
02-25-2026 09:53 AM
» Replies: 77
» Views: 57007
[REQUEST] Lenovo G50-70 (9ACNxxWW) White...
Last Post: Dudu2002
02-25-2026 09:50 AM
» Replies: 253
» Views: 148272
Toshiba Satellite C50-A (PSCG6x & PSCGAx...
Last Post: Renitoko
02-25-2026 07:46 AM
» Replies: 15
» Views: 12831
[REQUEST] 2 HP Bioses for Unlock
Last Post: ineedhelp61
02-24-2026 05:06 PM
» Replies: 0
» Views: 216
[REQUEST] Lenovo G400S (7BCNxxWW) Whitel...
Last Post: INARIUS
02-24-2026 11:55 AM
» Replies: 220
» Views: 140335
[Paid Request] Adding Epyc 2nd gen CPU s...
Last Post: EPYC
02-24-2026 09:05 AM
» Replies: 1
» Views: 1779

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)