Thread: EFI Firmware Surgery

  1. #1
    Registered /usr
    Join Date
    Aug 2001
    Location
    Newport, South Wales, UK
    Posts
    1,273

    Question EFI Firmware Surgery

    Hello,

    I have a quandry that I would like wider assistance to resolve:-
    Last week I replaced my old mini-ITX motherboard, based on an Intel Atom N270, with a newer board based on an AMD C60.

    The power usage works out slightly lower, and I now have CPU virtualization available. However, after testing with the Xen Community Platform I found that a very useful feature for use with VMs, I/O Virtualization (IOMMU), was not available.

    With investigation, I have determined that this feature is enabled through the presence of the "DMAR" table in ACPI. Now, I have too much of my life left to live to mess with ACPI, but apparently this is controlled by the UEFI firmware.

    There is no option for IOMMU in my board firmware's setup. However, I have read up on a board from a different manufacturer which apparently does provide this feature. Both firmwares are AMI Aptio based. They are different sizes however: my board has a 32Mb flash (4 MB), the other board has half that.

    UEFI firmwares consist of different modules, so the question is, what chance have I got to obtain IOMMU by swapping one or more modules? Given near identical hardware, would this be dangerous?

  2. #2
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    I'm not familiar with EFI, but swapping firmware, even on just different hardware revisions of the same product, is generally a very bad idea.

    Some people do it with video cards, etc, and end up with still working cards, but that's the exception, not the rule.

    For example, there may be a table in the firmware that maps general purpose IOs of the southbridge chip to actually connected peripherals, and that would probably have to be different.

    Why not hack the Linux kernel? You are using an open source operating system. Take advantage of it! I imagine it wouldn't be too difficult - just finding where it does the check, and override it to always return true.

  3. #3
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,659
    Personally, I would be tempted to send the board back to the supplier and ask them to supply a board with the features you require.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  4. #4
    Registered User
    Join Date
    Jun 2005
    Posts
    6,815
    Personally, I would have done my homework before buying the board, so I knew it had the features I required when I bought.
    Right 98% of the time, and don't care about the other 3%.

    If I seem grumpy or unhelpful in reply to you, or tell you you need to demonstrate more effort before you can expect help, it is likely you deserve it. Suck it up, Buttercup, and read this, this, and this before posting again.

  5. #5
    Registered /usr
    Join Date
    Aug 2001
    Location
    Newport, South Wales, UK
    Posts
    1,273
    Quote Originally Posted by grumpy View Post
    Personally, I would have done my homework before buying the board, so I knew it had the features I required when I bought.
    Hindsight is indeed a beautiful mistress, but I simply didn't know I would need it until I tried using that feature with this motherboard.

    I wish that there was some sort of service that would allow you to rent a board for a few days to test things.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Help!! Due Today!! Family Surgery Prevented me from doing HW
    By Die The Villain in forum C Programming
    Replies: 12
    Last Post: 02-17-2011, 12:30 PM
  2. First try to firmware modelling - C
    By willyp in forum C Programming
    Replies: 0
    Last Post: 11-29-2009, 03:32 PM
  3. Extract firmware from printer.
    By Loic in forum A Brief History of Cprogramming.com
    Replies: 6
    Last Post: 01-17-2008, 11:14 AM
  4. Doing surgery on my laptop
    By jverkoey in forum A Brief History of Cprogramming.com
    Replies: 4
    Last Post: 07-22-2004, 05:09 PM