Jump to content

Dietmar

Member
  • Posts

    1,847
  • Joined

  • Last visited

  • Days Won

    10
  • Donations

    0.00 USD 
  • Country

    Germany

Everything posted by Dietmar

  1. @reboot12 Here is version W22 and KD Dietmar https://www.upload.ee/files/19132754/i219W22.zip.html sxd ud bc * sxe av sxe gp sxe ud !sym quiet .reload /f i219.sys bu nt!KeBugCheckEx ".echo ====BUGCHECK_HIT====; .printf \"code=%08x p1=%08x p2=%08x p3=%08x p4=%08x\\n\", poi(@esp+4), poi(@esp+8), poi(@esp+0c), poi(@esp+10), poi(@esp+14); r; r cr2; kv; gc" .echo ====W22_PCI_DEV15BB==== !pci 0 0 1f 6 .echo ====W22_GLOBALS_BEFORE==== dd i219!g_LinkPollInit L1 dd i219!g_LinkPollStart L1 dd i219!g_RxFrames L1 dd i219!g_TxSubmits L1 dd i219!g_TxCompletes L1 bu /1 i219!DriverEntry ".echo ====W22_DRIVERENTRY====; kv; gc" bu /1 i219!I219MiniportInitialize "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_INIT_IN====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_WARMRESET====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_CTRLKICK====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219PhyEnsureAutonegAll ".echo ====W22_PHY_ENSURE_AUTONEG====; gc" bu /1 i219!I219PrintPhyStdRegs ".echo ====W22_PHY_STDREGS====; gc" bu i219!I219WaitAutonegLink "r $t2=poi(@esp); .echo ====W22_AUTONEG_WAIT_IN====; .printf \"a=%p tout=%u arg=%u\\n\", poi(@esp+4), poi(@esp+8), poi(@esp+0c); bp /1 @$t2 \".echo ====W22_AUTONEG_WAIT_OUT====; r eax; gc\"; gc" bu i219!I219SpeedMbpsFromStatus "r $t2=poi(@esp); .echo ====W22_SPEED_IN====; bp /1 @$t2 \".echo ====W22_SPEED_OUT====; r eax; gc\"; gc" bu i219!I219LinkFromStatus "r $t2=poi(@esp); .echo ====W22_LINKFROM_IN====; bp /1 @$t2 \".echo ====W22_LINKFROM_OUT====; r eax; gc\"; gc" bu /1 i219!I219TxRxAlloc "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_TXRXALLOC====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x2800 L3; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3800 L3; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; gc" bu /1 i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_TXRXSTART====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu /1 i219!I219MiniportISR ".echo ====W22_ISR_FIRST====; gc" bu /1 i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_DPC_FIRST====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_RxFrames L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_SEND_FIRST====; .printf \"a=%p regs=%p cnt=%u\\n\", @$t0, @$t1, poi(@esp+0x0c); dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxSubmits L1; gc" bu /1 i219!I219TxSendOne ".echo ====W22_TXONE_FIRST====; gc" bu /1 i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_TXRECLAIM_FIRST====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_RXPOLL_FIRST====; .printf \"a=%p regs=%p\\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd i219!g_RxFrames L1; gc" bu i219!I219PollTimerFunc "r $t0=poi(@esp+8); r $t1=poi(@$t0+0xDC); .echo ====W22_POLL====; dd @$t1+0x0008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_RxFrames L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219MiniportCheckForHang "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W22_HANGCHECK_ONCE====; dd @$t1+0x0008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; dd i219!g_RxFrames L1; gc" bu i219!I219QueueRecover ".echo ====W22_RECOVER_QUEUED_BP====; r irql; kv; gc" bu i219!I219RecoverWorker ".echo ====W22_RECOVER_WORKER_ENTER====; r irql; kv; gc" bu i219!I219HardRecover ".echo ====W22_HARD_RECOVER_ENTER====; r irql; kv; gc" bu i219!I219TxAbortAll ".echo ====W22_TX_ABORT_ALL_ENTER====; r irql; kv; gc" .echo ====W22_READY_GO==== g
  2. @reboot12 Here is driver W21 and KD Dietmar PS: I still do not find in germany any working cooler for the AIMB-786 . https://www.upload.ee/files/19132539/i219W21.zip.html !sym quiet .reload /f i219.sys sxd ud bc * sxe av sxe gp sxe ud bu nt!KeBugCheckEx ".echo ====BUGCHECK_HIT====; .printf \"code=%08x p1=%08x p2=%08x p3=%08x p4=%08x\n\", poi(@esp+4), poi(@esp+8), poi(@esp+0c), poi(@esp+10), poi(@esp+14); r; r cr2; kv; gc" .echo ====W21_PCI_DEV15BB==== !pci 0 0 1f 6 .echo ====W21_GLOBALS_BEFORE==== dd i219!g_LinkPollInit L1 dd i219!g_LinkPollStart L1 dd i219!g_RxFrames L1 dd i219!g_TxSubmits L1 dd i219!g_TxCompletes L1 bu /1 i219!DriverEntry ".echo ====W21_DRIVERENTRY====; kv; gc" bu /1 i219!I219MiniportInitialize "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_INIT_IN====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_CTRLKICK====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219PhyEnsureAutonegAll ".echo ====W21_PHY_ENSURE_AUTONEG====; gc" bu /1 i219!I219PrintPhyStdRegs ".echo ====W21_PHY_STDREGS====; gc" bu i219!I219WaitAutonegLink "r $t2=poi(@esp); .echo ====W21_AUTONEG_WAIT_IN====; .printf \"a=%p tout=%u arg=%u\n\", poi(@esp+4), poi(@esp+8), poi(@esp+0c); bp /1 @$t2 \".echo ====W21_AUTONEG_WAIT_OUT====; r eax; gc\"; gc" bu i219!I219SpeedMbpsFromStatus "r $t2=poi(@esp); .echo ====W21_SPEED_IN====; bp /1 @$t2 \".echo ====W21_SPEED_OUT====; r eax; gc\"; gc" bu i219!I219LinkFromStatus "r $t2=poi(@esp); .echo ====W21_LINKFROM_IN====; bp /1 @$t2 \".echo ====W21_LINKFROM_OUT====; r eax; gc\"; gc" bu /1 i219!I219TxRxAlloc "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_TXRXALLOC====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x2800 L3; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3800 L3; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; gc" bu /1 i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu /1 i219!I219MiniportISR ".echo ====W21_ISR_FIRST====; gc" bu /1 i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_DPC_FIRST====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_RxFrames L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_SEND_FIRST====; .printf \"a=%p regs=%p cnt=%u\n\", @$t0, @$t1, poi(@esp+0x0c); dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxSubmits L1; gc" bu /1 i219!I219TxSendOne ".echo ====W21_TXONE_FIRST====; gc" bu /1 i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_TXRECLAIM_FIRST====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W21_RXPOLL_FIRST====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd i219!g_RxFrames L1; gc" bu i219!I219PollTimerFunc "r $t0=poi(@esp+8); r $t1=poi(@$t0+0xDC); .echo ====W21_POLL====; dd @$t1+0x0008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_RxFrames L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; gc" bu i219!I219QueueRecover ".echo ====W21_RECOVER_QUEUED_BP====; r irql; kv; gc" bu i219!I219HardRecover ".echo ====W21_HARD_RECOVER_ENTER====; r irql; kv; gc" bu i219!I219TxAbortAll ".echo ====W21_TX_ABORT_ALL_ENTER====; r irql; kv; gc" .echo ====W21_READY_GO==== g
  3. @reboot12 My problem is, that I do not have any cooler, that fits on this AIMB-786 board. Which cooler do you use Dietmar
  4. @reboot12 Run a Windbg session with this KD block for to understand the loop with W20 Dietmar !sym quiet .reload /f i219.sys sxd ud bc * sxe av sxe gp sxe ud bu nt!KeBugCheckEx ".echo ====BUGCHECK_HIT====; .printf \"code=%08x p1=%08x p2=%08x p3=%08x p4=%08x\n\", poi(@esp+4), poi(@esp+8), poi(@esp+0c), poi(@esp+10), poi(@esp+14); r; r cr2; kv; gc" .echo ====W20_PCI_DEV15BB==== !pci 0 0 1f 6 bu /1 i219!DriverEntry ".echo ====W20_DRIVERENTRY====; kv; gc" bu /1 i219!I219MiniportInitialize "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_INIT_IN====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_CTRLKICK====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x5B54 L1; gc" bu /1 i219!I219PhyEnsureAutonegAll ".echo ====W20_PHY_ENSURE_AUTONEG====; gc" bu /1 i219!I219PrintPhyStdRegs ".echo ====W20_PHY_STDREGS====; gc" bu i219!I219WaitAutonegLink "r $t2=poi(@esp); .echo ====W20_AUTONEG_WAIT_IN====; .printf \"a=%p tout=%u arg=%u\n\", poi(@esp+4), poi(@esp+8), poi(@esp+0c); bp /1 @$t2 \".echo ====W20_AUTONEG_WAIT_OUT====; r eax; gc\"; gc" bu i219!I219SpeedMbpsFromStatus "r $t2=poi(@esp); .echo ====W20_SPEED_IN====; bp /1 @$t2 \".echo ====W20_SPEED_OUT====; r eax; gc\"; gc" bu i219!I219LinkFromStatus "r $t2=poi(@esp); .echo ====W20_LINKFROM_IN====; bp /1 @$t2 \".echo ====W20_LINKFROM_OUT====; r eax; gc\"; gc" bu /1 i219!I219TxRxAlloc "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_TXRXALLOC====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x2800 L3; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3800 L3; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu /1 i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu /1 i219!I219MiniportISR ".echo ====W20_ISR====; gc" bu /1 i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_DPC====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00C0 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219PollTimerFunc "r $t0=poi(@esp+8); r $t1=poi(@$t0+0xDC); .echo ====W20_POLL====; dd @$t1+0x0008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" g
  5. @reboot12 I just get an AIMB-786 board. Now I set it up Dietmar
  6. @reboot12 Here is new driver W20 and KD block Dietmar https://www.upload.ee/files/19131857/i219W20.zip.html !sym quiet .reload /f i219.sys sxd ud bc * .echo ====W20_PCI_i219_DEV_15BB==== !pci 0 0 1f 6 .echo ====W20_GLOBALS==== dd i219!g_LinkPollInit L1 dd i219!g_LinkPollStart L1 dd i219!g_RxFrames L1 dd i219!g_TxSubmits L1 dd i219!g_TxCompletes L1 bu /1 i219!I219MiniportInitialize "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_INIT_IN====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; .printf \"STATUS&40000000=%08x\n\", (poi(@$t1+0x0008) & 0x40000000); gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x5B54 L1; .printf \"STATUS&40000000=%08x\n\", (poi(@$t1+0x0008) & 0x40000000); gc" bu /1 i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_CTRLKICK====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; .printf \"STATUS&40000000=%08x\n\", (poi(@$t1+0x0008) & 0x40000000); gc" bu /1 i219!I219TxRxAlloc "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_TXRXALLOC====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x2800 L3; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3800 L3; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu /1 i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; .printf \"STATUS&40000000=%08x\n\", (poi(@$t1+0x0008) & 0x40000000); gc" bu /1 i219!I219MiniportISR ".echo ====W20_ISR_FIRST====; gc" bu /1 i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_DPC_FIRST====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x00D8 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_RxFrames L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_SEND_FIRST====; .printf \"a=%p regs=%p cnt=%u\n\", @$t0, @$t1, poi(@esp+0x0c); dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxSubmits L1; gc" bu /1 i219!I219TxSendOne ".echo ====W20_TXONE_FIRST====; gc" bu /1 i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_TXRECLAIM_FIRST====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W20_RXPOLL_FIRST====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0100 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd i219!g_RxFrames L1; gc" g
  7. @reboot12 I just check your Bios V5. There are a lot of settings for ULP EEE etc. Please take a look, if you have set this for XP SP3 lan i219 Dietmar - ASPM Support = Disabled - Native ASPM = Disabled - L1 Substates / L1SS = Disabled - DMI Link ASPM Control = Disabled - PCIe Clock Power Management = Disabled (if present) - No Snoop = Disabled - Relaxed Ordering = Disabled - Intel VT-d (DMA Remapping) = Disabled OPTIONAL (if those menus exist): - Maximum Payload Size = 128 bytes (or Auto if 128 not available) - Maximum Read Request = 256 (or 512) - Energy Efficient Ethernet (EEE) / Green Ethernet = Disabled
  8. @reboot12 here it is. https://www.upload.ee/files/19131703/e1d6232.7z.html My i219 driver for XP SP3 works on mostly all motherboards. Just on the AIMB-786 board there is a crazy setting for ULP, EEE etc. that forbids DMA to read write. And because of this, maybe its Bios V5 helps to understand, for which settings it waits for the Lan i219-LM Dev_15BB Dietmar
  9. @reboot12 Just now I am building a new driver W20. Do you have the Bios V5 for this board Dietmar
  10. @reboot12 And here is the 3. new i219 driver with KD named W19 Dietmar https://www.upload.ee/files/19131083/i219W19.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_INIT_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0000 L1; dd @$t13+0x0008 L1; dd @$t13+0x0018 L1; dd @$t13+0x00C0 L1; dd @$t13+0x00D0 L1; dd @$t13+0x0100 L1; dd @$t13+0x0400 L1; dd i219!g_LinkPollInit L1; dd i219!g_LinkPollStart L1; dd i219!g_RxFrames L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_WARMRESET_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0000 L1; dd @$t13+0x0008 L1; dd @$t13+0x0018 L1; dd @$t13+0x5B50 L1; dd @$t13+0x5B54 L1; dd @$t13+0x5B58 L1; dd @$t13+0x0100 L1; dd @$t13+0x0400 L1; dd @$t13+0x2810 L1; dd @$t13+0x2818 L1; dd @$t13+0x2828 L1; dd @$t13+0x3810 L1; dd @$t13+0x3818 L1; dd @$t13+0x3828 L1; gc" bu /1 i219!I219DoCtrlKickLate "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_CTRLKICK_LATE_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0008 L1; dd @$t13+0x5B50 L1; dd @$t13+0x5B54 L1; dd @$t13+0x5B58 L1; dd @$t13+0x00C0 L1; dd @$t13+0x00D0 L1; gc" bu /1 i219!I219LowPowerExitFixup "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_LP_EXIT_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0008 L1; dd @$t13+0x5B50 L1; dd @$t13+0x5B54 L1; dd @$t13+0x5B58 L1; dd @$t13+0x00C0 L1; dd @$t13+0x00D0 L1; gc" bu /1 i219!I219ApplyDelayedCondPowerFix "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_DELAYED_POWER_FIX_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0008 L1; dd @$t13+0x5B54 L1; dd @$t13+0x00C0 L1; dd @$t13+0x00D0 L1; gc" bu /1 i219!I219PhyEnsureAutonegAll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); r $t2=poi(@esp); .echo ====W19_AN_ADV_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t0, @$t1, @$t2; dd @$t1+0x0008 L1; bp /1 @$t2 \".echo ====W19_AN_ADV_OUT====; dd @$t1+0x0008 L1; gc\"; gc" bu /1 i219!I219WaitAutonegLink "r $t3=poi(@esp+4); r $t4=poi(@$t3+0xDC); r $t5=poi(@esp); .echo ====W19_WAIT_AN_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t3, @$t4, @$t5; dd @$t4+0x0008 L1; bp /1 @$t5 \".echo ====W19_WAIT_AN_OUT====; dd @$t4+0x0008 L1; dd i219!g_LinkPollStart L1; gc\"; gc" bu /1 i219!I219EnsureLinkBringup "r $t6=poi(@esp+4); r $t7=poi(@$t6+0xDC); r $t8=poi(@esp); .echo ====W19_LINK_BRINGUP_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t6, @$t7, @$t8; dd @$t7+0x0008 L1; bp /1 @$t8 \".echo ====W19_LINK_BRINGUP_OUT====; dd @$t7+0x0008 L1; dd i219!g_LinkPollStart L1; gc\"; gc" bu /1 i219!I219TxRxStart "r $t9=poi(@esp+4); r $t10=poi(@$t9+0xDC); r $t11=poi(@esp); .echo ====W19_TXRXSTART_IN====; .printf \"a=%p regs=%p ret=%p\n\", @$t9, @$t10, @$t11; dd @$t10+0x0008 L1; dd @$t10+0x0100 L1; dd @$t10+0x0400 L1; dd @$t10+0x2800 L3; dd @$t10+0x2810 L1; dd @$t10+0x2818 L1; dd @$t10+0x2828 L1; dd @$t10+0x3800 L3; dd @$t10+0x3810 L1; dd @$t10+0x3818 L1; dd @$t10+0x3828 L1; bp /1 @$t11 \".echo ====W19_TXRXSTART_OUT====; dd @$t10+0x0008 L1; dd @$t10+0x0100 L1; dd @$t10+0x0400 L1; dd @$t10+0x2810 L1; dd @$t10+0x2818 L1; dd @$t10+0x2828 L1; dd @$t10+0x3810 L1; dd @$t10+0x3818 L1; dd @$t10+0x00C0 L1; dd @$t10+0x00D0 L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; dd i219!g_RxFrames L1; gc\"; gc" bu /1 i219!I219MiniportISR "r $t12=poi(@esp+4); r $t13=poi(@esp+8); r $t14=poi(@esp+0x0C); .echo ====W19_ISR_ONCE====; .printf \"IntrRec=%p QueueDpc=%p a=%p ret=%p\n\", @$t12, @$t13, @$t14, poi(@esp); dd @esp L6; gc" bu /1 i219!I219MiniportHandleInterrupt "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_DPC_ONCE====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0008 L1; dd @$t13+0x00C0 L1; dd @$t13+0x00D0 L1; dd @$t13+0x2810 L1; dd @$t13+0x2818 L1; dd @$t13+0x2828 L1; dd @$t13+0x3810 L1; dd @$t13+0x3818 L1; dd @$t13+0x3828 L1; dd i219!g_TxSubmits L1; dd i219!g_TxCompletes L1; dd i219!g_RxFrames L1; gc" bu /1 i219!I219RxPoll "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_RXPOLL_ONCE====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0100 L1; dd @$t13+0x2810 L1; dd @$t13+0x2818 L1; dd @$t13+0x2828 L1; dd i219!g_RxFrames L1; dd i219!g_RxErrors L1; gc" bu /1 i219!I219TxReclaim "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_TXRECLAIM_ONCE====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x3810 L1; dd @$t13+0x3818 L1; dd @$t13+0x3828 L1; dd i219!g_TxCompletes L1; dd i219!g_TxErrors L1; gc" bu /1 i219!I219MiniportSendPackets "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_SENDPKTS_ONCE====; .printf \"cnt=%u a=%p regs=%p ret=%p\n\", poi(@esp+0x0C), @$t12, @$t13, poi(@esp); dd @$t13+0x0008 L1; dd @$t13+0x3810 L1; dd @$t13+0x3818 L1; dd i219!g_TxSubmits L1; gc" bu /1 i219!I219TxSendOne "r $t12=poi(@esp+4); r $t13=poi(@$t12+0xDC); .echo ====W19_TXONE_ONCE====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x3810 L1; dd @$t13+0x3818 L1; dd @$t13+0x00C0 L1; dd @$t13+0x00D0 L1; dd i219!g_TxSubmits L1; gc" bu /1 i219!I219PollTimerFunc "r $t12=poi(@esp+8); r $t13=poi(@$t12+0xDC); .echo ====W19_POLL_TIMER_ONCE====; .printf \"a=%p regs=%p ret=%p\n\", @$t12, @$t13, poi(@esp); dd @$t13+0x0008 L1; dd @$t13+0x2810 L1; dd @$t13+0x2818 L1; dd @$t13+0x2828 L1; dd @$t13+0x3810 L1; dd @$t13+0x3818 L1; dd @$t13+0x3828 L1; dd i219!g_LinkPollStart L1; dd i219!g_RxFrames L1; dd i219!g_TxCompletes L1; gc" g
  11. @reboot12 And here is the second new driver W18. I build a complete new i219.inf for this driver, for to cancel any ULP etc. in the very first beginning. So you have to delete in Windows\inf folder any old OEM.inf for this driver, means complete new setup. Please test and then KD block Dietmar https://www.upload.ee/files/19130936/i219W18.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W18_INIT====; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu /1 i219!I219InitHwBitsLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_INITBITS====; dd @$t1+0x0018 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219WaitMeCsrReady "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_WAIT_MECSR====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219NeedDelayedCondPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_NEED_DELAYED_FIX====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219ApplyDelayedCondPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_APPLY_DELAYED_FIX====; .printf \"a=%p regs=%p tag=%ma\n\", @$t0, @$t1, poi(@esp+8); dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219MeExitDpg "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_ME_EXIT_DPG====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219MeExitUlp "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_ME_EXIT_ULP====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219DisableUlpPhy "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_DISABLE_ULP_PHY====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219PrimeTxPathLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W18_PRIMETX==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxDisableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_TXDISABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxEnableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_TXENABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W18_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x0400 L2; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W18_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSend "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W18_SEND==== pkt=%p a=%p\n\", poi(@esp+8), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_TXONE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_TXRECLAIM====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219MiniportISR ".echo ====W18_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_DPC====; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W18_RXPOLL====; dd @$t1+0x0100 L1; dd @$t1+0x5008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x0008 L1; dd @$t1+0x5B54 L1; gc" g
  12. @reboot12 Yes, I correct the KD block, because each bu needs an own line. Please test W17 just now, because it has really a chance Dietmar
  13. @reboot12 I found in the Binary of Win7 a FW_VALID-introduced H2ME-Handshake. Here is new driver for this and KD Dietmar https://www.upload.ee/files/19130724/i219W17.zip.html !sym quiet sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W17_INIT====; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu /1 i219!I219InitHwBitsLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_INITBITS====; dd @$t1+0x0018 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219NeedDelayedCondPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_NEED_DELAYED_FIX====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219ApplyDelayedCondPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_APPLY_DELAYED_FIX====; .printf \"a=%p regs=%p tag=%ma\n\", @$t0, @$t1, poi(@esp+8); dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219MeExitDpg "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_ME_EXIT_DPG====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219MeExitUlp "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_ME_EXIT_ULP====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219DisableUlpPhy "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_DISABLE_ULP_PHY====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219PrimeTxPathLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W17_PRIMETX==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxDisableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_TXDISABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxEnableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_TXENABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W17_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x0400 L2; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W17_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSend "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W17_SEND==== pkt=%p a=%p\n\", poi(@esp+8), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_TXONE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_TXRECLAIM====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219MiniportISR ".echo ====W17_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_DPC====; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W17_RXPOLL====; dd @$t1+0x0100 L1; dd @$t1+0x5008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x0008 L1; dd @$t1+0x5B54 L1; gc" g
  14. @reboot12 Nice, that Win7 works. I will test also in the afternoon. Please test my version W16, because there we can see a lot with Windbg Dietmar PS: I am back at about 19:00.
  15. @reboot12 here is new driver W16 and KD Dietmar https://www.upload.ee/files/19129669/i219W16.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W16_INIT====; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu /1 i219!I219InitHwBitsLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_INITBITS====; dd @$t1+0x0018 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219NeedDelayedCondPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_NEED_DELAYED_FIX====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219ApplyDelayedCondPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_APPLY_DELAYED_FIX====; .printf \"a=%p regs=%p tag=%ma\n\", @$t0, @$t1, poi(@esp+8); dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219MeExitDpg "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_ME_EXIT_DPG====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219MeExitUlp "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_ME_EXIT_ULP====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219DisableUlpPhy "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_DISABLE_ULP_PHY====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219PrimeTxPathLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W16_PRIMETX==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxDisableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_TXDISABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxEnableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_TXENABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W16_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x0400 L2; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W16_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSend "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W16_SEND==== pkt=%p a=%p\n\", poi(@esp+8), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_TXONE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_TXRECLAIM====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219MiniportISR ".echo ====W16_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_DPC====; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W16_RXPOLL====; dd @$t1+0x0100 L1; dd @$t1+0x5008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x0008 L1; dd @$t1+0x5B54 L1; gc" g
  16. @reboot12 Here is W15 and KD block Dietmar https://www.upload.ee/files/19129603/i219W15.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W15_INIT====; gc" bu i219!I219PciEnsureBusMaster "r $t0=poi(@esp+4); .echo ====W15_PCI_BME====; .printf \"a=%p tag=%ma\n\", @$t0, poi(@esp+8); gc" bu i219!I219DbgPrintPowerState "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_PWR_DUMP====; .printf \"a=%p regs=%p tag=%ma\n\", @$t0, @$t1, poi(@esp+8); dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219ShouldApplyConditionalPowerFix "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_SHOULD_PWR_FIX====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219LowPowerExitFixup "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_LOWPOWER_FIX====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219MeExitDpg "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_ME_EXIT_DPG====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219MeExitUlp "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_ME_EXIT_ULP====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219DisableUlpPhy "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_DISABLE_ULP_PHY====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0100 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; gc" bu i219!I219TxDisableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_TXDISABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxEnableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_TXENABLEQ====; dd @$t1+0x3828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W15_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x0400 L2; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3928 L1; dd @$t1+0x3840 L1; dd @$t1+0x3940 L1; dd @$t1+0x3004 L1; dd @$t1+0x5008 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W15_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSend "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W15_SEND==== pkt=%p a=%p\n\", poi(@esp+8), @$t0; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3004 L1; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_TXONE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_TXRECLAIM====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x3004 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219MiniportISR ".echo ====W15_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_DPC====; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x3004 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W15_RXPOLL====; dd @$t1+0x0100 L1; dd @$t1+0x5008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; dd @$t1+0x0008 L1; dd @$t1+0x5B54 L1; gc" g
  17. @reboot12 Ok, I already find out, that nearly everything works. Here is W14 and KD block, please test Dietmar https://www.upload.ee/files/19129501/i219W14.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W14_INIT====; gc" bu i219!I219PciEnsureBusMaster "r $t0=poi(@esp+4); .echo ====W14_PCI_BME====; .printf \"a=%p tag=%ma\n\", @$t0, poi(@esp+8); gc" bu i219!I219DbgPrintPowerState "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_PWR_DUMP====; .printf \"a=%p regs=%p tag=%ma\n\", @$t0, @$t1, poi(@esp+8); dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219NormalizePowerStateForDma "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_NORM_PWR====; .printf \"a=%p regs=%p tag=%ma\n\", @$t0, @$t1, poi(@esp+8); dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x5008 L1; gc" bu i219!I219MeExitDpg "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_ME_EXIT_DPG====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219MeExitUlp "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_ME_EXIT_ULP====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x0008 L1; gc" bu i219!I219DisableUlpPhy "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_DISABLE_ULP_PHY====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x00100 L1; dd @$t1+0x00400 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu /1 i219!I219InitHwBitsLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_INITBITS====; dd @$t1+0x0018 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x00100 L1; dd @$t1+0x00400 L1; dd @$t1+0x00410 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x0382C L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu i219!I219PrimeTxPathLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W14_PRIMETX==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x00400 L1; dd @$t1+0x00410 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x0382C L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W14_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x00400 L2; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W14_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_TXONE====; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_TXRECLAIM====; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219MiniportISR ".echo ====W14_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_DPC====; dd @$t1+0x000C0 L1; dd @$t1+0x000D0 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x5B58 L1; dd @$t1+0x03004 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W14_RXPOLL====; dd @$t1+0x00100 L1; dd @$t1+0x05008 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x0008 L1; dd @$t1+0x5B54 L1; gc" g
  18. @reboot12 Here is W13, where I try to force DMA and new KD block Dietmar https://www.upload.ee/files/19129411/i219W13.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W13_INIT====; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x00100 L1; dd @$t1+0x00400 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu /1 i219!I219InitHwBitsLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_INITBITS====; dd @$t1+0x0018 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x03004 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x0018 L1; dd @$t1+0x00100 L1; dd @$t1+0x00400 L1; dd @$t1+0x00410 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x0382C L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; gc" bu i219!I219PrimeTxPathLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W13_PRIMETX==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x00400 L1; dd @$t1+0x00410 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x0382C L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W13_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x00400 L2; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L1; dd @$t1+0x03940 L1; dd @$t1+0x03004 L1; dd @$t1+0x05008 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W13_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_TXONE====; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_TXRECLAIM====; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219MiniportISR ".echo ====W13_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_DPC====; dd @$t1+0x000C0 L1; dd @$t1+0x000D0 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x03004 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W13_RXPOLL====; dd @$t1+0x00100 L1; dd @$t1+0x05008 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x0008 L1; gc" g
  19. @reboot12 Here is W12. I just take a look again at Linux e1000e, how they managed to open DMA transfer. And also KD block Dietmar https://www.upload.ee/files/19129240/i219W12.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W12_INIT====; gc" bu /1 i219!I219WarmResetInitLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_WARMRESET====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B54 L1; dd @$t1+0x00100 L1; dd @$t1+0x00400 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L2; dd @$t1+0x05008 L1; dd @$t1+0x03004 L1; gc" bu /1 i219!I219InitHwBitsLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_INITBITS====; dd @$t1+0x0018 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L2; dd @$t1+0x05008 L1; dd @$t1+0x03004 L1; gc" bu i219!I219DoCtrlKickLate "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_CTRLKICK====; dd @$t1+0x0000 L1; dd @$t1+0x0008 L1; dd @$t1+0x0018 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_TXRXSTART====; .printf \"a=%p regs=%p\n\", @$t0, @$t1; dd @$t1+0x0008 L1; dd @$t1+0x5B50 L1; dd @$t1+0x5B54 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x0382C L1; dd @$t1+0x03840 L2; dd @$t1+0x00410 L1; dd @$t1+0x03004 L1; dd @$t1+0x00400 L1; dd @$t1+0x00100 L1; gc" bu i219!I219PrimeTxPathLikeLinux "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W12_PRIMETX==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x00400 L1; dd @$t1+0x00410 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x0382C L1; dd @$t1+0x03840 L2; gc" bu i219!I219TxDisableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_TXDISABLEQ====; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; gc" bu i219!I219TxEnableQueue "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_TXENABLEQ====; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W12_FORCEKICK==== hard=%lu\n\", poi(@esp+8); dd @$t1+0x0008 L1; dd @$t1+0x00400 L2; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; dd @$t1+0x03840 L2; dd @$t1+0x03004 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .printf \"====W12_SENDPACKETS==== cnt=%lu a=%p\n\", poi(@esp+0x0c), @$t0; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_TXONE====; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_TXRECLAIM====; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x03928 L1; gc" bu /1 i219!I219MiniportISR ".echo ====W12_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_DPC====; dd @$t1+0x000C0 L1; dd @$t1+0x000D0 L1; dd @$t1+0x03810 L1; dd @$t1+0x03818 L1; dd @$t1+0x03828 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi(@$t0+0xDC); .echo ====W12_RXPOLL====; dd @$t1+0x00100 L1; dd @$t1+0x05008 L1; dd @$t1+0x02810 L1; dd @$t1+0x02818 L1; dd @$t1+0x02828 L1; gc" g
  20. @reboot12 And here comes version W11 for the driver i219 for XP SP3 and please this KD until desktop with "g" Dietmar https://www.upload.ee/files/19128480/i219W11.zip.html !sym quiet .reload /f i219.sys sxd ud bc * bu /1 i219!I219MiniportInitialize ".echo ====W11_INIT====; gc" bu i219!I219TxRxStart "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); r $t2=poi(@esp); .printf \"W11_TXRX_IN a=%p regs=%p ret=%p\n\", $t0, $t1, $t2; dd @$t1+0x0008 L1; dd @$t1+0x0400 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; bp /1 @$t2 \".echo ====W11_TXRX_OUT====; dd @$t1+0x0008 L1; dd @$t1+0x0400 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; gc\"; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); r $t2=poi(@esp); .printf \"W11_FORCEKICK_IN a=%p regs=%p ret=%p\n\", $t0, $t1, $t2; dd @$t1+0x0008 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; bp /1 @$t2 \".echo ====W11_FORCEKICK_OUT====; dd @$t1+0x0008 L1; dd @$t1+0x0400 L1; dd @$t1+0x0410 L1; dd @$t1+0x3828 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; gc\"; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); .printf \"W11_SEND cnt=%u a=%p\n\", poi(@esp+0x0c), $t0; dd i219!g_TxSubmits L5; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); .printf \"W11_TXONE a=%p\n\", $t0; dd i219!g_TxSubmits L5; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .echo ====W11_TXRECLAIM====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; gc" bu /1 i219!I219MiniportISR ".echo ====W11_ISR_ONCE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .echo ====W11_DPC====; dd @$t1+0x00C0 L1; dd @$t1+0x00D0 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; gc" bu i219!I219RxPoll "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .echo ====W11_RXPOLL====; dd @$t1+0x0100 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x2828 L1; gc" g
  21. @reboot12 I build new driver W10 for XP SP3 and i219-LM, please test and also the KD block Dietmar https://www.upload.ee/files/19128368/i219W10.zip.html bc * bu /1 i219!I219MiniportISR ".echo ====ISR_ONCE_W10_SAFE====; gc" bu i219!I219MiniportHandleInterrupt "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .echo ====DPC_W10_SAFE====; dd @$t1+0x0008 L1; dd @$t1+0x2810 L1; dd @$t1+0x2818 L1; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; gc" bu i219!I219MiniportSendPackets "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .printf \"SENDPACKETS cnt=%lu\n\", poi(@esp+0x0c); dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; bp /1 poi(@esp) \".echo ====SENDPACKETS_OUT_W10_SAFE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; gc\"; gc" bu i219!I219MiniportSend "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .printf \"SEND pkt=%p\n\", poi(@esp+8); dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; bp /1 poi(@esp) \".echo ====SEND_OUT_W10_SAFE====; r eax; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; gc\"; gc" bu i219!I219TxSendOne "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .printf \"TXSENDONE pkt=%p\n\", poi(@esp+8); dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; bp /1 poi(@esp) \".echo ====TXSENDONE_OUT_W10_SAFE====; r eax; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; gc\"; gc" bu i219!I219TxForceKick "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .printf \"TXFORCEKICK hard=%lu\n\", poi(@esp+8); dd @$t1+0x0400 L2; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; bp /1 poi(@esp) \".echo ====TXFORCEKICK_OUT_W10_SAFE====; dd @$t1+0x0400 L2; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd @$t1+0x382C L1; dd @$t1+0x3840 L1; dd i219!g_TxSubmits L5; gc\"; gc" bu i219!I219TxReclaim "r $t0=poi(@esp+4); r $t1=poi($t0+0xDC); .echo ====TXRECLAIM_W10_SAFE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; gc" bu /1 i219!I219PollTimerFunc "r $t0=poi(@esp+8); r $t1=poi($t0+0xDC); .echo ====POLL_W10_SAFE====; dd @$t1+0x3810 L1; dd @$t1+0x3818 L1; dd @$t1+0x3828 L1; dd i219!g_TxSubmits L5; gc" g
  22. @reboot12 I build for you a minimal driver package for WIN7, bit 32 without any EEE etc. in its *.inf Please check, if this lan driver works on your AIMB-786 board under win7. Then we have a stable basis, from which we can operate Dietmar https://www.upload.ee/files/19128225/i219Win7.zip.html Edit: On my Asus z390 WS pro I cant install this driver in win7 Sp1 bit 32. This board has also the i219 lan driver with Dev_15BB .
×
×
  • Create New...