VersaLogic.com » Support » Software » Search » BSP-CE6-GLX-R2.00 » ReadMe

ReadMe: BSP-CE6-GLX-R2.00

Windows Embedded CE 6 BSP for the AMD Geode LX Platform

Boards Supported Manx (VL-EPM-15)
Cougar (VL-EPM-14)
Python (VL-EBX-11)
OS Version Windows Embedded CE 6.0 R3 (BUILD 3122 Jan 25 2010)
IDE/Platform Platform Builder (Visual Studio 2005)
BSP Version 2.00
GLX AMD Geode LX Platform

TABLE OF CONTENTS

  1. Legal Disclaimer
  2. Purpose
  3. Package Contents
  4. Prerequisites
  5. Build Instructions
  6. Recommended Components
  7. Adding Ethernet Drivers
  8. Services
  9. Application Development
  10. Features Tested
  11. Serial Ports
  12. Important Notes (Highly Recommended)
  13. Known Issues (Highly Recommended)
  14. References

1.0 LEGAL DISCLAIMER

VersaLogic is making no claims of usability, efficacy or warranty. Information in this document is provided in connection with VersaLogic products. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document. VersaLogic assumes no liability whatsoever, and VersaLogic disclaims any express or implied warranty relating to the sale and/or use of VersaLogic products, including liability or warranties relating to fitness for a particular purpose, merchantability or infringement of any patent, copyright or other intellectual property right. VersaLogic products are not intended for use in life-saving or life-sustaining applications.

VersaLogic disclaims all warranties and liabilities for the use of this document and the information contained herein, and assumes no responsibility for any errors which may appear in this document, nor does VersaLogic make a commitment to update the information contained herein. VersaLogic reserves the right to make changes to this document at any time without notice.

2.0 PURPOSE

The AMD website has two CE BSPs (CE5 and CE6) for the LX/CS5536 chipset. This document is an addendum to the GeodeLX/5536 BSP documentation and primarily discusses only details specific to VersaLogic's Geode LX boards for Windows CE 6.0. We have modified AMD's Geode LX CE 6.0 BSP to add support for KITL and EBOOT for Intel's 82551ER and 82541ER Ethernet chips.

The AMD Geode LX BSP can be downloaded independently from the AMD support website. That BSP works well, except that it does not contain support for the Intel 82551ER and 82541ER Ethernet devices. Alternatively, you can use the BSP that is supplied with the BSP-CE6-GLX-R2.00 [4] package.

3.0 PACKAGE CONTENTS

The BSP-CE6-GLX-R2.00 [4] zip file contains the following items:

  1. C:\WINCE600\PLATFORM\GeodeLX - This folder contains the actual BSP source files.
  2. C:\WINCE600\PLATFORM\GeodeLX\SRC\GeodeLXDrivers - This folder contains Geode LX platform drivers provided by the vendor (AMD). The drivers are supplied as is. We have NOT modified any of the drivers supplied by AMD.
  3. C:\WINCE600\PLATFORM\GeodeLX\SDK - This folder contains the SDK, GeodeLX.msi, for the project file mentioned below.
  4. C:\WINCE600\OSDesigns\GeodeLXOSDesign - This folder contains a "sample" project file, GeodeLXOSDesign.pbxml, which we used to create the Windows CE 6.0 image (NK.bin) file.
  5. C:\WINCE600\3rdParty\82551 - This folder contains the driver files for the 82551ER Ethernet chip and the corresponding EBOOT.bin file.
  6. C:\WINCE600\3rdParty\82541 - This folder contains the driver files for the 82541ER Ethernet chip and the corresponding EBOOT.bin file.
  7. C:\WINCE600\3rdParty\CoreCon_v200_x86_WinCE600.msi - An installer for introducing a catalog item for establishing core connection from Visual Studio 2005 (VS 2005). Introduces a catalog item in your OS Design project:
    Third Party→CoreCon→CoreCon_v200_x86
  8. C:\WINCE600\3rdParty\Images - This folder contains the desktop Wallpaper that is set by the CE image. See the platform.reg file for the Wallpaper settings.
  9. C:\README_BSP-CE6-GLX-R2.00.txt - Text version of this ReadMe file.
  10. C:\CHANGELOG_BSP-CE6-GLX.txt - A brief history and summary of the version releases for this package.

4.0 PREREQUISITES

Host (Development Machine)

Target (Geode LX Board)

Warning!We strongly recommend installing all of the updates for CE 6.0 if you haven't recently updated your CE 6.0 installation. Please see [1] for more information on how to download updates.

5.0 BUILD INSTRUCTIONS

Assumption

We are assuming that you are going to work from your "C:" drive and that your "$(_WINCEROOT)" = "C:\WINCE600". If that is not the case, you will need to substitute the proper path as per your customized setup. If you installed CE 6.0 with default settings you should be set up already.

  1. Unzip the supplied zip file, BSP-CE6-GLX-R2.00.zip directly to the root of your "C:\" directory and NOT to "C:\BSP-CE6-GLX-R2.00".
  2. Although this is an optional step, it is highly recommended if you are going to do application development. Install the core connection installer - CoreCon_v200_x86_WinCE600.msi. This will create a catalog item in your Platform Builder:
    Third Party→CoreCon→CoreCon_v200_x86
    See Section 3.0 (7).
  3. Open "Visual Studio 2005" and go to the "Platform Builder" environment.
  4. Create a new project by going to "File→New→Project→Platform Builder→OSDesign" and give it a name like "GeodeLXOSDesign". For your reference, we have included our project file (GeodeLXOSDesign.pbxml) in the supplied zip file at:
    C:\WINCE600\OSDesigns\GeodeLXOSDesign\GeodeLXOSDesign
  5. Select "GeodeLX: X86" as your BSP.
  6. Select a design template. (e.g. "Industrial Device→Internet Appliance")
  7. Add each of the following drivers into the build by going to "Project→Add Existing Subproject", browse to the .pbpxml file and click "Open" for each one of the following driver directories:
    C:\WINCE600\PLATFORM\GeodeLX\SRC\GeodeLXDrivers\lxaes
    C:\WINCE600\PLATFORM\GeodeLX\SRC\GeodeLXDrivers\lxaudio
    C:\WINCE600\PLATFORM\GeodeLX\SRC\GeodeLXDrivers\lxvideo\lxvideo
    C:\WINCE600\PLATFORM\GeodeLX\SRC\GeodeLXDrivers\lxvideo\LXISR
    C:\WINCE600\PLATFORM\GeodeLX\SRC\GeodeLXDrivers\lxsmbus
    To add 82541ER and 82551ER Ethernet drivers to your image, see Section 7.0.
  8. Choose additional components or click "Finish". See Section 6.0 for recommended components.
  9. Select "Release" build or "Debug" build from "Build→Configuration Manager".
  10. Finally, build the solution by going to "Build→Build Solution". Once the build process is complete, you will see files called NK.bin and EBOOT.bin in your project build directory:
    C:\WINCE600\OSDesigns\GeodeLXOSDesign\GeodeLXOSDesign\RelDir\GeodeLX_x86_Release
    Copy this NK.bin file on a CE 6.0 bootable media and boot from it. Alternatively, you can use EBOOT.bin to boot your NK.bin file over Ethernet.

6.0 RECOMMENDED COMPONENTS

Additional software/hardware components can be added to your image by clicking on the "Catalog Items View" from the left project pane. Some recommended components to be included are:

7.0 ADDING ETHERNET DRIVERS

Adding 82551ER Ethernet Driver

  1. The drivers are included in the ZIP file and should be extracted at the following location:
    C:\WINCE600\3rdParty\82551
  2. From your project's "Solution Explorer" window, right-click on "Project Name" and go to "Properties→Custom Build Actions→Pre-Make Image" and add the following command:
    copy %_WINCEROOT%\3rdParty\82551\E100CE.dll %_FLATRELEASEDIR%\E100CE.dll
  3. Make sure you set the variable:
    set CEPC_INTELFE_PCI=1
    in your platform's batch file, GeodeLX.bat, file located at:
    C:\WINCE600\PLATFORM\GeodeLX

Adding 82541ER Ethernet Driver (Manx Rev. 4.00 or later only)

  1. The drivers are included in the zip file and should be extracted at the following location automatically:
    C:\WINCE600\3rdParty\82541
  2. From your project's "Solution Explorer" window, right-click on "Project Name" and go to "Properties→Custom Build Actions→Pre-Make Image" and add the following command:
    copy %_WINCEROOT%\3rdParty\82541\e1000ce6.dll %_FLATRELEASEDIR%\e1000ce6.dll
  3. Make sure you set the variable:
    set CEPB_INTELGBE_PCI=1
    in your platform's batch file, GeodeLX.bat, located at:
    C:\WINCE600\PLATFORM\GeodeLX

8.0 SERVICES

If you are using the project file, GeodeLXOSDesign.pbxml, supplied by VersaLogic at:

C:\WINCE600\OSDesigns\GeodeLXOSDesign

then the following services/servers are enabled by default:

  1. Telnet Server
  2. Web Server (HTTPD)
  3. FTP Server
  4. File Server (SMB/CIFS)
  5. Remote Display Application

Warning!You configure the settings for the above services/servers in the platform.reg file.

a) Using Telnet Server

You can access the target system using 'telnet' utility. After booting NK.bin on the target device, just launch a telnet command from any workstation (Windows, Linux, etc.) like this:

C:\Documents and Settings\User>telnet wince
-- or --
C:\Documents and Settings\User>telnet 192.168.0.136

where:

192.168.0.136 = IP address of the GeodeLX based target device
-- and --
wince = machine name of the target device which is defined in platform.reg file at:

C:\WINCE600\PLATFORM\GeodeLX\FILES

Now you should be able to see your familiar CE 6.0 console with the command prompt ready to take commands, like this:

Welcome to the Windows CE Telnet Service on WinCE

Pocket CMD v 6.00
\> dir

b) Using Web Server

Once your CE image boots on your target device, launch any web browser from any machine and type in:

http://wince
-- or --
http://192.168.0.136

and you will see the complete contents of the root (/) directory of your target device. To further manage the server remotely, give the following command:

http://192.168.0.136/RemoteAdmin

and then create a new password. After that, the device will reset and you will be asked to enter the default username (which is 'admin') and password (which you just created).

c) Using FTP Server

From any workstation give the following command:

C:\Documents and Settings\User>ftp wince
-- or --
C:\Documents and Settings\User>ftp 192.168.0.136

and enter the details as follows:

Connected to wince.
220 Service ready for new user.
User (wince:(none)): anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.
Password:
230 User logged in, proceed.
ftp>

d) Using File Server

To mount a shared windows folder which resides on a machine on your CE target device, give the following command on the target device:

net use winshare \\windowssharemachine\shareddocs

where:

windowssharemachine = is a Windows machine (example: Windows XP)
shareddocs = a shared folder on the above Windows machine
winshare = destination folder name under which the contents of shareddocs will be mounted (you can give any name you want)

After giving the above command, a username/password dialog box will pop-up. After entering the details you will be able to see the share on your CE target device at:

\Network\winshare

You can access the above from the "My Device" icon on the CE desktop.

Similarly, to mount a shared folder which resides on the CE target device on a Windows machine (example: Windows XP), give the following command from a Windows XP machine:

C:\Documents and Settings\User>net use q: \\wince\MYSHARE

where:

MYSHARE = name (alias) of the shared folder called "Temp" on the CE target device.
You can change the alias name and the folder to share in the platform.reg file.

9.0 APPLICATION DEVELOPMENT

Here we will discuss how to do remote application debug using the Core Connectivity method in VS 2005. The steps are heavily borrowed from [2]. Also we recommend that you use your sample project file to walk through these steps to minimize errors.

  1. Install the Core Connectivity setup file CoreCon_v200_x86_WinCE600.msi and select the following catalog items from Platform Builder:

    Third Party→CoreCon→CoreCon_v200_x86
    Core OS→CEBASE→CAB File Installer/Uninstaller

  2. Build your OSDesign solution to generate NK.bin and boot it on your target device.
  3. Install the SDK, GeodeLX.msi, from the following location:

    C:\WINCE600\PLATFORM\GeodeLX\SDK

  4. Create a simple test application:
    1. Launch VS 2005, from the VS 2005 IDE, select "File→New→Project", to bring up the "New Project" screen.
    2. On the left pane, expand "Visual C#" and "Smart Device" node to select "Windows CE 5.0".
    3. On the right pane, select "Device Application", enter "HelloWorld" as the project name and click "OK".
    4. Create a form and add some labels, buttons, text.
    5. From the VS 2005 IDE, select "Build→Build Solution" to compile and generate executable binary for the project.
  5. Preparing VS 2005 for CoreCon (Core Connection) connectivity:
    1. To establish CoreCon connectivity between the VS2005 development workstation and target device, you first need to find out the target device’s IP address.
    2. From the VS 2005 IDE, set the target device to "GeodeLX x86 Device" (Optional).
    3. From VS 2005 IDE, select "Tools→Options" to bring up the device configuration screen.
    4. On the left pane, expand the "Device Tools" node and select "Devices". On the right pane, select "GeodeLX" from the list of available platforms in the "Show devices for platform" combo text box.
    5. Click on the "Properties" button to bring up the "GeodeLX x86 Device" properties setting screen. Click on the "Configure" button to bring up the "Configure TCP/IP Transport" screen. Select "Use specific IP address" and enter the IP address for the target device. Click the "OK" button to save the device IP address setting. Click the "OK" button on the "GeodeLX x86 Device" properties screen to close the screen. Click the "OK" button on the "Options" screen to close the screen.
  6. Connecting Target Device to VS 2005 IDE with CoreCon
    1. To initiate CoreCon connectivity between VS2005 development workstation and target device, the CoreCon executable, ConmanClient2.exe, needs to be launched from the target device with CE running. The executable can be found in the "\Windows" folder on the target device.

      Warning!Each time the target device resets power and reboots, the ConmanClient2.exe executable needs to launch again.

    2. In addition to launching the ConmanClient2.exe, the CMaccept.exe executable also needs to be launched to override CE security temporarily to allow the VS2005 IDE to establish CoreCon connectivity to the CE target device. When CMaccept.exe is launched, the security is temporary disabled for 3 minutes. If the VS2005 IDE fails to establish the CoreCon connection within 3 minutes, the CMaccept.exe needs to be launched again. When the "CoreCon_v200_x86" component is added to the OS design, in addition to including the necessary CoreCon files, the following registry entries are also added to disable security:

      [HKEY_LOCAL_MACHINE\System]
      "CoreConOverrideSecurity"=dword:1

      Since the "CoreConOverrideSecurity" entry in the registry disable security, the CMaccept.exe executable is not needed for this exercise.
    3. From the VS 2005 IDE, select "Tools→Connect" to device, select "GeodeLX" from the list of available platforms, make sure "GeodeLX x86 Device" is selected under "Devices" and click on the "Connect" button.
    4. When the connection is successfully established, the "Connecting" dialog box will display "Connection succeeded" to indicate a successful connection.
  7. Deploying Managed Code application on the Target Device:

    With the CoreCon Connectivity established, we are ready to deploy the managed code application to the CE target device. From the VS 2005 IDE, select "Debug→Start Debugging" and when asked select "GeodeLX x86 Device" and click on "Deploy" button to deploy the application to the target device. As the application is being deployed, a series of activities is shown on the VS 2005 IDE’s output tab. After deploying, the application is launched on the target device’s CE desktop.

10.0 FEATURES TESTED

The following features have been tested on this BSP:

  1. Serial ports
    • COM1, COM2, COM3 and COM4 @ 115200,8,N,1
  2. Keyboard and mouse
    • PS/2 and USB
  3. Video/Graphics
    • VGA up to 1024x768 resolution
    • LVDS up to 1024x768 resolution
  4. Ethernet
    • Intel 82551ER (including EBOOT/KITL)
    • Intel 82541ER (including EBOOT/KITL)
  5. PATA
    • Hard drive, Compact Flash
  6. USB
    • Hard/flash drives, CD-ROMs
    • Keyboard and mouse
  7. Audio
    • WAV and MP3 playback

11.0 SERIAL PORTS

Following are the BIOS/CMOS settings that you will need to set for the serial ports to function:

Name IOBASE IRQ Modes Tested Boards Tested
RS-232 RS-422 RS-485 Manx Cougar Python
COM1 0x3F8 4
COM2 0x2F8 3
COM3 0x3E8 5 a d c b
COM4 0x2E8 10 a b b
  1. Only applicable to Python. Need to remove jumper V1[1-2] and V1[3-4] for COM3 and COM4 respectively.
  2. Verified ManuFC and AutoFC for RS-485 mode.
  3. Not able to verify the RS-485 ManuFC mode.
  4. Not able to verify IRQ 5 setting for COM3 for older revisions (3.xx) of Manx. Try using IRQ 3 instead.

The supplied file, platform.reg, is set up to reflect the above settings for the serial ports. Please refer to the corresponding manual [5,6,7] of the boards for additional information on serial ports.

By default, Windows CE uses a Serial/COM port (typically COM1) with IOBASE=0x3F8 and IRQ=4 to send out debug messages. Note that this feature does not use the actual serial port CE driver com16550.dll, it just uses the serial port hardware to output debug messages at 38400,8,N,1 baud rate and hence the COM1 port should be available for use by your application. The project file GeodeLXOSDesign.pbxml that is supplied is set up to enable all four serial ports. You can tweak the serial port settings (IO Base Address, IRQs, etc.) by modifying the platform.reg file as per your requirements. Please refer to the manual [3 for additional configuration information.

12.0 IMPORTANT NOTES

  1. Users might experience NK.BIN hangs. Most likely, this is caused by enabling KITL in the image build options and not using KITL to connect to the device. If you want to boot a standalone NK.BIN image, disable KITL in "PLATFORM-SETTINGS→Build Options".
  2. The EBOOT.bin generated in the Debug build hangs mostly because of its size, which does not fit in the allocated memory. The release build version has been verified to work. We have supplied a pre-built version of CE 6.0 EBOOT.bin in the following directories:
    C:\WINCE600\3rdParty\82551\
    C:\WINCE600\3rdParty\82541\
    Copy the EBOOT.bin file if you want to immediately begin building and booting Debug images over Ethernet.

    Warning!The EBOOT.bin file is exactly the same in both of the directories i.e. the EBOOT.bin will support 82551ER and 82541ER Ethernet.

  3. KITL is disabled in our supplied sample project file (GeodeLXOSDesign.pbxml). If you want KITL support in your image, from your "Solution Explorer" window simply right-click on "Project Name→Properties" and check the box - "Enable KITL (no IMGNOKITL=1)". Click "Apply" and then "OK".

13.0 KNOWN ISSUES

  1. IDE CD-ROMs do not show up under "My Device". This is most likely a registry setting issue.

14.0 REFERENCES

[1] http://msdn.microsoft.com/en-us/windowsembedded/ce/dd430902.aspx

[2] http://www.embeddedpc.net/ebox3310amsjk/eBox3310A_CE60_JumpStart_Rev6.0.pdf

[3] https://www.versalogic.com/downloads/bsp/README_PYTHON_CE5.txt

[4] https://www.versalogic.com/software/Software_Download.asp?s=54&f=7

[5] https://www.versalogic.com/products/Manuals/MEBX11.pdf

[6] https://www.versalogic.com/products/Manuals/MEPM14.pdf

[7] https://www.versalogic.com/products/Manuals/MEPM15.pdf

Copyright © 2010 VersaLogic Corp. All rights reserved.