VOGONS


GPU Emulation

Topic actions

Reply 20 of 31, by kmeaw

User metadata
Rank Member
Rank
Member
themrviper wrote on 2024-09-12, 00:06:

So like, not looking on where this opROM is, if my BIOS checks for C0000, and i use sgabios it can not work cause C0000 is empty? Or it will write itself there if i dont have GPU?

I don't know if there is a way to force CsmCore to deploy an embedded option rom to a specific location. There sure is a way for Award Modular BIOS but I don't know how to do it on a modern system.
Probably CSM will just pick a first free segment large enough to fit the oprom - it it is the case then you could influence it by adding some padding blocks to sgabios.

sgabios does not relocate itself - it just works in whatever segment it has been loaded. If the segment is C000 it assumes that it is the only "GPU" in the system. If it is not then it will chain the API calls to whatever has hooked int10h before.

themrviper wrote on 2024-09-12, 00:06:

How hard simple things is actually.... Build own or use custom - require research & tons of time.
Simplest way to try embed it in bios, i found some editors that show more than 8 opROMs, will try with them tomorrow.

I have also contacted Biostar, but they are so long in answer, and im not sure that they will help me, its worked only once with MSI (for other guy)

Maybe an M.2 GPU would work for you? https://www.asrockrack.com/general/productdet … sp?Model=M2_VGA

Reply 21 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie
kmeaw wrote on 2024-09-11, 23:40:

Oh, so you don't actually have a requirement to emulate a GPU. That opens more possibilities - you can use a really small GPU like miniPCIe. Or you can pull out PCIe signals using a riser card /cable and move your GPU somewhere else where you won't be limited by size.

I have seen this m2 gpu, sadly board have only one m2 slot and it used for nvme. I actually dont want use GPU at all cause of power consumption, for 10 boards it will be much in long term.

kmeaw wrote on 2024-09-11, 23:40:

If the GPUs oprom flash chip has enough free space, you could fit a hybrid CSM+UEFI implementation there. I have reflashed once an NVIDIA card to add UEFI GOP to let me disable CSM.

I dont need update it, not working - its ok. What is interesting here, i dont see splash screen, or if i press Del to enter bios - i dont see it. But if i load pc, and do nothing during boot, its actually boots, and i see linux console. This mens MB identify GPU at some very basic level, but its not working with it until OS is loaded. That why i thought to make dummy GPU.

kmeaw wrote on 2024-09-11, 23:40:

Usually you can't just take another board's BIOS and flash it - modern CPU and PCH have a lot of multiplexed pins that require configuration that is bound to a specific board design, like which GPIO is connected to power/reset buttons and leds, how are PCIe slots connected, the intiial power up sequence, there is a lot of variety. However UEFI is very modular - with the help of such tools as UEFITool and utk you can mix and match them.

Ok skip that bad idea.

kmeaw wrote on 2024-09-11, 23:40:

UEFI also has a standard way of representing the user interface and storing the setup settings - search for "IFR" and "HII". Most manufactures just take the generic UEFI implementation for the platform and add their own UEFI applications and update the forms to hide various menu items. See https://github.com/BoringBoredom/UEFI-Editor for more details. Your current configuration is just stored in a UEFI variable called "Setup" - you just need to know the correct offset in this variable to update which you can find out using tools like IFRExtractor-RS.

I tried this editor, to find maybe some options is hidden, and they are not. all what i see in bios is in that editor, and no more.
I have checked with this editor my BIOS, for text like - headless, vga detection no luck
I have checked MSI BIOS - and vga detection is there

Maybe its some, you saying, module? and i can move it from MSI BIOS to my own(I mean that VGA Detection option)? cause they are both are AMI Aptio 5, just different looking.

Reply 23 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie
darry wrote on 2024-09-12, 22:49:

Look very interesting to be honest.
Does it has way to load this efi driver on boot without user?
Also it uses usb 3.0, im thinkin on, what if take some esp32-s3 with onboard usb, make is as usb monitor, and make it act as kvm, what you think?

Reply 24 of 31, by darry

User metadata
Rank l33t++
Rank
l33t++
themrviper wrote on 2024-09-12, 23:30:
Look very interesting to be honest. Does it has way to load this efi driver on boot without user? Also it uses usb 3.0, im thi […]
Show full quote
darry wrote on 2024-09-12, 22:49:

Look very interesting to be honest.
Does it has way to load this efi driver on boot without user?
Also it uses usb 3.0, im thinkin on, what if take some esp32-s3 with onboard usb, make is as usb monitor, and make it act as kvm, what you think?

I don't have one of those, I just remembered they exist. I had initially heard of them when I was looking for a USB graphics adapter to add another monitor to a Linux based notebook. I settled for a model that does not support the UEFI functionality, as I did not need that.

Programming a an ESP-32 variant to simulate a USB graphics adapter and implementing a UEFI level graphics feels like it would be quite complex, though, TBH, I have not really looked at whether someone might have implemented the harder parts already.

Reply 25 of 31, by darry

User metadata
Rank l33t++
Rank
l33t++

I hate to be the one to say this, but if you need a solution for 10 motherboards, it might be easier and less expensive to buy 10 motherboards that do support headless operation and then sell the ones you already have.

That being said, I hope you do find an even simpler and less expensive solution.

Reply 26 of 31, by jtchip

User metadata
Rank Member
Rank
Member
themrviper wrote on 2024-09-11, 17:16:

Im using pretty new board Biostar B650MT, and using linux (ubuntu).

Which CPU are you using? All socket AM5 CPUs include a 2 CU Radeon RDNA2 IGP, apart from the F suffix variants that have the IGP disabled. If it's simply complaining about a monitor not being connected, there are HDMI dummy plugs to solve that.

Edit: Just noticed you mentioned the CPU does not have an integrated GPU, it might just be easier to get ones that do have the IGP.

Last edited by jtchip on 2024-09-13, 01:10. Edited 1 time in total.

Reply 27 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie
darry wrote on 2024-09-13, 00:44:

I hate to be the one to say this, but if you need a solution for 10 motherboards, it might be easier and less expensive to buy 10 motherboards that do support headless operation and then sell the ones you already have.

That being said, I hope you do find an even simpler and less expensive solution.

It seems to be happen, worst side, is same price MB are worth than Biostar, and better MBs is 1.5x price, for now only MSI support headless.

But any way, its really good expirience, to make something like that, i mean, PCIe extension, or patch BIOS, or even full KVM

Reply 28 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie
jtchip wrote on 2024-09-13, 01:08:
themrviper wrote on 2024-09-11, 17:16:

Im using pretty new board Biostar B650MT, and using linux (ubuntu).

Which CPU are you using? All socket AM5 CPUs include a 2 CU Radeon RDNA2 IGP, apart from the F suffix variants that have the IGP disabled. If it's simply complaining about a monitor not being connected, there are HDMI dummy plugs to solve that.

Im using exact 7500F, cause of cost per mhz

Reply 29 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie
jtchip wrote on 2024-09-13, 01:08:

Edit: Just noticed you mentioned the CPU does not have an integrated GPU, it might just be easier to get ones that do have the IGP.

Price on that is 1.5x i can take 7500f for 100$, while 7600 is around 160$. My full set cost 100(CPU)+25(Cooler)+200(RAM)+(50 NVME)+70(MB) = ~450$ pretty cheap, for 5.1mhz per core

Reply 30 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie

So, first of all, i decided to change MB, but later, Biostar answered me, that they will add Headless mode to their AM5 motherboards. Thread can be closed, all thanks for help.

Reply 31 of 31, by themrviper

User metadata
Rank Newbie
Rank
Newbie

Im back with some new workarounds

1. Biostar didnt added anything, they just said yes, and that it.
2. I found some ASM1061 PCie -> sata, which has external 64kb flash for option rom, and im thinking to buy one
3. I also checked Display Link, look very interesting

I tried to patch bios, no luck soft is not working with this new am5 bios
Im still looking for solution. Here some fresh questions:

I saw that sgabios is also in linux repos, and can be installed by command `apt-get install sgabios` what is this for? Will it actually work that way? if i just install it? for me it seems like not, cause it will be on system, not available during boot post check
I saw this Display Link, there are Gop driver which needs to be loaded, can it actually be a case? if i some how load its driver, and put dummy usb, with same Vendor/Product ID? To make system think its DisplayLink?

But the question is, how to load that efi driver??? Its actually main question. If i can load efi driver durint post, i can convert sgabios to new efi driver, and also load it.

ASM1061 looks very promising, simple flashing, desolder sata ports, and put it in m2, i will buy one, and check it.
I might be wrong everywhere, please correct me. Thank you