API Reference: Libraries

Top

# kontron_ktgm45

#### NAME

> kontron_ktgm45 - Kontron KTGM45 platform specific documentation

#### INTRODUCTION

> This board support package (BSP) is designed to run on boards which are part of the Kontron KTGM45 platform.

> The BSP was tested on KTGm/mITX board, BIOS version 8.16 (4504), build date: 02.05.2010.

> This documentation provides platform specific information how to install boot images as well as descriptions on the functionality and features of this BSP. This BSP is based on the generic pcPentium4 BSP from Wind River, thus major parts of the documentation provided by Wind River are applicable to this BSP as well.

#### Symmetric Multiprocessing (SMP)

> This BSP supports Wind River VxWorks SMP. SMP is a variant of multiprocessing technology in which one instance of an operating system controls all processors/CPUs and in which main memory is shared.

> VxWorks SMP is an optional product for Wind River Platforms and VxWorks and additional information about multiprocessing technologies and VxWorks SMP can be found in the corresponding Wind River VxWorks documentation.

> VxWorks SMP is added e.g. for a Workbench VxWorks image project by setting the option SMP support in kernel in the projects options setup or with the appropriate command option for vxprj - build.

#### BOOT PROCESS

> The target board is capable of booting from the onboard Ethernet adapters (PXE), the (optional) USB NAND Flash module, external SATA Hard Disk drives or external USB mass storage devices, external PATA Hard Disk drive or Compact Flash Card Type I/II.

#### Booting a Romable Image from a Disk Device

> In the standard configuration the BIOS loads and executes the bootstrap loader located in the boot sector of a diskette, a hard disk, or a compact flash device. The VxWorks bootstrap loader looks for the bootrom.sys file, loads it into memory, and transfers execution to it.

#### Booting a VxWorks Image using the boot loader

> Booting is normally a two step process during development. In the first step, the VxWorks boot loader is started. In the second step, the VxWorks image is loaded and started by the boot loader. In the table below you can find the boot devices which are supported. Note that not all boot devices are included in the default configuration.

> Boot device | Description
> --- | ---
> gei0 | First Gigabit Ethernet Interface
> gei1 | Second Gigabit Ethernet Interface
> gei2 | Third Gigabit Ethernet Interface
> ata[=x,x] | PATA Disk Device or CF card
> ata[=x,x] | SATA Disk Device
> usb | USB Bulk (Mass Storage) Device

#### SUPPORTED IMAGES

> The BSP support the following images.

> Image Name | Description | Built in | Device | Compressed | Loads Into
> --- | --- | --- | --- | --- | ---
> bootrom.bin | bootrom | IDE/BSP | Disk | Yes | High Memory
> bootrom.pxe | bootrom | IDE/BSP | Net | Yes | High Memory
> vxWorks_romCompress.bin | bootable VxWorks | IDE | Disk | Yes | High Memory
> vxWorks | loadable VxWorks | IDE | Net/Disk | No | Low Memory

> (The binary images *.bin are used for creation of the appropriate bootrom.sys file)

> To build a boot loader or a VxWorks image you should use the Wind River Workbench. If the default configuration is not appropriate for your application you can change it by editing the file config.h in the BSP directory (for the boot loader) or with help of the Wind River Workbench (for VxWorks image).

> For instructions on how to configure and compile a bootable image from the Wind River Workbench see Wind River Workbench User's Guide: Projects. ( Please keep in mind that Low Memory boot images are limited to approximately 640KB in size due to the constraints of the processor running in real mode.)

> The configuration of the boot loader can be changed by modifying the file config.h in the BSP directory. There are several options to boot vxWorks image listed in config.h:

> Boot device component | Description
> --- | ---
> INCLUDE_DRV_STORAGE_PCI_ATA | enable JMicron PATA disk driver to boot from CF card
> INCLUDE_DRV_STORAGE_INTEL_AHCI | enable to boot from AHCI SATA disk device, NOTE: SATA controller in BIOS should be configured in AHCI mode
> INCLUDE_GEI825XX_VXB_END | onboard intel ethernet controller
> INCLUDE_USB | enable to boot from USB mass storage device
> INCLUDE_PC_CONSOLE | enable to use PC keyboard and VGA display as console

> there are some examples of boot line in config.h for each boot device.

#### PREPARING A BOOT DEVICE

>     ./BootDevice.html - Preparing a boot device for I86 platforms

#### HARDWARE DETAILS

> For a detailed description of the hardware features and configuration options available please refer to the target board Hardware User's Guide. Note that if Compact Flash card is attached to onboard slot it is not possible to use other PATA devices connected by 80-wired PATA cable, it is recommended to use SATA Hard Disks in this case.

#### FEATURES

#### BSP Library

> There are different functional components additionally provided to configure this BSP. The components can be included into the VxWorks image either with help of the Wind River Workbench project facility (recommended) or by changing macro definitions in the file config.h.

> The components described below utilize the drivers which are delivered as a part of the BSP library, but also the standard drivers which are provided in the VxWorks installation.

> For more information on supported functions of the different components please follow the link to the online documentation.

> INCLUDE_PC_CONSOLE

>   In addition to the keyboard types supported by the original Wind River BSP, USB keyboards can be used. To initialize the USB stack and attach a USB keyboard to the PC console, the macro PC_KBD_TYPE must be set to USB_KBD. This macro definition can be found in the file config.h.

>   The default setting of the serial interface (independent of including PC console) is 115200 baud, 8 data bits, 1 stop bit, no parity and no flow control.

> INCLUDE_CFG_GEI8254X_END_1
> INCLUDE_CFG_GEI8254X_END_2
> INCLUDE_CFG_GEI8254X_END_3

>   These components are providing support for configuration of the onboard Gigabit Ethernet Interface at the front panel connector and/or REAR-IO. It sets the network mask and internet address of the interface to the values defined for CFG_GEI_X_MASK and CFG_GEI_X_ADDR. You can modify both parameters within the Workbench project facility. It is allowed to set CFG_GEI_X_ADDR to "dhcp", in this case the NIC will use DHCP client to retrieve IP information (Note: INCLUDE_IPDHCPC component has to be enabled to use this facility).

>   This component requires INCLUDE_GEI825XX_VXB_END GEI driver.

> INCLUDE_HAL_DRV

>   This component serves as an abstraction layer to obtain hardware specific information about the board in use.

>       ./halK.html - Hardware Abstraction Layer

> INCLUDE_DRV_STORAGE_PCI_ATA

>   This component includes PCI ATA host controller for ATA/ATAPI devices including onboad CF card. Only JMicron JMB368 onboard controller is supported. This driver excudes standard INCLUDE_ATA driver that is not applicable to the hardware.

>       ./vxbPciAtaStorageK.html - PCI ATA support

> INCLUDE_DRV_STORAGE_INTEL_AHCI

>   This component includes Intel ICHx SATA host controller driver. It is adapted to support onboard Intel ICH9 controller.

>   Note: SATA controller in BIOS should be configured in AHCI mode

>   This driver also has extended ability to assing DOS-like name to partition. This functionality is switched off by default and controlled by BSP parameter INCLUDE_AHCI_DOS_PARTITION_NAMING (set it to TRUE to enable). When enabled partitions of disk drives attached to SATA port 0,1,...,5 will be named "C:, D:, E:, F:" (up to 4 partitions) for port0, then "G:, H:, I:, J:" for port1, etc. Please note that ICH9M SATA controller has only ports 0,1,4,5 (2 and 3 are malfunctional), this pecularity is also settled up in the updated driver.

> INCLUDE_INTEL_TCO_WD_DRV

>   This component includes Intel TCO Watchdog driver.

>       ./vxbIntelTCOWatchdogTimerK.html - Intel TCO Watchdog support

> INCLUDE_W83627

>   This component includes W83627 sensor driver.

>       ./vxbW83627dhgK.html - W83627 sensor driver support

> INCLUDE_RTC

>   This component includes MC146818 RTC clock driver.

>       ./vxbMC146818RtcK.html - MC146818 RTC clock driver support

#### Device Drivers

> Device support in this BSP is provided by a combination of VxBus drivers and legacy (non-VxBus) drivers. As of this release, VxBus is the default configuration, and support for legacy drivers has been removed, where duplicate drivers exist.

> VxBus drivers follow a bus model introduced with VxWorks 6.2. In this model, VxBus provides most of the functionality, which was previously required to be put into the sysDev.c file in the BSP (e.g. sysFei82557End.c). For PCI devices, no BSP support is required, other than to insure that sufficient DUMMY_MMU_ENTRY lines are present at the end of sysPhysMemDesc[]. For devices located on the processor bus, the BSP support is usually limited to entries in the tables in hwconf.c.

#### PCI Access

> PCI access is provided by VxBus. The PCI bus controller driver used by this BSP is the pentiumPci driver. This is configured by default for command line builds, and can be managed by use of Wind River Workbench and/or vxprj. The BSP does not support configurations without PCI support.

#### SPECIAL CONSIDERATIONS

>     ./SpecialConsiderations.html - Special Considerations for I86 platforms

#### KNOWN PROBLEMS

>     ./KnownProblems.html - Known Problems

#### SEE ALSO

> Workbench User's Guide: Getting Started, VxWorks Programmer's Guide: Configuration, VxWorks Programmer's Guide: Architecture Supplement, VxWorks Kernel Programmer's Guide