EFI Firmware Surgery
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?
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.
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.
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. :(
Originally Posted by grumpy
I wish that there was some sort of service that would allow you to rent a board for a few days to test things.