VxWorks BSP Reference : wrSbc824x

wrSbc824x

NAME

wrSbc824x - Wind River SBC8240/8245

INTRODUCTION

This manual entry provides board-specific information necessary to run VxWorks for the wrSbc824x BSP. Please read the section "Getting the board running vxWorks" in order to configure the board to run vxWorks.

Getting the board running vxWorks This section will guide you step by step how to get vxWorks running on this board.

1. Setting the board Jumpers & Switches:

   In order to get the board running with the default configuration. the 
   following jumper's and switch's need to be set as follows:

   .CS

   General Jumpers:
    ____________________________________________
   |   Jumpers   |   Jumpers    |    Jumpers    |
   |-------------|--------------|---------------|
   |JP1     1-2  | JP14    1-2  | JP27    1-2   |
   |JP5     Open | JP15    1-2  | JP28    2-3   |
   |JP8     1-2  | JP16    1-2  | JP33    Open  |
   |JP9     1-2  | JP17    1-2  | JP37    Close |
   |JP10    1-2  | JP18    1-2  |               |
   |JP11    2-3  | JP19    1-2  |               |
   |JP12    1-2  | JP20    1-2  |               |
   |JP13    1-2  | JP25    Open |               |
   |_____________|______________|_______________|

   Bus speed Jumerps:
    _________________________
   | 100MHz Bus | 66 MHz Bus |
   |------------|------------|
   | JP2    1-2 | JP2    1-2 |
   | JP3    1-2 | JP3    2-3 |
   | JP4    1-2 | JP4    2-3 |
   | JP6    1-2 | JP6    2-3 |
   | JP7    1-2 | JP7    1-2 |
   |____________|____________|

   .CE

2. Creating a bootrom_uncmp.hex:
   2.1 Launch Tornado II, go to the "Build" menu and choose the option 
       "Build Boot ROM...".
   2.2 the "Build Boot ROM" window will popup, in the "Select a BSP:" column
       choose the "wrSbc824x", and in the "Select an Image to build:" column
       choose "bootrom_uncmp.hex" and press the "OK" button.
   2.3 After the build process will finish successfully (You will see "Done" in
       the "Build window" without error), you will have the bootrom_uncmp.hex in
       your BSP directory "$(WIND_BASE)/target/config/wrSbc824x".

3. Programming bootrom_uncmp to SBC8240/8245 FLASH:
   If you are using visionCLICK please follow the instruction in section 3.1 
   if you are using SingleStep please follow the instruction in section 3.2

   3.1 Using visionCLICK:

       3.1.1 Install the visionPROBE II  or visionICE II and power it on. 
             Connect the JTAG interface cable from the visionPROBE II  or 
             visionICE II into the SBC8240/8245 board JTAG (JP26 The JTAG Port) 
             connector.

             Once all the connections have been made, power up the SBC8240/8245
             board and start the visionCLICK executable on the host.

       3.1.2 Configure the visionCLICK project: 
             The "Welcome To visionCLICK" window will appear .In this window 
             press on the "Configure" button, This will invoke "PROJECTS/LOAD" 
             window. In this window press on the + left to the 
             "PowerPC_C_Demo.prj".This will show you the project configuration. 
             Point with the mouse cursor on the "Microprocessors" option and 
             press the right button and choose the type of CPU you have on your 
             board. For example: "PowerPC->MPC82xx->MPC8240" for SBC8240 or
             "PowerPC->MPC82xx->MPC8245" for SBC8245. Verify that the 
             "Target Control" option point to visionPROBE for visionPROBE II or 
             visionICE for visionICE II, Also switch to the "Communications" 
             TAB and verify that the "Normal Port/Rate" & "Download Port/Rate" 
             suite your connection. for example: "LPT1"  for visionPROBE II. 
             Now press the "Save" button at the bottom of the window and after 
             it on the "Activate" button.

       3.1.3 Program visionPROBE II / visionICE II with the proper register 
             setting for the SBC8240/8245 board:

             Go to the "Tools" menu and select the 
             "Log Output/Playback Scripts" option. The "Record / Playback" 
             dialog box will popup. In this dialog box go to the 
             "Playback Commands From File" group and press on the "Browse" 
             button. Navigate your self to the location of the following  
             register file: "sbc8240_100MHz_64MB.reg" for the SBC8240 board 
             with 64MB SDRAM, "sbc8240_100MHz_16MB.reg" for the SBC8240 board 
             with 16MB SDRAM, "sbc8245_100MHz_64MB.reg" for the SBC8245 board 
             with 64MB SDRAM. The files located in the visionCLICK 
             installation. After choosing the register file press on the "Open" 
             button to confirm the selected reg file. You will return back to 
             the "Record / Playback" dialog box. Now press on the "Start" 
             button located in the same group. In the "Terminal" window you can 
             see that the visionCLICK is running the script. When visionCLICK 
             will finish the playback you will get back the ">BKM>" or the 
             ">ERR>".

       3.1.4 Get into Background Mode: 
             Execute the "IN" command to reset the board and initialize it with 
             the register setting.

             .CS
             IN
             .CS

             This command is the reset command to initialize the board.

       3.1.5 Converting the bootrom_uncmp.hex to bootrom_uncmp.bin:

              3.1.5.1 In visionCLICK, choose "Convert Object Modules" from the 
                      "Tools" menu. The "CONVERT BINARY AND SYMBOL OBJs" dialog 
                      box will pop up.Select "All Files" in the "Files of Type" 
                      box. Go to the "Select Input Object Module To Convert" 
                      group and navigate to the file "bootrom_uncmp.hex" 
                      located in: 
                      "$(WIND_BASE)/target/config/wrSbc824x/bootrom_uncmp.hex"

              3.1.5.2 In the group "Binary Downloadable Objects Modules" check 
                      the "Create Flat BIN File For Flash Programming". 
                      "In Range Of 0x" editbox, enter 0 for the start address, 
                      and in the "To 0x" editbox, enter "FFFFFFFF".

              3.1.5.3 Make sure that all the other check box are unchecked. 
                      Press the "Convert" button. Close the terminal window 
                      when the conversion completes.

       3.1.7 Programming the SBC8240/8245 Flash:
             In visionCLICK, select "Program Flash Devices" from the Tools 
             pull-down menu. This will invoke the "TF FLASH PROGRAMMING" 
             window. If you are not using visionCLICK, you can also invoke 
             this window using the "visionICE Utilities Panel" and follow the 
             steps below:

             3.1.7.1 Click the "Select" in the "Flash Card or PC Host File 
                     Name and Path" group. The "CHOOSE A FILE FROM HOST PC" 
                     dialog box will popup. In the edit box enter the full path 
                     to the location of the "bootrom_uncmp.bin", or use the 
                     "<--Browse" button to browse to the file location. Go to 
                     the "+/- Bias" group and enter the number "FFF00100" in 
                     the edit box. Now click the "OK" button, this will bring 
                     you back to the "TF FLASH PROGRAMMING" dialog box. 

             3.1.7.2 In the "Programming Algorithm" group in, the edit box 
                     press on the "Select" button, and select one of the 
                     following Flash devices:

                     The 512KB On Board FLASH: "AMD 29F040 (512 x  8) 1 Device"

             3.1.7.3 Set the proper address of the Flash to "FFF00000", check 
                     the "Erase All" radio button,and set the 
                     "Available RAM Workspace" setting to "00000000", set the 
                     "Bytes Of Target RAM Required" to "60000".

             3.1.7.4 Press the "Erase and Program" button.

             3.1.7.5 Now the Flash memory is programmed with the new boot 
                     program. 

   3.2 Using SingleStep for vision:

       3.2.1 Install the visionPROBE II  or visionICE II and power it on. 
             Connect the JTAG interface cable from the visionPROBE II  or 
             visionICE II into the SBC8240/8245 board JTAG (JP26 The JTAG Port) 
             connector.

             Once all the connections have been made, power up the SBC8240/8245
             board and start the SingleStep for vision executable on the host.

       3.2.2 Configure the SingleStep project: 

             3.2.2.1 Go to the "File" menu and choose the 
                     "Start Debug Session..." .

             3.2.2.2 The "Debug" dialog box will popup, In the "Connection" tab
                     choose the visionPROBE option & the correct LPT port if 
                     you are using visionPROBE, or visionICE & enter the 
                     emulator IP address if you are using visionICE.

             3.2.2.3 In the "Processor" tab choose the "MPC8240" or "MPC8245".

             3.2.2.4 In the "Register" tab choose the option 
                     "Use vision-style register window with REG file" and then
                     browse to the location of the file 
                     "sbc8240_100MHz_64MB.reg" for SBC8240 board with 64MB 
                     SDRAM, "sbc8240_100MHz_16MB.reg" for SBC8240 with 16MB
                     SDRAM, "sbc8245_100MHz_64MB.reg" for SBC8245 with 64MB
                     SDRAM. The "sbc8240_100MHz_64MB.reg",
                     "sbc8240_100MHz_16MB.reg", "sbc8245_100MHz_64MB.reg"
                     files should be in the SingleStep registers directory.

             3.2.2.5 In the "File" tab choose the "Debug without a file" 
                     option.

       3.2.3 Get into Background Mode: 

             3.2.3.1 Now in the "File" tab press OK.

             3.2.3.2 Now should get the "Debug Status" dialogbox and in the 
                     "Debug Session" field you should have in green 
                     "Started Successfully", press the "Close" button.

             3.2.3.3 Now go to the "Command" button in the toolbar and press on 
                     it. The "Command" Window will popup, the prompt in the 
                     window will be "SingleStep". Bring the mouse cursor above 
                     the "Command" window and press the right button. A menu 
                     will popup, choose the "VisionShell(vsh)" option. Now the 
                     prompt in the window will be ">BKM>". If the prompt is
                     ">ERR>" execute the "IN" command to reset the board and 
                     initialize it with the register setting.

                     .CS
                     IN
                     .CS
                     This command is the reset command to initialize the board. 
                     After you got the ">BKM>" prompt again continue with the 
                     instruction in the next section. 

       3.2.4 Converting the bootrom_uncmp.hex to bootrom_uncmp.bin:

             3.2.4.1 Go to the menu and choose "Tools" and 
                    "Vision Flash Utility..." . 

             3.2.4.2 The "Flash Programming Window" will popup. Go to the 
                     "Files" tab, press the "Convert" button.

             3.2.4.3 The "File Convertion" window will popup. In the 
                     "Enter new start address" edit box type "0x0" and in the
                     "Enter new end address" edit box type "0xFFFFFFFF".

             3.2.4.4 Now press the "Convert" button. After the convert operation
                     finished, you will see it in the "Convert Result" section
                     press the "Close" button.

       3.2.5 Programming the SBC8240/8245 Flash:

             3.2.5.2 In the "Flash Programming Window" window. Go to the 
                     "Configuration" tab, & choose the following Flash device:

                     The 512KB On Board FLASH: "AMD 29F040 (512 x  8) 1 Device"

                     In "Flash Bank" group for the "Start:" enter "FFF00000". 
                     In the "RAM Workspace" group for the "Workspace Start at:" 
                     enter "00000000" and for the "Workspace Size:" enter 
                     "60000".

             3.2.5.3 Now switch to the "Files" tab and press the "Add" button. 
                     The open dialogbox will popup, browse to 
                     "$(WIND_BASE)\target\config\wrSbc824x                     "bootrom_uncmp.bin" file. Now after getting back to the 
                     "Files" tab you will see the full path to the selected 
                     file in the "Binary Files" group. Move the mouse curser 
                     above the line that showing the full path in the  
                     "Binary Files" group and press the right button to mark 
                     this line. Now press the "Toggle Enable" button to select 
                     this binary file. Make sure that the line is still marked, 
                     and press the "Edit" button on the right. The "File Edit" 
                     dialog box will popup. In the "Enter new start address" 
                     edit box enter "0xFFF00100" and press the "OK" button.

             3.2.5.4 Now go to the "Program" tab and press the "Erase/Program" 
                     button.

             3.2.5.5 Now the Flash memory is programmed with the new boot program.

4. Running the VxWorks Boot ROM program:

   4.1 Disconect visionPROBE II or the visonICE II if it still connected to the 
       board, because it still connected to the board in some case it can stop 
       the processor at the first instruction.

   4.2 Connecting the Ethernet channel and the serial channel:

       4.2.1 First, connect the supplied serial cable with the board. On 
             one said connect the RJ11 connector to the COM1 (JP31) port on the 
             the SBC8240/8245, and on the other said use the RJ11 to 9/25 Pin 
             addapter to connect it to your host. The UART devices is set as 
             follow: 8 data bits, 1 stop bit, hardware handshaking, and parity 
             disabled. The serial console (9600 bps).

       4.2.2 Second, plug the Intel PRO100B/S PCI NIC in the PCI slot on the 
             carrier board and connect a standard Ethernet cable to the NIC.

   4.3 Launch a terminal program on the host said, and configures it according 
       to the following details: 8 data bits, 1 stop bit, hardware handshaking, 
       and parity disabled. The serial console (9600 bps).

   4.4 Now to execute this new boot program turn the board off,and on. and you 
       should get the vxWorks boot count down on the terminal window. Press any
       key to stop the count down. Now follow the instruction in the 
       instructions in the "Getting Started" chapter of the 
       "VxWorks Programmer's Guide." for more detail how to configure vxWorks.

Default configuration

bootrom_uncmp.hex is provided with this BSP. The bootrom_uncmp is configured to a ROM base address of 0x0 and includes, also it's configured to use the 512KB On Board FLASH and FEI 10/100BaseT Ethernet as default boot device and COM1 as console device.

Using visionWARE to run VxWorks

The following section will explain how to launch VxWorks using visionWARE as a boot loader. Please follow the steps below:

Note(s): - Before using vsionWARE you need to verify that visionWARE is
           programmed to you FLASH. If visionWARE is not exist on your FLASH, 
           please see "Programming bootrom_uncmp to SBC8240/8245 FLASH" section 
           how to program the SBC8240/8245 Flash, and instead of programming 
           the "bootrom_uncmp.bin" program the "vWARE.bin" file.

         - vWare 1.10 is using the NetGear NIC by default so the VxWorks image 
           need to be compiled with the PNIC169 driver. vWare 2.00 is using the
           Intel 82559 NIC by default so the VxWorks image need to be compiled
           with the FEI82557 driver.

        1. Connect your SBC8240/8245 serial channel (COM1) to a host running 
           terminal program at 9600 baud rate (For example "HyperTerminal") 
           using the supplied serial cable.

        2. Connect your SBC8240/8245 100\10Base-T (On the PCI Ethernet card) 
           port to a network hub.

        3. Open TFTP server and point to the location of the vxWorks.bdx file. 
           If you want to use the TFTP server that is supplied with visionWARE, 
           go to the visionWARE directory on your host, inside the visionWARE 
           root directory you will find "tftp" directory that contain 
           application called "tftpd32.exe" . Run this application and the 
           TFTPD32 window will popup. In the TFTPD32 window press on the 
           "Settings" button. This will invoke the "Tftpd32: Settings". Go to 
           the "Base Directory" group and inside the edit box type the full 
           path to your vxWorks image, or use the "Browse" button to navigate 
           to there.

        4. Power up your SBC8240/8245 and press any key within 3 seconds from 
           the serial terminal to abort the boot script. This will display a 
           ">BKM>" prompt.

        5. Type the "shell" command and press enter. Now you should get the 
           following line: "File System Sectors (256K each) = 8 >" Press enter. 

        6. Next line will be: "Boot Delay (seconds) = 1 >" . Here you need to 
           specify the desired delay value and press enter.

        7.Nex line will be: "Boot Script = >" . Here you need to give the boot 
          script command.Please type the following if you are using vWARE 1.10:

          "load \host\vxWorks.bdx!osboot RAM!go 100000" . Where "host" or if 
          you are using vWARE 2.0 please type the following:

          "load \host\vxWorks.bdx!launch 100000"

          is the host name, and press enter.

          Note(s):

          ** It is very important to keep the same space between the "load" 
             command and the host name "\host".

          ** It is very important to keep the same space between the "osboot" 
             command and the "RAM". or between the "launch" command and the
             "100000"

        ** The host name should be the same as specified in the 
           "Remote System 1 Name" line.

        8. Next line will be "MAC Address = 00-A0-11-22-23-E8 >" . just press 
           just enter.

        9. Next line will be "IP Address = 0.0.0.0 >" .Type your target IP 
           address.  For example: 192.168.199.0 and press enter.

       10. Next line will be "Subnet Mask = 0.0.0.0 >" . If you want to use 
           subnet mask, type it now and press enter, else just press enter.

       11. Next line will be "Default Gateway = 0.0.0.0 >" . If you want to 
           use default gateway, type it now and press enter, else just press 
           enter.

       12. Next line will be "Remote System 1 Name = >" . Here you need to 
           type the same host name you specified in the "Boot Script" line.

       13. Next line will be "Remote System 1 IP = >" . Here you need to type 
           your host IP address. For example: 192.168.199.1 and press enter.

       14. Next line will be "Remote System 2 Name =  >" . Just press enter.

       15. Next line will be "Remote System 3 Name =  >" . Just press enter.

       16. Next line will be "Remote System 4 Name =  >" . Just press enter.

       17. If you are using visionWARE 1.10 this will be the next line will 
           "Command Channel = 0: Serial >" . Just press enter. If you are using 
           visionWARE 2.00 this will be the first line, again just press enter.

       18. Now you will get the following message: 

           Saving changes will generate a reboot.
           Save Changes (y/n)?

           Press y to save the changes.

       19. Now the changes are saved and the board will restart visionWARE and 
           boot vxWorks, after a few seconds you will get the following 
           messages:

       Wind River visionWARE v2.00 for the SBC8240 Board  
       MAC : 00-00-00-00-00-00 IP : 192.168.199.0
       Type "shell" to set IP and/or MAC addresses
       Type "help" to see available commands

       Press a key in the next <1> seconds to preempt boot script
       Booting from script...

       load \\host\vxWorks.bdx!launch 100000

       >Attached TCP/IP interface to fei unit 0
       Attaching interface lo0...done


                        VxWorks

       Copyright 1984-1998  Wind River Systems, Inc.
 
                   CPU: MPC8240 - Wind River. SBC8240 Evaluation Board
               VxWorks: 5.5
           BSP version: 1.2/26
         Creation date: Oct 29 2001
                   WDB: Ready.

For more information regarding visionWARE boot services and the visionWARE development kit, please refer to the visionWARE manuals, located on the CD that was shipped with your board.

BOOT DEVICES

The supported boot device(s) is(are):
    pnic - 100\10BaseT Ethernet 

        or

    fei - 100\10BaseT Ethernet 

FEATURES

This section describes the support and unsupported features of the SBC8240/8245

Supported Features

The supported features of the SBC8240/8245 board are:
        8240/8245 processors.
        66Mhz & 100Mhz bus speed
        Board Initialization
        MMU support
        Cache support
        Decrementer timer, is used to implement a System Clock & Timestamp.
        1 UART channel (Consol channel).
        10\100BaseT FEI PCI Ethernet device (Intel 82559).
        10\100BaseT PNIC PCI Ethernet device (NetGear FA310) or.
        8240 Interrupt Controller.
        8240 PCI bridge.
        8240 Memory Controller.
        SDRAM upgrade (16, 64 MB Memory DIMM).
        FLASH 512K On board.
        FLASH 4MB On board.
        Aux Clock.

Unsupported Features

The items not supported on the SBC8240/8245 are:
        Other MPC8240/8245 peripheral

HARDWARE DETAILS

This section documents the details of the device drivers and board hardware elements for the SBC8240/8245.

Devices

The chip drivers included are:

    i8250Sio.c             - Intel 8250 UART driver 
    ppcDecTimer.c          - PowerPC decrementer timer library (system clock)
    byteNvRam.c            - byte-oriented generic non-volatile RAM library
    pciConfigLib.c         - PCI configuration library
    pciAutoConfig.c        - PCI device auto-configuration library
    pciConfigShow.c        - Show routines of PCI bus library
    m8240Epic.c -          - MPC8240 EPIC Interrupt Controller
    m8240AuxClk.c -        - MPC8240 Aux clock driver
    pnic169End.obj         - 10baseT/100baseTX PNIC 169 Ethernet driver
    fei82557End.o          - 10baseT/100baseTX FEI 82557/9 Ethernet driver

The BSP configures UART to implement a console device and the FEI 82557 as an Ethernet.

Support for L1 Cache Locking

L1 cache locking is available for MPC8240/8245. The cache lock routine can be used to lock the entire data or instruction cache with a specified memory region.

Default Memory Map

        Memory Map from CPU point of view

Start               Size         Access to
-----------------------------------------------------
0x0                 64MB (min)   SDRAM DIMM
0xFF000000           4MB         On Board FLASH
0xFFF00000         512K          On Board FLASH or SRAM (Configured by jumper)
0xFFE00000           8K          EEPROM
0xFFF80000           8Bit        UART

Shared Memory

NA

66Mhz/100Mhz Bus Speed

This BSP supports both 66Mhz and 100Mhz 8240/8245 Bus Speeds. The bus speed is a conditionally compiled BSP parameter. A #define, in the "config.h" file, is used to specify the desired bus speed.
  /* Bus Speed */
  #define  BUS_SPEED_100MHZ  /* Option BUS_SPEED_100MHZ or BUS_SPEED_66MHZ */
Note: Hardware jumpers PLL_CFG0..4 determine the bus and core speeds for the
      board. Consult the SBC8240/8245 Evaluation Board Users' Manual for 
      details.

SDRAM Size

Initial boards and bsps were supplied with a 16Meg SDRAM DIMM; more recent evaluation boards are supplied with a 64Meg DIMM. the BSP is logically setup for 64Meg of SDRAM. The 64Meg is divided into two halves. The first 32Meg is useable for code and data. The second 32Meg is specified as USER_RESERVED_MEM memory. The 64Meg option is specified as a #define in the "config.h" file. If your board comes with 16Meg of SDRAM follow those steps:

1. Change the following macro in "config.h":

From:

   #define INCLUDE_64MEG_SDRAM
   #undef  INCLUDE_16MEG_SDRAM                      
To:
   #undef  INCLUDE_64MEG_SDRAM
   #define INCLUDE_16MEG_SDRAM                      
2. Change the following line in the Makefile:

From:

        RAM_HIGH_ADRS   = 01F00000
To:
        RAM_HIGH_ADRS   = 00E00000
3. Re build the bootrom, and re create the vxWorks bootable project.

The reason the BSP divides the 64Meg SDRAM into two 32Meg sections has to do with the EABI compilation option of a 24 bit address. The default compilation options generates a bl for branch instructions. This increases performance, but places a 32Meg address limit on the code.

There are two "work around" to this limitation.

        1.) recompile all the source with the -mlongcall compilation flag
        2.) add remaining 32Meg to the memory pool vi the memAddToPool( ) 
            function.

Option #1 would require all the libraries, driver, and the BSP to be recompiled with the -mlongcall compiler option. This results in a number of code changes; the most obvious code change is branches are implemented via brlr instruction verses the bl instruction.

Option #2, the preferable options, requires the USER_RESERVED_MEM and the memAddToPool( ) constructs be used to specify the remaining 32Meg to be added to the memory pool. Consult WindTech Note WTN41 for details on specifying user memory.

Network Configuration

All boards have comes with PCI Ethernet card which is 10baseT and 100baseTX compatible. The Ethernet card uses an RJ45 (twisted pair) jack and can be used with either 10baseT or 100baseTX. The Ethernet driver automatically senses and configures the port as 10baseT or 100baseTX.

Switching between the FEI82557 to PNIC169

The BSP is using by default the FEI driver, but it is supporting also the PNIC driver that is used for the NetGear card. Please follow those steps to get the BSP working with the PNIC driver instead of the FEI:

    1. In "config.h" change the following lines:

       FROM:

       #define BOOT_DEVICE FEI_END
TO:
       #define BOOT_DEVICE PNIC_END

    2. In the makefile change the following lines:

       FROM:

       MACH_EXTRA    = #pnic169End.obj 
TO:
       MACH_EXTRA    = pnic169End.obj

    3. Now reduild the bootrom and create a new VxWorks image project and 
       build it.

** Don't forget to change the device name to "pnic" in the "boot device" line
   in the bootrom.

NVRAM Support

This BSP implements NvRam via a EEPROM device. There are a few user parameters associated with this device. The parameters are located in the "config.h" file and are:
        #undef  INCLUDE_EEPROM_LOCKING
        #define SMART_EEPROM_WRITE
The INCLUDE_EEPROM_LOCKING parameter is typically #undef'ed. If #define'ed, the EEPROM will be software locked between accesses. This was implemented on the BSP to work around a power-on EEPROM corruption problem. It should be noted, that if the EEPROM is locked, its contents can not be altered via an emulator or visionPROBE II or visionICE II (JTAG does not meet the minimum timing relationships needed).

The SMART_EEPROM_WRITE parameter is typically #define'd. When defined, the EEPROM write code first checks to see if a cell is the desired value. If the memory location already contains the desired value, the write is skipped. This was implemented to increase the life of the EEPROM device.

Ethernet Address

The Media Access Control (Ethernet) address for each port is obtained from a serial ROM contained in the INTEL82557/9/0 chip. The Ethernet address should be writen on the card itself, 12 digit number in Hex format. If it's not writen on the card, you can use the "arp -a" command from the host command line in order to get the card Ethernet address.

BOOT FLASH

The BSP configures to use the 512KByte On Board Flash. This is the only flash that can be used for bootrom.

Serial Configuration

The UART is configured as UART devices with 8 data bits, 1 stop bit, hardware handshaking, and parity disabled.

Serial Connections

This VxWorks SBC8240/8245 BSP uses a simple 3 wire connection and standard phone jacks where pin 1 = RIN, pin 2 = TOUT, pin 3 = NC, and pin 4 = GND.

SCSI Configuration

There is no SCSI interface on this board.

Network Configuration

10/100Mb/s Fast Ethernet port, the BSP can be used with one of the two NIC Intel 82557/9 or NetGear FA310 (PNIC169). The BSP support use of nly one NIC at a time.

VME Access

NA

PCI Access

Two 32-bit address, 32-bit data; complies with PCI Local Bus Specification, Revision 2.1 The MPC8240/8245 have PCI bridge inside.

ROM Considerations

bootrom_uncmp is provided with this BSP. The bootrom is configured to a ROM base address of 0x0. When programing the bootrom to the FLASH an offset of 0xFFF00100 need to be given, also it's configured to use the 8 MByte on board Flash ROM and the 100/10BaseT Intel 82557/9 PCI Ethernet card as default boot device and the RS232 as console device.

Delivered Objects

The following images are delivered with the wrSbc824x BSP:

Make Targets

Only bootrom_uncmp, bootrom, vxWorks have been tested.

SPECIAL CONSIDERATIONS

This section describes miscellaneous information that the user needs to know about the BSP.

Known Problems

Problem with the polling mode and the PNIC Ethernet driver

The current version of the Ethernet driver is not supporting polling mode, this cause the system debug mode option not to work when using the CroseWind debuger.

SH "BIBLIOGRAPHY" Embedded Support Tools SBC8240 Hardware Reference Manual Motorola MPC8240 RISC Microprocessor User's Manual, Motorola PowerPC Microprocessor Family: The Programming Environments, DECchip 21140 PCI Fast Ethernet LAN Controller Hardware Reference Manual, Peripheral Component Interconnect (PCI) Local Bus Specification, Rev 2.1, PCI to PCI Bridge Architecture Specification 2.0,