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

N270, 945GSE, IEGD, Windows 7, BSOD, iegd3dg3.dll

SKell4
Beginner
1,911 Views

We have a nagging BSOD problem on our custom SBC. We are running Windows Embedded Standard 7 SP1. It tends to happen occasionally on logoff/logon/restart but it's been known to happen at any time. I've tried IEGD 10.1, 10.3, 10.4.1. I've also tried the mobile Intel 945 express driver and that was more problematic. When using a standard VGA driver, the BSOD never occurs. The problem with that is that it doesn't support 3D rendering and we need that function. With regards to loading full up Windows 7, rather than the embedded version, we've done this but if you do it the old fashion way it will bluescreen on the install. You have to boot to safe mode at some point during the installation to actually load Windows.

So, since I have an official Intel Roe River development platform, I decided to load WES7 on that and see what happens. I have done this twice, the first time I never saw the BSOD. Left it running for a couple weeks. Last night I loaded a WES7 SP1 image from the DVD that comes with the Microsoft Image configuration editor tool. This is the simplest way to build a WES7 image and it's as complete an image as I know how. Anyways, the mobile intel 945 express driver is what gets installed by Windows by default. Today, I had a BSOD on an official Intel Roe River development platform. Unfortunately I didn't have the system recovery set to dump the kernel and I don't have that yet so I'm waiting for it to fail so I can analyze the kernel dump.

I have seen a couple threads on this forum that make it sound like Intel is looking into this. Has this problem been resolved? Is it an Intel problem or a Windows problem?

Thanks,

SDDOUBLEE

Below are a couple of analyzed minidumps from our custom SBC: I believe the first one is from a BSOD with IEGD 10.1, and I "think" the second one is with the 945 express driver.

 

Microsoft (R) Windows Debugger Version 6.11.0001.404 X86

 

Copyright (c) Microsoft Corporation. All rights reserved.

 

Loading Dump File [D:\cruzer backup 524012\031612-10218-01.dmp]

 

Mini Kernel Dump File: Only registers and stack trace are available

Symbol search path is: SRV*c:\symbols *http://msdl.microsoft.com/download/symbols http://msdl.microsoft.com/download/symbols

 

Executable search path is:

 

Windows 7 Kernel Version 7601 (Service Pack 1) MP (2 procs) Free x86 compatible

 

Product: WinNt, suite: TerminalServer EmbeddedNT SingleUserTS

 

Built by: 7601.17514.x86fre.win7sp1_rtm.101119-1850

 

Machine Name:

 

Kernel base = 0x82809000 PsLoadedModuleList = 0x82953850

 

Debug session time: Fri Mar 16 22:16:25.953 2012 (GMT-7)

 

System Uptime: 0 days 0:01:44.484

 

Loading Kernel Symbols

 

...............................................................

 

................................................................

 

..............

 

Loading User Symbols

 

Loading unloaded module list

 

.....

 

*******************************************************************************

 

* *

 

* Bugcheck Analysis *

 

* *

 

*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck A, {7500a8, 2, 1, 82c1e829}

Unable to load image \SystemRoot\System32\iegddis.dll, Win32 error 0n2

 

*** WARNING: Unable to verify timestamp for iegddis.dll

 

*** ERROR: Module load completed but symbols could not be loaded for iegddis.dll

 

Probably caused by : iegddis.dll ( iegddis+1d27 )

Followup: MachineOwner

 

---------

1: kd> !analyze -v

 

*******************************************************************************

 

* *

 

* Bugcheck Analysis *

 

* *

 

*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)

 

An attempt was made to access a pageable (or completely invalid) address at an

 

interrupt request level (IRQL) that is too high. This is usually

 

caused by drivers using improper addresses.

 

If a kernel debugger is available get the stack backtrace.

 

Arguments:

 

Arg1: 007500a8, memory referenced

 

Arg2: 00000002, IRQL

 

Arg3: 00000001, bitfield :

 

bit 0 : value 0 = read operation, 1 = write operation

 

bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)

 

Arg4: 82c1e829, address which referenced memory

Debugging Details:

 

------------------

 

WRITE_ADDRESS: GetPointerFromAddress: unable to read from 82973718

 

Unable to read MiSystemVaType memory at 829531a0

 

007500a8

CURRENT_IRQL: 2

FAULTING_IP:

 

hal!KeAcquireInStackQueuedSpinLockRaiseToSynch+19

 

82c1e829 8711 xchg edx,dword ptr [ecx]

CUSTOMER_CRASH_COUNT: 1

DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT

BUGCHECK_STR: 0xA

PROCESS_NAME: csrss.exe

TRAP_FRAME: 91ddf528 -- (.trap 0xffffffff91ddf528)

 

ErrCode = 00000002

 

eax=91ddf5c8 ebx=00000000 ecx=007500a8 edx=91ddf5c8 esi=00750074 edi=807c4120

 

eip=82c1e829 esp=91ddf59c ebp=91ddf5e0 iopl=0 nv up ei pl zr na pe nc

 

cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246

 

hal!KeAcquireInStackQueuedSpinLockRaiseToSynch+0x19:

 

82c1e829 8711 xchg edx,dword ptr [ecx] ds:0023:007500a8=????????

 

Resetting default scope

LAST_CONTROL_TRANSFER: from 82c1e829 to 8284a5cb

STACK_TEXT:

 

91ddf528 82c1e829 badb0d00 91ddf5c8 00650069 nt!KiTrap0E+0x2cf

 

91ddf598 8288a5cb ffb89008 00750074 ffb2d010 hal!KeAcquireInStackQueuedSpinLockRaiseToSynch+0x19

 

91ddf5e0 82893fe4 00750074 00000001 91ddf604 nt!ExAcquireResourceExclusiveLite+0xd4

 

91ddf5f0 8ffe2503 00750074 ffb8b218 8ffe3268 nt!ExEnterCriticalRegionAndAcquireResourceExclusive+0x1c

 

91ddf5fc 8ffe3268 91ddf694 8fe81d27 00750074 win32k!GreAcquireSemaphore+0x16

 

91ddf604 8fe81d27 00750074 ffb87008 00000900 win32k!EngAcquireSemaphore+0xd

 

WARNING: Stack unwind information not available. Fo...
0 Kudos
4 Replies
Kirk_B_Intel
Employee
847 Views

I've periodically seen that IRQ error with IEGD, but it was usually caused by a bad install of WIN7 / WES7. What I believe may be happening is that you are attempting to install the IEGD driver over the top of an exisiting GMA driver install. That rarely works out. I believe the GMA driver leaves some residual modules that do not interact well with IEGD. What you need to do is remove the GMA driver completely, reboot into VGA mode, DO NOT allow an auto install of the 945 driver, THEN use the IEGD SETUP to install. Unfortuantely in a development environment (installing multiple graphics driver over the top of others repeatedly) can get he registry twisted up to the point you just have to reinstall Windows to straighten it out (something I have done MANY times doing debug).

You should not see any sort of BSOD on install although you might get nagged about the EMGD driver not being WHQL (because we allow YOU to configure the driver and WHQL requires a static .INF file that we are letting you configure to your needs).

If you do see a BSOD upon install, then something whacky is really going on. I agree about that WES7 image being the most WIN7 compatible. IEGD does not need much in the terms of system libraries and functions but it is possible to try to strip out TOO MUCH thus rendering the graphics driver from functioning but that does not sound like the case here.

Something else to check either in your BIOS, or with your BIOS vendor woul dbe the size of your Graphics Aperature. For IEGD to operate it needs enough "room to stretch" to access the graphics memory. If your aperature is set too small, there may be a chance the driver is stepping outside of the aperature when accessing graphics memory triggering those unmapped memory areas. The User's Guide should talk about that and minimum requirements. As a try, you might crank that thing wide open and see if that changes anything.

One last thing is that IEGD is an XPDM driver- if you have anything that requires a WDDM graphics driver model features, then it just is not going to work. I understand things like RDP (remote desktop) do not like playing nice with XPDM graphics drivers.

Hope this helps.

SKell4
Beginner
847 Views

Kirk,

Thank you this was very helpful.

One question we have still is whether the N270/945GSE chipset can support a single 2GB RAM stick and be stable. We have been using both 1GB and 2GB and the question is if the 2GB RAM would possibly be less stable than 1GB. We've been using 2GB sticks because the performance is so much better.

I don't have a way to change the size of the graphics aperture in either the Roe River or our custom SBC BIOS. What I understand is that the aperture size is identical on both systems but I'm not sure how to determine that or where to look.

I also don't know how to prevent the auto installation of the 945 driver. I will ask a WES7 expert I know about that.

The only time I see a BSOD on installation of the OS is with full up Windows 7, never with WES7.

Steve

0 Kudos
Kirk_B_Intel
Employee
847 Views

Wow, I am not sure about RAM size (I am a graphics software person) but I know the chipset is designed to support it. I've heard, and experienced difficulties with certian RAM brands on some boards, but nothing in general about N270 and RAM.

Weird on the Roe River as usually the Intel BIOS do have an option for that in the "Southbridge" settings or sometimes in a unique Graphics area of the BIOS. As for your board, you just might need to ask your BIOS vendor what they default it to and see if it is being artifically restricted.

To stop the 945 driver from getting loaded, you might need to uninstall and delete the driver from the Device Manager of the Control Panel. You might also need to hunt down the files and manually delete them. Safe Mode may be your friend for this task IF there is no uninstall for the GMA driver.

And getting a BSOD on full Win 7 is REALLY odd but that still might be the "residue" of the GMA driver in memory if you did not manage to exorsize the whole GMA driver set.

Kirk

Kirk_B_Intel
Employee
847 Views

One other suggestion-

Use device manager and uninstall the GMA 945 driver,

Reboot but use the F8 key to bring up the Windows boot menu

Select, "Start in VGA mode" (it might only offer Safe Mode but that works also)

Once booted, install IEGD using the SETUP in the utilities folder of the install set.

Reboot into "normal" mode - that should avoid having any lurking graphics code interfering with the install.

0 Kudos
Reply