Embedded Intel Atom® Processors
Technological Conversations about Intel Atom® Hardware, Software, Firmware, Graphics

Usage of iegdtsr.exe

idata
Employee
4,209 Views

Hello,

I have a question about iegdtsr.exe created by CED. How should I use iegdtsr.exe?

Please let me explain more detail.

Now I try to create Video BIOS for the 965GME platform using IEGD 10.1 CED. The resolution of the LCD panel is XGA, and the physical size is 15inch. After the input of all parameters of LCD panel to IEGD 10.1 CED, I have done "generate installation". As iegdtsr.exe & VGA.BIN are created, I have run iegdtsr.exe on MS-DOS. But after it was changed to the high resolution for a second, it was returned to VGA. The color of whole screen was changed to blue...

Is this a usual? If so, how should I test VBIOS using iegdtsr.exe?

I am new for VBIOS. Sorry for the basic question.

Thank you for your cooperation.

0 Kudos
1 Solution
Kirk_B_Intel
Employee
2,154 Views

The TSR file that created is as the name implies a DOS terminate and stay resident version of the VBIOS to use for troubleshooting. It does not necessarily do a FULL initialization of the graphics (as the graphics were already brought up by the system VBIOS or EFI Video Driver). It will hook all Int10h DOS VIBIOS/VESA calls and service them once it is running.

It is really not designed to put DOS into a high res mode, but it should cause the LVDS to put out proper video (and likely upscaled to the higher resolution of the panel from the lower resolution dos modes like typical mode 3). After enabling the TSR are you getting proper video on the LVDS pnael? If so, have you tried using a mode set to pick a higher resolution DOS mode?

You really should burn the VGA.BIN into your system BIOS to see if you have it right. Make sure you have set "Fixed TIming" for the LVDS and be sure you have another port listed in the port order (like a VGA or SDVO device) just in case you do not have the right LVDS display timing.

Hope this helps.

View solution in original post

0 Kudos
25 Replies
Kirk_B_Intel
Employee
2,155 Views

The TSR file that created is as the name implies a DOS terminate and stay resident version of the VBIOS to use for troubleshooting. It does not necessarily do a FULL initialization of the graphics (as the graphics were already brought up by the system VBIOS or EFI Video Driver). It will hook all Int10h DOS VIBIOS/VESA calls and service them once it is running.

It is really not designed to put DOS into a high res mode, but it should cause the LVDS to put out proper video (and likely upscaled to the higher resolution of the panel from the lower resolution dos modes like typical mode 3). After enabling the TSR are you getting proper video on the LVDS pnael? If so, have you tried using a mode set to pick a higher resolution DOS mode?

You really should burn the VGA.BIN into your system BIOS to see if you have it right. Make sure you have set "Fixed TIming" for the LVDS and be sure you have another port listed in the port order (like a VGA or SDVO device) just in case you do not have the right LVDS display timing.

Hope this helps.

0 Kudos
idata
Employee
1,892 Views

Your information is very helpful. I have confirmed that Int10h DOS VBIOS/VESA calls and services works fine after launching iegdtsr.exe on DOS. I am now working to burn the VGA.BIN into our system BIOS. Its VBIOS have, as you have pointed out, another port setting other than LVDS.

Thank you for your information!

0 Kudos
GGong2
Beginner
1,892 Views

I'm working on a similar LVDS problem. I've got a nicely working iedstr.exe, but now I need to "burn" it in.

Any idea how to merge the vga.bin into an BIOS file made by the Intel Integrator Toolkit? Or maybe flash the vga.bin directly into the BIOS? I'm working with the Intel board D945GSEJT

0 Kudos
PMoer
Beginner
1,892 Views

I'm working w/ the exact same board and trying to merge the VGA.BIN as well. If you find a solution, please post. I'll do the same.

0 Kudos
Kirk_B_Intel
Employee
1,892 Views

If you are creating a VBIOS for your platform, it is assumed that you have a good relationship with your BIOS provider. They usually can provide tools to do the merge and it is different for each TYPE of BIOS (EFI or Legacy) and for each BIOS provider (AMI, Phoenix, etc.).

Something to keep in mind if you are replacing an existing GMA type VBIOS you need to be aware that:

1. The IEGD VBIOS only works with the IEGD driver. Yes, the IEGD works with either an IEGD or GMA VBIOS by design. The IEGD VBIOS does NOT attempt to emulate the restrictive GMA configuration procedure as embedded customers need a lot more flexibility than a notebook or desktop type application requires.

2. For legacy BIOS situations, you need to be aware that the IEGD VBIOS is 64KB in size not 48KB as is typical for GMA VBIOS and if there is not space in the BIOS image for the larger size, it will not fit without getting a different BIOS.

Hope this helps.

0 Kudos
GGong2
Beginner
1,892 Views

So I'm using an Intel BIOS. Who should I talk to?

My main goal is to flash to an IEGD saved configuration so the LVDS port is initialized first so that I can see the POST screen and any status or errors while its booting. I'm fine once the real operating system takes over.

0 Kudos
PMoer
Beginner
1,892 Views

I'm using the Intel BIOS as well. I've installed the integrator toolkit and successfully created a new .BIO file, but still no idea how to merge the VGA.BIN created by the IEGD config editor.

0 Kudos
Kirk_B_Intel
Employee
1,892 Views

There is a big difference between a BIOS provided by Intel for a particular CRB or commercial board (a BIOS update), and a BIOS your company would contract with a BIOS vendor to provide with a board you are making. The IEGD VBIOS is targeted for the later where you have a relationship with a BIOS vendor for a board you are making. In that case, you can get the tools needed to make major changes like changing out the VBIOS. The BIOS used on Intel motherboards is provided to you the same way YOU would provide a BIOS update to your customer buying your board- it is highly unlikely you would allow that sort of change made to the product you need to support.

So if you are an OEM, you should have these capabilites and are who should be using the IEGD VBIOS.

BTW: for most of the CRBs that we use to develop the graphics driver/VBIOS, we use an Intel tweaked AMI based BIOS and thus use the AMI merge tools to accomplish what you want to do. I do not know what your board uses (could be AMI, or could be Phoenix as we tend to use a Phoenix base for desktop boards)

0 Kudos
PMoer
Beginner
1,892 Views

Hey Grant,

I found this link to a bunch of the AMI tools... http://www.rebios.net/biosfile/tool_8_RC1.rar http://www.rebios.net/biosfile/tool_8_RC1.rar" rel="nofollow" target="_blank">http://www.rebios.net/biosfile/tool_8_RC1.rar

I haven't tried any of them yet, but I'd thought I'd let you be trying them as well.

0 Kudos
PMoer
Beginner
1,892 Views

Ok,

The Intel BIOS for this board is AMI based. But none of the AMI tools work with an Intel BIOS file. First, the extension is .BIO for Intel BIOS files and AMI tools are expecting .ROM files. So, after renaming, the tools then refuse to run on them because they are the wrong size.

FATAL ERROR: The ROM file is not of proper size.

Why can't Intel (the BIOS provider) provide the tool to insert the VGA.BIN file into their custom BIOS that their product (IEGD) creates?

0 Kudos
GGong2
Beginner
1,892 Views

Hi Phil,

I think your on the right track... I'm not 100\% sure the board is AMI or Phoenix yet. But I'm pretty sure we'll need the version of tools that support UEFI (there's EFI strings all around the iTools .BIO files). AMI has one called Aptio, but I'm not sure how to try it out yet.

0 Kudos
Kirk_B_Intel
Employee
1,892 Views

If you are not creating your own board and therefore do not have a relationship with a BIOS vendor (Intel is NOT a BIOS provider- AMI, Phoenix, etc are BIOS providers), then you should not be using the IEGD driver as it is for use by qualified OEMS only.

We provide BIOS updates for the boards that we sell, not for you to OEM into a product that you resell.

Like other board providers like Asus. Gigabyte, Portwell, etc, we do not provide users any ability to screw with critical system settings.

However, as a component provider to OEMS that take our chips and build their own products, we DO provide the ability to customize the raw drivers (and VBIOS) assuming as an OEM you will have the ability to continue on to make a product using our chips in your end product.

That is the difference here.

Sorry that does not make you happy, but that is how the market works.

0 Kudos
PMoer
Beginner
1,892 Views

Well, we've got 1200 of these D945GSEJT and we're looking to order about 1500 per month indefinitely... but we have to solve this video driver issue first.We're ordering the boards from ARROW electronics and they're coming w/ the original BIOS that Intel installs on the system. So, Intel *is* the BIOS provider.

Can you just tell me what offset the VGA.BIN starts in the JT0040.BIO file? I can overwrite it myself if I knew that.

Thanks.

0 Kudos
BRich9
Novice
1,892 Views

Hey Phil, it's Brian Richardson from AMI. I might be able to help you understand the "tools versus BIOS" issue a bit better. The process is probably the same for the other BIOS vendors in the Embedded Alliance.

When a board vendor works with AMI on a BIOS, we typically provide them with a "development kit" to generate a custom BIOS for the platform. This consists of a development environment, documentation, training, source code and binary libraries. Then the board vendor creates the binary BIOS image for their platform (adding any value or secret sauce they want along the way).

AMI does offer tools that help distributors modify binary images provided by the board manufacturers. There's a set of tools compatible with AMIBIOS8 (our legacy solution) and Aptio (our UEFI solution). The tools are different due to changes in the ROM format. Trying to modify the binary directly with an off-the-shelf editor will alter checksums the BIOS uses to verify integrity, and that can lead to profanity-generating moments of computer science.

There are cases where changes made by the board vendor will prevent our tools from working. Some of their "secret sauce" may alter the ROM format (signatures, proprietary ROM flash tools, etc.).

The board vendors don't typically distribute ROM modification utilities, so you can work with AMI to get the right utility. You can contact me at brianr@ami.com if you need more information.

0 Kudos
Kirk_B_Intel
Employee
1,892 Views

So THAT is one of the correct ways to get access to the tools via the BIOS provider.

As our AMI friend indicates, Intel is not the BIOS provider, although we do have a license for a pass-through of the BIOS binary for particular boards and we do provide those pass-through binary updates. We do not have the rights to provide the BIOS manipulation tools (AMI provides those in this case) so that is why I was pointing you to a BIOS provider (Thanks Brian for stepping in!). I believe this sounds like an AMI Aptio UEFI BIOS solution and internally we use the generic Aptio tool to manipulate our BIOS images so the same should work for this case.

0 Kudos
BRich9
Novice
1,892 Views

Just to make Kirk's point about a "BIOS Provider" a little clearer ...

AMI provides the core BIOS technology to the board manufacturer.

The board manufacturer provides the shipping BIOS for that specific board.

So in this case Intel isn't producing the core BIOS, but they do supply the BIOS ROM image that ships on the platform. Since AMI supplies the core BIOS technology, we have the tools necessary to manipulate the BIOS image.

0 Kudos
FMcNu1
Valued Contributor I
1,892 Views

It seems to me this is converging on a solution ?

Thanks Kirk and Brian for providing the direction.

Phil - what's your take? Have you connected with AMI? Please give us some feedback on your progress.

Thanks

Felix

0 Kudos
PMoer
Beginner
1,892 Views

I have made contact with AMI. They downloaded the JT0040.BIO file and attempted to use their tool (MMTOOL), but it failed to work. The engineer I am working with explained that since Intel is using the source code to build the BIOS and is digitally signed by Intel at build time, they don't need MMTOOL to manipulate the image.

He also said that altering the VGA.BIN and swapping it out is pretty common for a lot of embedded customers. This particular board was designed to be exactly that, but Intel (or their ODM partner) didn't consider this when designing the BIOS.

If we could get a copy of the BIOS that wasn't signed or altered this way, AMI would be able to provide a tool to meet this need. So, he pointed us back to Intel.

0 Kudos
FMcNu1
Valued Contributor I
1,892 Views

Hi Phil

I am told that we have some folks at Intel looking into what can be done for you.

In the meantime, let me comment on the use of D945GSEJT in embedded applications. Actually Intel does NOT target the embedded market with this board. It is marketed as an "as-is" platform for "standard PC" applications- not the embedded space where varying degrees of customization are typically required. The same applies to all of Intel's motherboards listed at http://www.intel.com/products/motherboard/index.htm. http://www.intel.com/products/motherboard/index.htm." target="_blank" rel="nofollow">http://www.intel.com/products/motherboard/index.htm. So the lack of customization options is really by design rather than omission. That's basically the situation you've bumped up against here.

You should also know that these motherboard products have life-cycles that parallel the consumer PC market. This means you won't find the extended life support / supply that many embedded customers require (often 5-7 years) and you may find yourself having to move to newer boards more frequently than you'd like. Not too cool if you have to re-do your customization each time.

With the exception of development kits, reference designs, and the like, Intel's Embedded Computing Group (ECG) does not typically provide production boards to the embedded market. For boards, ECG works closely with third party companies within its ecosystem, known as the Intel Embedded Alliance. There are several board companies in the Alliance that offer a wide selection of form factors and configurations. including Atom mini-ITX like the D945GSEJT. These companies are focused on embedded applications and are equipped to support customized hardware and software. Some will integrate / manufacture your final product for you.

You might want to check out the solutions directory where you will find boards, software, tools, services, and all things Intel embedded: http://intelcommsalliance.com/kshowcase http://intelcommsalliance.com/kshowcase" target="_self" rel="nofollow">http://intelcommsalliance.com/kshowcase

I hope this helps.

Felix

0 Kudos
Kirk_B_Intel
Employee
1,737 Views

Felix- thanks for providing that information- I was not aware of that list of more consumer oriented boards nor that one is in play here. You are right on in your description of the situation. The Intel embedded team does not have any ability to get the board guys to change their POR and make a special BIOS image available for the board. I have no idea where to even ask even if there was a chance we could get something like this done.

Phil- if you are getting those boards in large volume, maybe you can work back through your source to try to get that custom BIOS for the board, but we here in the EDC are not going to be any help for that effort. Maybe going to an Alliance member for a silimar board would be a better approach?

Kirk

0 Kudos
Reply