The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.

HowTo: Upgrade Dell Precision M4800 with Nvidia Quadro M1200

Discussion in 'Dell Latitude, Vostro, and Precision' started by Yamakuzure, Jul 20, 2018.

  1. Yamakuzure

    Yamakuzure Notebook Enthusiast

    Reputations:
    12
    Messages:
    12
    Likes Received:
    5
    Trophy Points:
    6
    If you have bought an nvidia Quadro M1200, and do not seem to get it to work with your Precision M4800, here is what you can do.

    I have posted the story to this howto in the "Dell Precision M4800 - Can GPU be upgraded?"-thread, as I have most information that lead to success from there.

    Note 1: Although this is for the Quadro M1200 on a Precision M4800, the general path might be the same for other cards and/or other Laptops.

    Note 2: This is for Windows 10 64bit. Windows Vista, 7 and 8 might need other details, but the general path should be the same.

    Note 3: This HowTo might seem lengthy, but isn't really complicated. I just made it thorough and detailed. You will most probably skip most parts. However, if you think something is not thoroughly enough explained or even unclear, please PM me for review!

    1. Download and install GPU-Z.
    2. Start GPU-Z and note down the PCI subsystem ID of your card.
      Look at the field "Device ID". It is build up like this:
      10DE 13B6 - 1028 15CC Which means:
      • 10DE : Vendor : NVIDIA Corporation
      • 13B6 : Chip ID : GM107GLM [Quadro M1200 Mobile]
      • 1028 : Subvendor: Dell (HP would be 103C)
      • 15CC : Subsys ID: <-- Note this down! (yours might be different)
      I can not tell you why the card is listed as 1028 15CC. That combination only exists for the AMD FirePro M5100. I guess it is somehow generated for this card, as it is unknown to the system BIOS.
      However, whenever I refer to "15CC" from hereon, you have to substitute it with your subsystem ID! The other numbers should be the same.
    3. Look at the field "BIOS Version". If it reads "Unavailable", you have to flash a viable Video BIOS on the card first.
      • Download the latest NVIDIA NVFlash, and unpack it somewhere convenient.
      • I have sent two VBIOS ROMS to the TechPowerUp Video BIOS Collection. Download the one for your card vendor into your NVFlash directory.
        It is very important that you choose the correct one!
      • Go into the Device Manager, right click on your M1200 graphics card and select "Disable Device".
      • Start a command shell (cmd) with administrator privileges and cd into your NVFlash directory.
      • Code:
        nvflash64 -6 <rom-file-name>
        The "-6" ignores the surely occuring PCI subsystem mismatch.
      • Reboot - Re-activate your card - Enjoy.
      • "Oh NO! I flashed the wrong BIOS!"
        • Deactivate your card again.
        • Start cmd with administrator privileges again and cd into you NVFlash directory.
        • Start nvflash64 again, but do only hit 'y' once, wait at the second prompt.
        • Press Ctrl-Alt-Del and start the task manager.
        • Switch to "Details", sort by name.
        • Right-Click the nvflash64.exe process and select "Kill Process Structure" (Do NOT confirm, yet!)
        • Move the confirmation window below your cmd window and switch to the cmd window.
        • Now confirm flashing with 'y'.
        • When the output says "Erasing EEPROM" (Comes very soon, about 0.5 to 1.5 seconds!) click on the confirmation to kill nvflash.
        • Now your EEPROM is erased again and the adapter ID is gone. Proceed above with flashing the other VBIOS.
    4. Download the latest Dell nVIDIA Quadro K Series Graphic Driver for the M4800, and unpack it somewhere convenient using 7-zip.
    5. (optional, unless you need HDMI support) Download the latest Quadro Notebook Driver from Nvidia and unpack it somewhere convenient with 7-zip.
    6. If you like, enable "TestMode":
      • Start a cmd with administrator privileges.
      • Issue:
        Code:
        bcdedit /set testsigning on
      If you do not do this, you have to boot with driver signature enforcement disabled before installing the drivers!
    7. Download and install DDU (Display Driver Uninstaller) (You may want to read the "Recommended Usage".)
    8. Reboot into safe mode.
      • Click on the Power Icon, either in the lock screen or in the Windows menu.
      • Hold down your left shift key while klicking on "Restart".
      • On the screen that follows, click on "Troubleshoot" -> "Advanced options" -> "Startup Settings" -> "Restart".
      • On the Startup Settings screen press 4 "Enable Safe Mode".
    9. Use DDU to uninstall any previous Nvidia/AMD driver you have from your previous card.
    10. Reboot into normal mode. If you haven't enabled TestMode, you have to boot again like into safe mode, but choose 7 "Disable driver signature enforcement" this time.
    11. In the folder where you unpacked the Dell driver package, open "Display.Driver\nvdm.inf" (I'd recommend notepad++).
    12. Substitute both SUBSYS entries for "DEV_13B6&SUBSYS_07b01028" with your subsystem ID like this:
      Code:
      Search      : DEV_13B6&SUBSYS_07B01028
      Replace with: DEV_13B6&SUBSYS_15CC1028
      Do not forget to change my "15CC" to your id if GPU-Z showed you a different one!
      (See my story about where I got these numbers.)
    13. Now you can save and close the file and run setup.exe in the parent folder. The drivers should cleanly install.
    14. (optional, unless you want HDMI) Repeat the same with the Nvidia Quadro Grid drivers.
      If you want to use your external HDMI port, see the HDMI paragraph below about what to add to nvdmwi.inf to use it, before trying anything!
      • Here the file to change is "Display.Driver\nvdmwi.inf"
      • You have to search&replace the string "DEV_13B6&SUBSYS_07BF1028".
      • run setup.exe in the parent folder. The drivers should cleanly install.
    That's it. If you do not need to use your HDMI port, you are done. After a reboot your M1200 should be working just fine!

    === Enabling your HDMI port ===

    Unfortunately the driver information section that we have to use is for setups that do not have an external HDMI port. Therefore HDMI install isn't triggered.

    To get HDMI working, there are two more changes to Display.Driver\nvdmwi.inf, meaning you have to install the official Nvidia Quadro drivers, not the Dell variant.
    But before doing this, connect your HDMI display, turn it on, and reboot. Select HDMI input on your display first, if you can choose manually.

    When you look at the entries we have edited, they mention which sections they use. Currently these are [Section149] and [Section150].
    In these there are lines like AddReg = nv_miscBase_addreg__xx. Currently they list the numbers 96 and 97.
    I doubt this will ever change, but if it does, you now know where to look if things stop working.

    Edit: The following sections have changed from driver version 431 onwards. Previously those where sections nv_miscBase_addreg__96 and nv_miscBase_addreg__97. You can easily tell by checking the line "HKR,,EnableCoprocPowerControl...", it is missing in the wrong section.
    1. Find [nv_miscBase_addreg__50] and add the line marked with a plus:
      (do not add the '+'! It is just here to mark the line!)
      HKR,,EnableCoprocPowerControl,%REG_DWORD%,0x0
      +HKR,,HDMI_3DCtrl,%REG_DWORD%,0x1
      HKR,,ModesetBlankDelay,%REG_DWORD%,1
    2. Find [nv_miscBase_addreg__55] and add the line marked with a plus:
      (do not add the '+'! It is just here to mark the line!)
      HKR,,EnableCoprocPowerControl,%REG_DWORD%,0x0
      +HKR,,HDMI_3DCtrl,%REG_DWORD%,0x1
      HKR,,ModesetBlankDelay,%REG_DWORD%,1
    If you now install the Nvidia Drivers, you will notice in expert mode, that it wants to add HDMI Sound Drivers. That's what we want!
    • You have to activate the display by pressing "Windows+P" and selecting "Duplicate" or "Extend".
    • I do not know whether this is important, but I activated the Dock Display Port for Post in the BIOS settings. I guess it doesn't matter. But if you can not see a second display in your display settings after a reboot, this might be worth a try.
    • If you want to start full screen programs (like games) on you external monitor, you have to make it your primary display in the windows display settings.
    Have fun!
     
    Last edited: Jul 31, 2019
    Ian Munro likes this.
  2. Samuel Tan

    Samuel Tan Newbie

    Reputations:
    0
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    5
    Thank you. I confirm successfully installing Quadro m4000m in Dell M6800, using your method above.
    I had to cut away a small part of the nvidia heatsink to fit the quadro M4000M. I used the Nvidia official drivers. I see many inf files nvmiwi.inf, nvltwi.inf, nvdmwi.inf, and nvblwi.inf, so i changed all! In addition, there are two entries in the inf every instance. The first is always for the optimus-disabled, and the 2nd is with optimus-enabled.

    Eg, you'll see this entry

    %NVIDIA_DEV.13F9.06DA.1028% = Section250, PCI\VEN_10DE&DEV_13F9&SUBSYS_06DA1028 (this is for optimus-disabled)
    %NVIDIA_DEV.13F9.16DA.1028% = Section254, PCI\VEN_10DE&DEV_13F9&SUBSYS_16DA1028 (this is for optimus-enabled)

    You'll find a new hardware ID when you disable optimus in the bios.
    My current unresolved issues are: PhysX is shown to be absent from my M4000M in TechPowerUp GPU-Z.
    Also with optimus-enabled, I could only force gpu usage by shutting off the laptop monitor and enabling only an attached external display. For that reason, I tried disabling optimus and learned about the different hardware ID for the GPU in optimus-disabled state.
    The GPU performance trounces the original K3100M, so the original objective is achieved.

    Update: i just solved the optimus-switching problem for external monitor. By setting my external monitor (displayport) as main display, the M4000M is now used for 3D.
     
    Last edited: Aug 10, 2018
  3. Aaron44126

    Aaron44126 Notebook Prophet

    Reputations:
    874
    Messages:
    5,544
    Likes Received:
    2,050
    Trophy Points:
    331
    It should be sufficient to just change nvdmwi.inf ("D" is for "Dell" here).
     
  4. tomle 64

    tomle 64 Newbie

    Reputations:
    0
    Messages:
    5
    Likes Received:
    0
    Trophy Points:
    5
    I just upgraded my m4800 to the m1200 and it works with the laptop screen, but now I cannot get any video outs. It started doing this after I upgraded it. I have tried the displayport, hdmi, and vga to no avail. I did update the system bios to a25. I used the dell vbios you posted to flash the card. Not sure what I did wrong, and it sucks that I cant use it to plug in my tv or my monitors to do work or play games on it. I tried turning off optimus in bios, but then I couldn't get any signal out. It works perfectly otherwise.
     
  5. Yamakuzure

    Yamakuzure Notebook Enthusiast

    Reputations:
    12
    Messages:
    12
    Likes Received:
    5
    Trophy Points:
    6
    Hmmm.. I have a Monitor with HDMI cable, but never had the time to try it out.

    I know that there is some trickery needed when you use Linux, like using a virtual intel driver or something like that?
    Lmgtfy...
    Ah, here it is:
    https://unix.stackexchange.com/ques...e-hdmi-on-a-laptop-that-has-optimus-bumblebee

    For Windows I have not found anything interesting, only that one user had a problem connecting their zBook (with M1200) via HDMI, too:
    https://h30434.www3.hp.com/t5/Noteb...al-monitors-via-HDMI-with-Nvidia/td-p/6577436
    Unfortunately there aren't any answers.
     
  6. mikhailk

    mikhailk Notebook Guru

    Reputations:
    0
    Messages:
    70
    Likes Received:
    1
    Trophy Points:
    16
    You should be able to switch graphics from internal display to external port using Fn+F8 keys right at the BIOS stage, prior to booting into OS. At least that's what I can do on my M4800 with W10: switching to HDMI (from 4k internal to low res; I'm on stock K2100M though).
     
  7. tomle 64

    tomle 64 Newbie

    Reputations:
    0
    Messages:
    5
    Likes Received:
    0
    Trophy Points:
    5
    I have been able to get VGA to work now through messing with my Intel drivers. But I want to use this laptop for work now as a replacement for my desktop and use a dock. I was wondering if I had a wrong vbios, because my card is a 2gb card and not a 4gb card. I still have my k1100m to put in, I really do not want to however.
     
  8. Yamakuzure

    Yamakuzure Notebook Enthusiast

    Reputations:
    12
    Messages:
    12
    Likes Received:
    5
    Trophy Points:
    6
    I am very sorry that this took so long!
    But at least I am writing this with the browser window on my external monitor, connected via HDMI.

    I will edit the following into my original post to add to the HowTo.

    --------

    Unfortunately the driver information section that we have to use is for setups that do not have an external HDMI port. Therefore HDMI install isn't triggered.

    To get HDMI working there are two more changes to Display.Driver\nvdmwi.inf:

    When you look at the entries we have edited, they mention which sections they use. Currently these are Section149 and Section150.
    In these there are references to nv_miscBase_addreg. Currently they list the numbers 96 and 97.
    I doubt this will ever change, but if it does, you now know where to look if things stop working.

    1. Find nv_miscBase_addreg__96 and add the line marked with a plus:
      (do not add the '+'! It is just here to mark the line!)
      HKR,,EnableCoprocPowerControl,%REG_DWORD%,0x0
      +HKR,,HDMI_3DCtrl,%REG_DWORD%,0x1
      HKR,,ModesetBlankDelay,%REG_DWORD%,1
    2. Find nv_miscBase_addreg__97 and add the line marked with a plus:
      (do not add the '+'! It is just here to mark the line!)
      HKR,,EnableCoprocPowerControl,%REG_DWORD%,0x0
      +HKR,,HDMI_3DCtrl,%REG_DWORD%,0x1
      HKR,,ModesetBlankDelay,%REG_DWORD%,1
    If you now install the Nvidia Drivers, you will notice in expert mode, that it wants to add HDMI Sound Drivers. That's what we want!
    • You have to activate the display by pressing "Windows+P" and selecting "Duplicate" or "Extend".
    • I do not know whether this is important, but I activated the Dock Display Port for Post in the BIOS settings. I guess it doesn't matter. But if you can not see a second display in your display settings after a reboot, this might be worth a try.
    • If you want to start full screen programs (like games) on you external monitor, you have to make it your primary display in the windows display settings.
    --------

    Have fun!
     
    Last edited: Feb 9, 2019
  9. Yamakuzure

    Yamakuzure Notebook Enthusiast

    Reputations:
    12
    Messages:
    12
    Likes Received:
    5
    Trophy Points:
    6
    AFAIK there is no 2GB M1200. So if you can only use 2GB, you have the wrong vbios.
     
  10. tomle 64

    tomle 64 Newbie

    Reputations:
    0
    Messages:
    5
    Likes Received:
    0
    Trophy Points:
    5
    No prob, I'm just glad you were able to get hdmi working.

    I don't think I'm editing the correct parts in the hdmi section. Would it be possible to give screen shots of the sections you edited.

    there is two sections for each of nv_misc

    one that is the addreg = and the other is a header for the section that I think that i am supposed to be editing. I've added and replaced (when mentioned) sections to no avail.

    There def is no 2gb m1200, in my attempts to get my card to display to hdmi I flashed the card and it saw the 4096 mb of vram
     
Loading...

Share This Page