======================================================================
Release Notes for the
Intel(R) Embedded Graphics Drivers (IEGD) 
with Configuration Editor (CED) Package

Version 9.0 Beta Release
May, 2008
======================================================================

Contents
========

- In This Release (overview)
- Supported Chipsets
- New Features
- Getting Started
- VBIOS
- Linux
- Windows*
- Windows CE 5.0 / 6.0
- Software Errata
- Software Licenses
- Legal / Disclaimers


In This Release 
================

This is a release of the Intel(R) Embedded Graphics Drivers (IEGD).  
IEGD is designed specifically to support the unique GRAPHICS DRIVER 
requirements of embedded applications for Intel embedded chipset-based 
platforms with integrated graphics capability.  

This release is a comprehensive package that includes all supported
O/S versions of IEGD, and the pre-installation configuration editor 
(CED) utility.  Highlights of the included files/folders are:
                                                                        
iegd-ced.exe                              Configuration EDitor main file
License.txt                               IEGD License

\configuration                            CED main files

\features                                 CED copyright, license, and 
                                           version info

\JRE                                      Java engine for CED 

\Plugins                                  CED program files and support 
                                           files
\plugins\com.intel.iegd.drivers.xxx       Individual IEGD drivers 

\workspace                                Configured drivers and 
                                           associated files
\workspace\Documentation\RELNOTES.TXT     Release Notes
\workspace\Documentation\UsersGuide.pdf   IEGD User's Guide


Supported Chipsets
==================

Target system must contain one of the following Intel Chipsets:

              Intel(r) US15 System Controller Hub (Poulsbo)
       Mobile Intel(R) GM45/GL40/GS45 Express Chipset (Cantiga)
              Intel(R) Q35 Express Chipset
       Mobile Intel(R) GLE960 Express Chipset
       Mobile Intel(R) GME965 Express Chipset
              Intel(R) Q965 Express Chipset
       Mobile Intel(R) 945GME Express Chipset
              Intel(R) 945G Express Chipset
       Mobile Intel(R) 915GME Express Chipset
              Intel(R) 915GV Express Chipset
       Mobile Intel(R) 910GMLE Express Chipset

Please check with your system provider to determine the Intel Chipset 
used in your system.


New Features
============

This release contains the following new features and capabilities:

Added:
    - Intel(R) US15 System Controller Hub (2D only)
    - Intel(R) GM45/GL40/GS45 Express chipset support (2D only)
    - Intel(R) GLE960 Express chipset support
    - HDMI 1.2a and HDCP support (driver only)
    - Linux: Red Flag MIDINUX 2.0
    - Linux: Red Hat Embedded Linux 
    - Linux: Wind River Linux 
    - Linux ACPI

Removed (no longer supported):
    - Intel(R) 855GME Chipset (Mobile), Intel(R) 852GM Chipset (Mobile)
      and Intel(R) 852GME Chipset (Mobile) are no longer supported.


This release also contains fixes for errata. 

For details on errata, including status information, refer to the Errata document 
usually located at the following Web address:

	www.intel.com/design/intarch/specupdt/309380.htm

or available to download with this release.


Getting Started
===============

The first step is to install the CED release.  The setup and CED utility 
currently need a Windows (XP, XPe, etc.) environment in which to operate.
Simply click on the release to run the setup.  Default directory is:

 \IEGD\IEGD_x_x_x

where x_x_x is the version number and release type (Gold, hot-fix, beta, EC, 
etc.)

New versions will install in their own directory and do not disturb any 
existing CED installations so you can switch between versions as needed.

Once installed, you need only switch to the folder and click on the file:

 iegd-ced.exe

which will run the CED utility.

  NOTE: Only one iteration of CED should be run at any time and as such the
        program uses a semaphore lock file to prevent multiple versions from
        being run at the same time.  If you receive an error indicating that
        another instance of CED is running yet no other copies are running, 
        then you can clear the improper lock by going into the WORKSPACE
        folder in the version of CED you are attempting to run and delete
        the file named ".lock" which will clear the lock.

Please see the IEGD User's Guide for your release for detailed configuration
instructions.



=====
VBIOS
=====


VBIOS System Requirements
=========================

The VBIOS can be built on a host system and moved to the target system.  The 
host system should have installed a 32-bit Windows operating system with the 
capability to execute DOS commands from a command line window.

The Target system should have DOS installed. Supported DOS versions are MS-DOS* 
6.22, MS-DOS 7.1 (from Windows 98), or IBM PC DOS 2000*.

The Target system should contain a minimum of 64MB of RAM.

VBIOS Files
===========

The individual install file (for manual access/configuration) is found
under the IEGD install directory in \plugins\com.intel.iegd.drivers.xxx\vbios
folder (where xxx represents the release version)

The following describes the files used for building the VBIOS for each 
supported platform, where zzz indicates the chipset for which to build the 
specific Option ROM or TSR.

/Driver/zzz/orom/igd_uinit.h    Header file containing default 
                                  initialization settings
/Driver/zzz/orom/makefile       Makefile used to build VBIOS Option ROM
/Driver/zzz/orom/pd_init_all.c  C file containing structures and default 
                                  initialization settings
/Driver/zzz/orom/vga-def.bin    Default VBIOS Option ROM for single CRT 
                                  display
/Drivers/zzz/orom/lib/*         Library files used to build the VBIOS 
                                  option ROM
    libigdpialm.lib             For Almador graphics engine based chipsets 
                                  (852/855)
    libigdpinap.lib             For Napa graphics engine based chipsets 
                                  (915/945)
    libigdpign4.lib             For Gen 4 graphics based chipsets 
                                   (965)

/Driver/zzz/tsr/igd_uinit.h     Header file containing default initialization 
                                  settings
/Driver/zzz/tsr/makefile        Makefile used to build VBIOS TSR
/Driver/zzz/tsr/pd_init_all.c   C file containing structures and default 
                                  initialization settings
/Driver/zzz/tsr/tsr-def.bin     Default VBIOS TSR for single CRT display
/Driver/zzz/tsr/lib/*	        Library files used to build the VBIOS TSR

/Utilities                      Folder containing DOS utilities that interface
                                   with the Video BIOS
/Utilities/readedid.exe         Utility for retrieving panel EDID information
/Utilities/readmode.exe         Utility for retrieving current display mode
/Utilities/setmode.exe          Utility for setting a display mode
/Utilities/setpipe.exe          Utility for setting active display pipe
/Utilities/vbebat02.exe         VESA mode acceptance test, for diagnostic purposes
/Utilities/vga00.exe		Basic mode diagnostic test



VBIOS: Building the VBIOS
=========================

The Intel Embedded VBIOS should be built using the CED utility. The VBIOS 
is built based on settings in CED configuration. When directed to do so,
CED will automatically build both the VGA.BIN ROM image and a TSR.EXE based 
on your CED settings.  These files are ready to use directly out of the CED.
Output will be found under the \workspace folder based on the chipset(s)
you built. Details are provided in the User's Guide and 
in the CED online help.     

The Intel Embedded VBIOS may no longer be build manually using command line
utilities.


VBIOS: Build Prerequisites
--------------------------

Before building your VBIOS in the CED, you must set up your environment with
the Open Watcom 16-bit compiler. 

The CED relies on the Open Watcom C/C++ compiler to 
be able to build a 16-bit DOS binary required for the BIOS.  The VBIOS has been 
tested with version 1.3 of the Open Watcom compiler.  The latest version can be 
downloaded from the following location:

     http://www.openwatcom.com

You must set up the PATH in DOS to be able to execute the Watcom compiler.  The 
directories for the ml.exe and nmake.exe programs should be included in the 
execution path variable in your DOS environment.


VBIOS: TSR and Option ROM
-------------------------

The TSR.exe (Terminate and Stay Resident) executable is useful for testing you
VBIOS build before merging the option ROM with your system firmware.  This
program can be copied to the target machine.  To run the TSR, boot the target machine 
with DOS, and then run the TSR.exe from the DOS command line.

The CED also creates a VGA.bin file, which is the Option ROM which must be
merged with your system firmware.  Contact your firmware provider for instructions
on merging option ROMs with the system firmware.


End VBIOS
*********


=====
Linux
=====


Linux: System Requirements    
==========================    
    
This package includes drivers built for the following X servers: 
 
	XFree86 version 4.3.0 
	X.org version 6.7, 6.8, 7.0, 7.1, & 7.2
 
Note the driver requires the official versions from www.Xfree86.org 
or www.X.org, and may not necessarily operate with versions that are 
part of your Linux distribution.    
    
The system should contain a minimum of 128MB of RAM.    
    
The Linux kernel Accelerated Graphics Port Graphics Address Remapping Table
(AGPGART) must support the supported Intel chipsets (see    
below for more information).    


Linux: Files
============

The individual Linux install file (for manual access/configuration) is found
under the IEGD install directory in \plugins\com.intel.iegd.drivers.xxx\linux
folder (where xxx represents the release version).

This package contains an XFree86 loadable module device driver for the     
Intel chipsets supported by this release.    
    
The following files are contained in the Linux release: 
 
License/License.txt                         License file for display driver 
Documents/RELNOTES.txt                      Release notes 
Documents/UsersGuide.pdf                    IEGD User's Guide 
Documents/Xfree86/intel.4                   Man page for display driver - Xfree86
Documents/Xfree86/IntelEscape.3x            Intel(R) Escape man page - Xfree86
Documents/Xorg-X11/intel.4                  Man page for display driver - X.org
Documents/Xorg-X11/IntelEscape.3x           Intel(R) Escape man page - X.org

Driver/XFree86-4.3/iegd_drv.o               Intel(R) Embedded Graphics Driver binary 
Driver/XFree86-4.3/libGLgn3.so              Intel(R) Embedded Graphics Driver OpenGL
                                              library for 945 and earlier chipsets 
Driver/XFree86-4.3/libGLgn4.so              Intel(R) Embedded Graphics Driver OpenGL
                                              library for 965 chipsets 
Driver/XFree86-4.3/libXiegd_escape.a        Intel(R) Escape client library. 
Driver/XFree86-4.3/libXiegd_escape.so.2.0.0 Intel(R) Escape client shared library 
Driver/XFree86-4.3/intel_escape.h           Intel(R) Escape client include 
Driver/XFree86-4.3/ch7009.so                Chrontel CH7009/7301 TVout/DVI encoder 
Driver/XFree86-4.3/ch7017.so                Chrontel CH7017/7019/7304/7305* TVout/LVDS  
                                            encoder 
Driver/XFree86-4.3/fs454.so                 Focus FS453/454 TVout encoder 
Driver/XFree86-4.3/lvds.so                  GMCH Internal LVDS controller 
Driver/XFree86-4.3/tv.so                    GMCH Internal TV controller 
Driver/XFree86-4.3/ns2501.so                National Semiconductor NS2501 LVDS  
                                            controller 
Driver/XFree86-4.3/ns387.so                 National Semiconductor NS387R LVDS  
                                            controller 
Driver/XFree86-4.3/sii164.so                Silicon Image SiI164 DVI encoder 
Driver/XFree86-4.3/ti410.so                 Texas Instruments TFP410 DVI encoder 
Driver/XFree86-4.3/th164.so                 Thine 164 DVI encoder 
Driver/XFree86-4.3/sdvo.so                  Serial DVO Devices 
Driver/XFree86-4.3/softpd.so                VCH Devices 

 
Driver/Xorg-X11R6.7/*.*                     Xorg-X11R6.7 binaries 
  
Driver/Xorg-X11R6.8/*.*                     Xorg-X11R6.8 binaries 

Driver/Xorg-X11R7.0/*.*                     Xorg-X11R7.0 binaries 

Driver/Xorg-X11R7.1/*.*                     Xorg-X11R7.1 binaries

Driver/Xorg-X11R7.2/*.*                     Xorg-X11R7.2 binaries  

Utilities/gui_lib_setup_linux.txt           Instructions for GUI setup 
Utilities/iegdgui                           Display modes GUI utility 
Utilities/iegd_crg                          Customer Reprt Generator for reporting 
                                             driver issues 
 
The following files are contained in the IEGD_Patches directories: 

IEGD_Patches/IKM              IEGD Kernel Module for GART and DRM
                                Replaces the patches for kernels 2.6 and later
 
IEGD_Patches/DRIVER           Kernel patches for AGP GART

agpgart.patch-2.4.20          Patch for 2.4.20 kernel 
agpgart.patch-2.4.20-8        Patch for 2.4.20-8 kernel (Red Hat* 9) 
agpgart.patch-2.4.24          Patch for 2.4.24 kernel 
agpgart.patch-2.4.26          Patch for 2.4.26 kernel
agpgart.patch-2.6.5-1.358     Patch for 2.6.5-1.358 kernel (Fedora* 2) 
agpgart.patch-2.6.5-7.191     Patch for 2.6.5-7.191 kernel (older SUSE)
agpgart.patch-2.6.5-7.244     Patch for 2.6.5-7.244 kernel (NLPOS 9 SP3)
agpgart.patch-2.6.13-15       Patch for 2.6.13-15 kernel (SUSE 10)
agpgart.patch-2.6.15-1.2054   patch for 2.6.15-1.2054 kernel (Fedora 5)
agpgart.patch-2.6.16.46-0.12  patch for 2.6.16.46-0.12 kernel (SUSE 10 SP1) 
agpgart.patch-2.6.18-1.2798   Patch for 2.6.18-1.2798 kernel (Fedora 6)
agpgart.patch-2.6.21-1.3194   Patch for 2.6.21-1.3194 kernel (Fedora 7)

IEGD_Patches/DRM              DRM files for OPenGL support

iegd.h
iegd_drm.h
iegd_drm_client.h
iegd_drv.c
iegd_drv.h
iegd_interface.c
iegd_interface-2611.c
iegd_interface-2611.h
iegd_interface-2615.c
iegd_interface-2615.h
iegd_interface-265.c
iegd_interface-265.h
Makefile                      Makefile to build the DRM




Linux: Installation 
=================== 
 
Please see the IEGD User's Guide for detailed installation instructions.

Note: Default installation locations can vary so be sure to check your 
system for the proper path.

 
Linux: Patch /IKM Information 
----------------------------- 
 
Additional kernel changes are needed for the GART driver to support the 
Intel(R) Embedded Graphics X display driver.  This may be in the form of 
a patch, or may be a new GART interface such as the IEGD Kernel Module (IKM)
which provides the necessary GART and DRM interfaces for IEGD.

Please see the User's Guide for details. 
 


OpenGL*  
-------

The OpenGL implementation for IEGD consists of three components. 
 
    libGL.so: This is the shared library that implements the OpenGL and 
	      GLX APIs. It is linked by all OpenGL applications. 
 
    intel.ko: This is the Direct Rendering Manager (DRM). It is a kernel 
	      module that provides the OpenGL application with the 
	      permissions necessary to directly access the DMA buffers 
	      used by libGL. 
 
    X Server: The existing IEGD X server driver has been enhanced to 
	      communicate with libGL. 
 
Installing the IEGD OpenGL driver provides a fully hardware accelerated 
implementation of the OpenGL library to applications. This implementation 
makes use of a direct rendering technology, which allows the client to 
directly write to DMA buffers that are used by the Graphics Hardware. 
 
Due to the use of direct rendering technology, system designers should 
take special care to ensure that only trusted clients are allowed to use 
the OpenGL library. A malicious application could otherwise use direct 
rendering to destabilized the graphics hardware or, in theory, elevate 
their permissions on the system. 
 
A system designer can control the access to the direct rendering functionality 
by limiting the access to the DRI device file located at: 
 
   /dev/dri/card0 
 
The permissions on this device are set by the X-Server using the information 
provided in the "DRI" section of the xorg.conf file.

OGL Install:
------------

Please see the detailed install instructions in the Linux section of the
User's Guide to install the IEGD libGL

    NOTE: The system likely has a version of libGL already installed. 
    You may want to make a backup copy of the existing library before 
    installing the IEGD library. 

End Linux
*********


=======
Windows
=======

Windows System Requirements
===========================

The development system should have one the following Windows operating 
systems installed.

	Microsoft Windows XP*                  SP2
	Microsoft Windows XP Professional*     SP2
	Microsoft Windows XP Embedded*         SP2
	Microsoft WEPOS*


The system should contain a minimum of 128MB of RAM.


Windows Files
=============

The individual install file (for manual access/configuration) is found
under the IEGD install directory in \plugins\com.intel.iegd.drivers.xxx\windows
folder (where xxx represents the release version)

The following are found in the Windows Installation:

Driver\iegdmini.sys           Display driver
Driver\iegddis.dll            Hi level Interface Dynamic Link Library
Driver\iegd3dgn3.dll          Direct3D support Dynamic Link Library
                               for 945 and earlier chipsets
Driver\iegd3dgn4.dll          Direct3D support Dynamic Link Library
                               for 965 chipsets
Driver\iegd.inf               Install file for Display driver
Driver\iegd.sld               Sample Windows XP* Embedded Component definition 
                               file - you will need to build this from your
                               specific iegd.inf for your installation! 
Driver\ch7009.sys             Port driver for Chrontel* CH7009/CH7301 encoder
Driver\ch7017.sys             Port driver for Chrontel CH7017/CH7305 encoder
Driver\fs454.sys              Port driver for Focus 453/454 TVOut encoder
Driver\lvds.sys               Port driver for Internal (GMCH) LVDS controller
Driver\tv.sys                 Port driver for Internal (GMCH) TV controller
Driver\ns2501.sys             Port driver for National Semiconductor* 2501 LVDS 
                               controller
Driver\ns387.sys              Port driver for National Semiconductor 387R LVDS 
                               controller
Driver\th164.sys              Port driver for Thine* 164 encoder
Driver\sii164.sys             Port driver for Silicon Image* 164 encoder
Driver\sdvo.sys               Port driver for SDVO devices
Driver\ti410.sys              Port driver for Texas Instruments* TFP410 encoder
Driver\softpd.sys             Port driver for VCH devices
Driver\License.txt            License governing the use of the driver- 
                               Please READ and agree before using the driver!
Utilities\IEGDGUI.dll         Library file for display modes GUI
Utilities\IEGDGUI.exe         Stand-alone display modes GUI executable
Utilities\iegd_crg.exe        Customer Reprt Generator for reporting driver issues
Utilities\Setup.exe           Install/uninstall utility for driver
Utilities\display_license.txt License agreement for display driver



Installation and De-installation
================================

Details can be found in the Windows section of the IEGD User's
Guide.

This release contains an installer/uninstaller utility.  This utility 
does not, however, configure the driver.  Please be sure to update your 
ssigd.inf file with appropriate settings for your display configuration 
prior to installation.  The installation program requires specific file 
names. If you have a different INF file for driver installation, you 
must name it iegd.inf and place it in the Drivers folder prior to 
running the installation with SETUP.EXE.

Do not move or alter the directories after unzipping the release 
package.  The installation utility uses relative path information, and 
must be run from the Utilities folder, and also requires the Driver 
folder.  If the folders are moved or renamed, the installation utility 
will not operate properly.

Also, be sure to not install this version of the driver with an 
existing installation of a previous version of the driver.  The 
installation utility will not uninstall previous versions of the Intel 
Embedded Graphics Driver, and you must begin from a fresh operating 
system installation.  Results are unpredictable if you install over a 
previous version of the Intel Embedded Graphics Driver. 

To run the installation, simply run the Setup.exe program located in 
the Utilities folder of the installation.  This must run from the 
Utilities folder. 

To uninstall this version of Intel Embedded Graphics Driver, run the 
Setup.exe program.


End Windows
***********





====================
Windows CE 5.0 / 6.0
====================


WCE: System Requirements
============================

Development systems should have the following software
installed.

	Platform Builder for Windows CE (latest service packs)
 	For WCE 6.0: Visual Studio 2005 (latest)

The target system should contain a minimum of 64MB of RAM, or 128MB if you 
will be using D3DM.


WCE: Files
===================================

The individual install file (for manual access/configuration) is found
under the IEGD install directory in \plugins\com.intel.iegd.drivers.xxx\WCE50
or WCE60 folders (where xxx represents the release version)

This package contains the following drivers, files, and documents.

Documents\RELNOTES.TXT	     Release Notes
Documents\UsersGuide.pdf     IEGD User's Guide
License\License.txt          License agreement for display driver
Driver\DDI_IEGD.DLL          Display driver binary
Driver\DDI_IEGD.REL          Compilation REL file
Driver\IEGD.reg              Registry settings for the platform
Driver\config.bib            Example memory config file
Driver\igd_Wince50.cec       WCE 5.0 Catalog feature file (not in WCE6.0 package)
Driver\ch7009.dll            Port driver for Chrontel CH7009/CH7301 encoder
Driver\ch7009.rel            File required for Chrontel CH7009/CH7301 build process
Driver\ch7017.dll            Port driver for Chrontel CH7017/CH7305 encoder
Driver\ch7017.rel            File required for Chrontel CH7017/CH7305 build process
Driver\fs454.dll             Port driver for Focus 453/454 TVOut encoder
Driver\fs454.rel             File required for Focus 453/454 build process
Driver\lvds.dll              Port driver for Internal (GMCH) LVDS controller
Driver\lvds.rel              File required for Internal (GMCH) LVDS build process
Driver\tv.dll                Port driver for Internal (GMCH) TV controller
Driver\tv.rel                File required for Internal (GMCH) TV build process
Driver\ns2501.dll            Port driver for National Semiconductor* 2501 LVDS 
                             controller
Driver\ns2501.rel            File required for National Semiconductor 2501 LVDS 
                             build process
Driver\ns387.dll             Port driver for National 387R LVDS controller
Driver\ns387.rel             File required for National Semiconductor 387R LVDS 
                             build process
Driver\ti410.dll             Port driver for Texas Instruments* TFP410 encoder
Driver\ti410.rel             File required for TFP410 encoder build process
Driver\th164.dll             Port driver for Thine* 164 encoder
Driver\th164.rel             File required for Thine 164 build process
Driver\sii164.dll            Port driver for Silicon Image* 164 encoder
Driver\sii164.rel            File required for Silicon Image 164 build process
Driver\sdvo.dll              Port driver for SDVO devices
Driver\sdvo.rel              File required for SDVO encoder build process
Driver\softpd.dll            Port driver for VCH devices
Driver\softpd.rel            File required for VCH encoder build process


WCE: Functions Supported
============================
1. Mode setting
2. Hardware cursor
3. GDI Line Acceleration
4. Mode setting thru registry
5. 8, 16, and 32 bit color modes
6. All supported modes available
7. GDI blitting acceleration (colorfill, stretched, source)
8. DirectDraw support (overlay, blitting, flipping, etc)
9. Text Anti-alias
10. DVO port support
11. ACSFL support
12. Attribute control
13. Twin, Clone and Vertical Extended modes
14. Optional sys-to-video stretch blit
15. Blend filter options
16. Dynamic Video Memory Technology
17. Minimum dimension video surface allocation rule
18. NOTEARING support
19. Loadable port driver architecture 
20. Per port Custom DTD support.
21. Per port GPIO I2C configuration.
22. Per port FP Native Resolution, Power & Backlight controls.
23. Per port Attribute initialization via registry
24. D3DM support
25. Second overlay in vertical extended mode


WCE: Installation
=====================

Details can be found in the Windows CE section of the IEGD User's
Guide.

Integration/installation of the driver binaries depends upon the requirements of 
the target project workspace.

If taken directly from this release package, the driver binaries need to be 
manually integrated into the project workspace on Platform Builder.

In your current project workspace, remove the default display device driver. Add 
a new user feature to the project and browse for the extracted ddi_igd.dll file. 
When rebuilding your project, Platform Builder will request to select a 
replacement display device driver to solve dependencies.  Select the NULL(Stub) 
display device driver listed from the menu of choices offered.

To install a DVO device port driver, use the platform settings menu and add the 
desired port driver DLL into the BIB image.

The contents of the extracted IEGD.reg file must be copied into the project
registry file (project.reg) every time for each new project, or into the 
platform registry file (platform.reg) if all following projects on your current 
platform will run on the Intel graphics chipset.

Please see the latest version of the IEGD User's Guide for more details.


WCE: Catalogue Feature File
===============================

A Catalogue Feature File has been included for WCE 5.0. In order to 
add this driver into the Platform Builder's catalogue feature list, complete the 
following steps (these will be automated in future) NOTE: example for WCE5.0:

	1. Create the following folder WINCE60 PUBLIC root folder:
		C:\WINCE50\PUBLIC\COMMON\OAK\DRIVERS\DISPLAY\INTELIGD
	2. Copy ddi_igd.dll, ddi_igd.rel and video.reg into that folder
	3. Install igd_Wince50.cec file into Platform Builder by:
		- From the File menu, choose Manage Catalog Features. 
		- Choose Import. 
		- In the Import Catalog Features dialog box,
		  choose the .cec file, and then choose Open. 
		- From the View menu, choose Catalog 
		  to display the Catalog.


WCE: Determining graphics memory size
=========================================

This version supports the static as well as dynamic location
of graphics memory. For static video memory, the two registry 
settings ReservedMemoryBase and ReservedMemorySize will 
denote where and how big this area will be. This portion 
of memory will be taken care off by the built in 
GART driver. The size should include the stolen memory 
(BIOS setting, if applicable).

If either of these registry settings are zero or not 
defined in the registry, then dynamic memory allocation will
be used for video memory management. The usage will be
dependant on system resources. This is in line with 
Intel's Dynamic Video Memory Technology.

For example of static video memory, if the stolen memory 
is 8 MB and you want a total of extra 56 MB of graphics 
memory for a total of 64 Mbytes of graphics memory you 
would want to have these settings: (On a 128MB machine)

[HKEY_LOCAL_MACHINE\Drivers\Display\Intel]
   "ReservedMemoryBase"=dword:4000000
   "ReservedMemorySize"=dword:4000000

Which means that the managed graphics memory pool will begin
at physical address 0x4000000 (64MB) and is 64MB of size.

Always remember to include the amount of stolen memory in
this number!

The lower 64MB in the above machine will be used for the NK.bin
and RAM, so therefore you must change your config.bib accordingly

The configuration for the given machine is (debug build):

	   NK		80220000  01650000  RAMIMAGE
	   RAM		81700000  02790000  RAM

As you see, the NK.BIN image takes 22.3125 MB and the rest of
41.6875 MB is RAM. The release build should have much smaller
NK area. For better control, users may turn AUTOSIZE=OFF to 
calculate exactly where the image and RAM starts and ends followed
by the location of the video memory pool with no possibility of 
runtime deviation.

These two settings, together with the registry settings mentioned
above will decide what your machines memory layout will look like.

The example config.bib and the memory configuration settings
in the video.reg are validated settings that can be used for static
video memory of 16MB in size starting from the 48MB address, thus 
including the stolen memory.


WCE: Framebuffer and video surface size
===========================================

2 more optional registry settings are available to
limit the Framebuffer size of the display driver and
the total size of off-screen video surfaces.

The MaxFbSize registry entry will control the maximum
size of the framebuffer only. Actual usage will depend
on the mode being used.

The PageReqLimit registry entry will control the total
size in pages (4K) of all video surfaces, buffers allocated
for any use. Both of these registry configurations apply 
to both the static as well as dynamic video memory management
explained in the previous section. The default below indicates
that a maximum of 2MB's are used for the framebuffer and 
a maximum of 16MB's are permitted for all off-screen video
surface allocations.

   "MaxFbSize"=dword:200000
   "PageReqLimit"=dword:1000

In the case of Windows CE, because the OS does not allow
for dynamically setting the framebuffer size, the MaxFbSize
can be changed to match the mode setting being used in order
to minimize on video memory wastage. The following are
different suggested values for MaxFbSize for different display
modes. These values have not been validated. Note that 640X480
is calculated as 640X512 and 800X600 is calculated as 800X768
for stride alignment purposes.

	640X512X16 = A0000
	640X512X24 = F0000
	640X512X32 = 140000
	800X768X16 = 12C000
	800X768X24 = 1C2000
	800X768X32 = 258000
	1024X768X16 = 180000
	1024X768X24 = 240000
	1024X768X32 = 300000


WCE: Video surface allocation rule
======================================

Another two optional registries entries determine
a minimum width and height dimension that would enable
successful video surface allocations.

In Windows CE GDI, video surface allocations can happen
with a REQUIRE_VIDEO_MEMORY or a PREFER_VIDEO_MEMORY
flag. The following options will force surface
allocations with the PREFER_VIDEO_MEMORY flag to
be allocated in system memory if the width and height
are lower then what is stated in the following entries.

   "MinVidSurfX"=dword:10
   "MinVidSurfY"=dword:10

In this example, surfaces allocated with the
PREFER_VIDEO_MEMORY where the width and height
are both less than 16 pixels are forced to be 
in system memory.


WCE: Escape API
===================

Some escape IOCTL code are exposed to user application space in order to control 
non-mode-dependent port device attributes, such as Brightness, Contrast, etc, 
raw I2C read/write, and port enable/disable.  Please see the separate
 "IEGD API" document for details on the functions and their use.

In addition to the above, two Microsoft reserved Windows escape codes are also 
supported in this release. They are SETPOWERMANAGEMENT and  GETPOWERMANAGEMENT. 
However, in the implementation of GETPOWERMANAGEMENT, all power state requests 
apart from VideoPowerOn will only equate to powering down of the display ports.



End WCE 5.0/6.0
***************


Software Errata
===============

This release also contains fixes for errata. For details on the errata, 
including status information, refer to the Errata document usually located 
at the following Web address:

	www.intel.com/design/intarch/specupdt/309380.htm

and also in the download section of the Intel Premier Support (Quad) 
system.

Software Licenses
=================

The Intel Embedded Graphics Drivers are subject to the terms of the 
license agreement located in the license file in this distribution package. 
Please read, understand, and agree to the terms before using the IEGD drivers
or the IEGD Configuration Editor.


Legal / Disclaimers
===================

INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL(R) PRODUCTS.
NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL
PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS
AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER,
AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE
OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR
OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in
medical, life saving, life sustaining, critical control or safety systems, or in
nuclear facility applications.

Intel may make changes to specifications and product descriptions at any time,
without notice.

(C) Intel Corporation 2008  

* Other names and brands may be claimed as the property of others.

================================================================================


