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
[REQUEST] Acer Predator Helios 300 PH315...
Last Post: HotD3
Today 05:05 AM
» Replies: 0
» Views: 19
Hp probook 6560B Upgrade to Ivy Bridge
Last Post: DeathBringer
Today 12:09 AM
» Replies: 1
» Views: 117
REQUEST Dell Latitude 6430U Bios extract
Last Post: Smarty
Yesterday 07:08 PM
» Replies: 1
» Views: 2618
[REQUEST] Lenovo G710 BIOS Whitelist Rem...
Last Post: xubix
Yesterday 03:22 PM
» Replies: 498
» Views: 261509
[REQUEST] HP ENVY - 17-r102nl (W6X06EA#A...
Last Post: SpaghettONE
11-25-2025 04:51 PM
» Replies: 0
» Views: 158
HP Elitebook 8540w Microcode for I7 920X...
Last Post: DeathBringer
11-25-2025 01:44 PM
» Replies: 9
» Views: 829
[REQUEST] HP Pavilion DM4-2101er BIOS F....
Last Post: Nylon
11-25-2025 01:43 AM
» Replies: 1
» Views: 305
ThinkPad W520 - Corrupted ME
Last Post: lovie_loveth
11-24-2025 10:07 PM
» Replies: 0
» Views: 132
[REQUEST] Lenovo IdeaPad S400 (6DCNxxWW)...
Last Post: MasterSil
11-24-2025 08:09 PM
» Replies: 336
» Views: 176394
HP Pro 3300 & 3400 (H61): Upgrade to Ivy...
Last Post: acidmonkey
11-24-2025 03:14 PM
» Replies: 129
» Views: 131416
BIOS ESS Xerox C60
Last Post: JSteen
11-24-2025 02:37 PM
» Replies: 0
» Views: 129
[REQUEST] Acer Nitro 5 AN517-54 BIOS Unl...
Last Post: Carlos_Eduardo13087
11-24-2025 12:25 PM
» Replies: 30
» Views: 12300
[REQUEST] Acer Predator PHN16-72 BIOS Un...
Last Post: Dudu2002
11-24-2025 07:11 AM
» Replies: 3
» Views: 2686
[REQUEST] Lenovo T440(S) (GJETxxWW) Whit...
Last Post: Cevox
11-24-2025 06:36 AM
» Replies: 500
» Views: 272127
[REQUEST] Please help unlock em64t in bi...
Last Post: MonoTightt
11-24-2025 02:48 AM
» Replies: 3
» Views: 2959
[REQUEST] Acer Nitro 5 AN515-54 BIOS Unl...
Last Post: Dudu2002
11-24-2025 12:55 AM
» Replies: 141
» Views: 103362
Need HP BIOS 080B0 (080B0.bin + .sig) fo...
Last Post: AldoRmz
11-23-2025 11:06 PM
» Replies: 0
» Views: 166
[REQUEST] HP dc7600 CMT BIOS Modding for...
Last Post: C2WRtm36y
11-23-2025 05:47 PM
» Replies: 7
» Views: 758
[Request] Dell Precision M6800 A16 BIOS ...
Last Post: bytehat248
11-23-2025 12:39 PM
» Replies: 1
» Views: 137
[REQUEST] Lanner FW-7573 (7571)
Last Post: romankul
11-23-2025 03:36 AM
» Replies: 0
» Views: 158

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)