Use Intel NIC PXE image mod for 2.1 SLIC?

Discussion in 'MDL Projects and Applications' started by SirSilentBob, Aug 25, 2009.

  1. truthinjection

    truthinjection MDL Member

    Aug 27, 2009
    247
    46
    10
    Thanks. I haven't gotten back into trying any code changes yet. This week has been reinstall OSes week so far. The new Fedora 12 came out, etc. I need to roll-back the interesting (but abortive) Int19-hooking changes I had been experimenting with.

    The Int19H hooking makes it so you don't have to set the WindSLIC entry first in the boot order to make it work, but some BIOSes block the hooking, so it hasn't been as fruitful as I had hoped.

    -tij-
     
  2. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Ok. It’s good to hear you are alive and kicking! ;)
    BTW: IMO it's nice feature to have WindSLIC activate/perform inject ONLY if it's the first one in the boot order... :)
     
  3. truthinjection

    truthinjection MDL Member

    Aug 27, 2009
    247
    46
    10
    The Int19H test was actually to fix a totally unrelated issue, but I did find an actual use for it.

    Sure, having to pick WindSLIC as first in boot order is okay, but in certain situations (Intel board DX48BT2 specifically), it makes the boot take 10-15 seconds longer because the built-in NIC gets activated, too, and tries to do PXE booting. So, ideally, the selection would be a compile-time selection that best fits the board in question.

    -tij-
     
  4. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    IMO, LOM (Lan-On-Motherboard) doesn’t have its own flash. Corresponding NIC “BIOS” is just a module in main BIOS. I.e. if you can replace that module – you can do something closed by OEM, like enable WOL, if your hardware supports it ;)
    But if you are able to replace a BIOS module – you would rather insert SLIC 2.1, than modify NIC module, right? ;)
     
  5. tqhoang

    tqhoang MDL BIOS Modder

    Apr 29, 2008
    1,600
    356
    60
    #245 tqhoang, Nov 30, 2009
    Last edited by a moderator: Apr 20, 2017
    tij - Hope you had a good holiday.

    FWIW, I decided to just get the OEM version of the Pro/1000 GT cards from NewEgg. My target machine is an older Dell Precision 360 (P4 3GHz + 3GB RAM + NVIDIA 7600GT AGP)...it has a built-in Intel PXE NIC but I'll flash the PCI card NIC on another PC.

    Just one question: Will I have the same issue with the read-only BIOS memory?

    Here's a snapshot from a Linux dmesg output:
    Code:
    BIOS-provided physical RAM map:
     BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)
     BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
     BIOS-e820: 0000000000100000 - 00000000bff74000 (usable)
     BIOS-e820: 00000000bff74000 - 00000000bff76000 (ACPI NVS)
     BIOS-e820: 00000000bff76000 - 00000000bff97000 (ACPI data)
     BIOS-e820: 00000000bff97000 - 00000000c0000000 (reserved)
     BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
     BIOS-e820: 00000000fecf0000 - 00000000fecf1000 (reserved)
     BIOS-e820: 00000000fed20000 - 00000000fed90000 (reserved)
     BIOS-e820: 00000000fee00000 - 00000000fee10000 (reserved)
     BIOS-e820: 00000000ffb00000 - 0000000100000000 (reserved)
    
    Code:
    Using APIC driver default
    ACPI: RSDP (v000 DELL                                  ) @ 0x000feb90
    ACPI: RSDT (v001 DELL    WS 360  0x00000008 ASL  0x00000061) @ 0x000fd164
    ACPI: FADT (v001 DELL    WS 360  0x00000008 ASL  0x00000061) @ 0x000fd19c
    ACPI: SSDT (v001   DELL    st_ex 0x00001000 MSFT 0x0100000d) @ 0xfffc8e8e
    ACPI: MADT (v001 DELL    WS 360  0x00000008 ASL  0x00000061) @ 0x000fd210
    ACPI: BOOT (v001 DELL    WS 360  0x00000008 ASL  0x00000061) @ 0x000fd27c
    ACPI: ASF! (v016 DELL    WS 360  0x00000008 ASL  0x00000061) @ 0x000fd2a4
    ACPI: DSDT (v001   DELL    dt_ex 0x00001000 MSFT 0x0100000d) @ 0x00000000
    
     
  6. anami

    anami MDL Novice

    Sep 15, 2009
    11
    3
    0
    Trials to commence - Dell laptop

    I have two Dell D410 laptops, which are Centrino era without SLIC of any kind in BIOS. I located a Dell PD01X docking station and an Intel Pro/1000 MT server ethernet adapter PWLA8492MT (dual NIC). I scoped out the docking station which fits all D-Series Dell laptops, and has room for a full-size PCI card in the card slot and a D-Bay for any D-series Dell optical drive. I intend to see if I can mod the Intel PXE flash to hold SLIC 2.1, put my Win7 All-in-One DVD in the optical drive and install Win7 and activate the D410s with the Intel NIC.
     
  7. truthinjection

    truthinjection MDL Member

    Aug 27, 2009
    247
    46
    10
    The current code doesn't seem to work with Dells, but even if it did, this would require you to leave the laptop stuck in the docking station for Windows to remain activated. The moment you removed it from the docking station, the next time your rebooted, it would go back to native BIOS, and no SLIC.
     
  8. truthinjection

    truthinjection MDL Member

    Aug 27, 2009
    247
    46
    10
    #248 truthinjection, Dec 1, 2009
    Last edited by a moderator: Apr 20, 2017
    Yes, you would have the same issue since the RSDT is at (0x000f___), which is read-only. It is believed that by moving the RSDP into the EBDA, a new version could be made that doesn't have this problem, but so far, I have not gotten around to programming this version.

    -tij-
     
  9. bengan

    bengan MDL Novice

    Nov 29, 2009
    1
    0
    0
    Thanks
    Works with:
    MB Intel DX38BT
    Network adapter Intel PRO/1000 PT Desktop Adapter
     
  10. ficho

    ficho MDL Novice

    Apr 28, 2008
    11
    0
    0
    HI,
    tested on 2 intel boards:
    PCI\VEN_8086&DEV_10B9 and
    PCI\VEN_8086&DEV_1010
    All OK
    Regards ficho
     
  11. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    #251 Apokrif, Dec 13, 2009
    Last edited by a moderator: Apr 29, 2017
  12. SirSilentBob

    SirSilentBob MDL Senior Member

    Jun 5, 2009
    277
    21
    10
    To Truthinjection and all who have helped him in testing and debugging:

    I apologize for not updating the original post in nearly 2 months. I've been extremely busy with packing, selling a residence, moving, and buying a new residence which I will be moving into soon.

    I have updated the original post to include additional NICs that this method has worked on, and I have removed the original .ASM file from the post, since TI has updated it many times, and I don't want people to use his older original version and brick anything. It now instructs users to browse the thread and use the latest version from TI.

    If there are further updates/changes that should be done, please PM me and I'll get it all updated. I'm really happy that this method has evolved so far and is available to those with an un-moddable bios!
     
  13. ericchak

    ericchak MDL Junior Member

    Sep 3, 2009
    76
    0
    0
    I had modified both Intel 100pro (with old chip set 82558) and 1000MT with success, then I was trying to modify the 3com and Realteck 8139/8169 card, since their original programs not succesful, I finally blow out one of the bios eeprom from the Intel 82558 Lan card (which modified with 80861229 - vendor & device ID) and plug into the 3Com 905B and Realtek 8139 Lan cards, guess what? all of them loaded the modified SLIC2.1 succesful and using the dumptool and they all successful to report the SLIC inside the lan bootrom.

    Then my question is - does the Vendor & Device ID really meaningful for the modification?
     
  14. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Depend on mobo BIOS, I guess.
    PCI_VENDOR_ID, PCI_DEVICE_ID are used in PCI ROM Data Structure. If you really want to know more – Google for it. ;)
     
  15. truthinjection

    truthinjection MDL Member

    Aug 27, 2009
    247
    46
    10
    Yes. Depends on the BIOS of the motherboard whether or not it works with an incorrect VID/DID. For example, the QEMU virtual machine doesn't care at all, but real BIOSes should care, both about the VID/DID and also about the checksum being 0 across the entire ROM.

    Also, the Intel utility won't flash the firmware to the cards unless the VID/DID match the card that is being flashed.

    Hope that helps,
    -tij-

    PS. I'm still alive/here. Thanks for the updates, SirSilentBob/Apokrif. I finally started work on the EBDA stuff. I have it moving the RSDP semi-successfully now, except that I have to work on it some more, since it appears to be corrupting the RSDP during/after the copy, but I'm not sure if that's my code, or the particular donor location chosen in the EBDA. Once I get that sorted, I have to then get it to move the RSDT/XSDT, which once upon a time, my code did, so hopefully I can just find that old version and take the code directly from there.
     
  16. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Cool! Let us know if we can help somehow! :)
     
  17. ericchak

    ericchak MDL Junior Member

    Sep 3, 2009
    76
    0
    0
    thanks for information.

    Understand the motherboard check correct VID&DID, as the VenID and DeviceID stored at another eeprom not at the bootrom, we can modify them by eeupdate (as many people modify the normal 82559 to a server board by changing the data by eeupdate).

    so do the motherboard check the vid&did but did they compared with the bootrom data? i will further check with 3com 905B with intel modified bootrom into few different motherboard to see what happen.

    thanks again
     
  18. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Just checked - it's Intel PXE code looking for match: "PXE-E01: PCI Vendor and Device IDs do not match!"
    I guess, mobo might not care about it at all :)
     
  19. feappyunupS

    feappyunupS MDL Novice

    Dec 16, 2009
    14
    0
    0
    Use Intel NIC PXE image mod for 2 1 SLIC

    Even if, don't use MSI Live Update. It seldom finds the latest drivers anyway and it is horribly dangerous when it comes to BIOS Updates and should therefore be avoided at all costs. You are not missing out on anything here, just one less useless tool running in the background.
     
  20. tqhoang

    tqhoang MDL BIOS Modder

    Apr 29, 2008
    1,600
    356
    60
    Cool beans...I have two Intel Pro1000GT cards waiting to test on my Dell Precision 360. ;)

    BTW how would we test if everything got moved ok? Comparing RW reports before & after?