bignon wrote:I working at a investigation department at a Spanish university they are working with a new kind of NIC that connects directly to the HTX slot on their Supermicro mobo (H8QME-2+). Unfortunately, for the test they want to do, the card has to be memory mapped but right now the BIOS (AMI) set the card Port mapped.
Ah, the nice stuff you see in high performance computing. Infinipath or 10GbE?
bignon wrote:
They give me the source code of the BIOS (of course not without signing a NDA)
If you already signed the NDA for the BIOS code, you're burned and I don't know anybody on my contact list who can help you with the BIOS code. Sorry. Please read on anyway.
There is a HyperTransport Center of Excellence team at the University of Heidelberg who have been dealing with such stuff (and way more complicated issues). AFAIK they are using coreboot to initialize their boards because it supports having a FPGA in one CPU socket on dual-socket boards and other funnies you can do on boards with HT. And IIRC they are using HTX NICs as well.
Your problem is that the BIOS NDA means you will have to tread _very_ carefully if you work with any opensource BIOS replacement (the original BIOS vendor usually has pretty draconian NDAs). On the other hand, integrating any working code from opensource BIOS alternatives into your original BIOS (closed source) will be a licensing violation.
Your choices, as I see them, are:
- Find someone who did not sign the NDA and have him/her look at opensource BIOS alternatives.
- If you didn't sign the NDA yet, look at opensource BIOS alternatives yourself (coreboot might be an option, it seems to support boards very similar to yours).
- Pay someone a few ten thousand dollars to fix your problem with the BIOS code (BIOS codebases are horrible to look at and fixing them is not easy, plus there are not so many BIOS programmers out there who will work for cheap).
- Pay someone (or bribe with free hardware) to add support for your board in coreboot (the code is pretty readable, and some coreboot developers have rather affordable rates).
- Pay someone to add support for your board/chipset in another free BIOS alternative (no idea if any besides coreboot exist for your chipset/CPU).
Good luck! Firmware hacking is fun (if you have docs).
Disclaimer: I am an x86 firmware developer, but I do not offer any services and I do not have any financial interest in any of the solutions that would apply for you. I am not affiliated in any way with the HyperTransport Center of Excellence. (This disclaimer is brought to you by the fear of this post being labeled as spam.)