API Reference: Libraries

Top

# kontron_ktq45

#### NAME

> kontron_ktq45 - Kontron KTQ45 platform specific documentation

#### INTRODUCTION

> This board support package (BSP) is designed to run on boards of the Kontron KTQ45 family.

> Supported boards are KTQ45/FLEX, KTQ45/ATXE.

> 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.

> It is strongly recommended to turn SMP on for any VxWorks images based on this BSP.

> 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.

#### 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
> ahci[=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 the 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_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

>     http://kontron.bsp/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.

#### 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

>   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_DRV_STORAGE_INTEL_AHCI

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

>   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.

> DRV_WD_INTEL_TCO

>   This component includes Intel TCO Watchdog driver. This is 3rdparty driver provided by Kontron. Se the driver documenation for further details.

> DRV_W83627

>   This component includes W83627 sensor driver. This is 3rdparty driver provided by Kontron. Se the driver documenation for further details.

> DRV_RTC_MC146818 - MC146818 RTC clock driver.

>   This is the vxBus compliant driver which implements the functionality
>   specific to the the MC146818 real time clock Timer. It doesn't implement
>   functionality of standard MC146818 timer driver but adds RTC time functions

>   User application is able to use VxBus custom methods defined for this driver:

>           METHOD_DECL(vxbRtcGet)
>           METHOD_DECL(vxbRtcSet)

>   and the methods should be called as

>           struct tm t;

>           vxbDevMethodRun(DEVMETHOD_CALL(vxbRtcGet), &t);
>           vxbDevMethodRun(DEVMETHOD_CALL(vxbRtcSet), &t);

> INCLUDE_TTY_DEV

>   This module provides support for the serial interfaces COM1 (/tyCo/0) and COM2 (/tyCo/1) including hardware flow control. The number of supported interfaces is controlled with NUM_TTY in config.h.

> KONTRON_KEAPI_BSP_SUPPORT

>   This component provides support for KEAPI. The W83672 and SMBus PCH drivers are required. KEAPI uses the Winbond watchdog which is also used by BIOS. The following watchdog behaviour is implemented:

>   - | the BIOS watchdog settings are used when watchdog specific KEAPI functions are not used
>   - | keapiWatchdogTrigger and keapiWatchdogDisable stop the BIOS watchdog if enabled
>   - | keapiWatchdogEnable changes the BIOS timeout if enabled
>   - | keapiWatchdogEnable works only when the BIOS timeout if enabled or DRV_WD_INTEL_TCO is also enabled

#### Other 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

>     http://kontron.bsp/SpecialConsiderations.html Special Considerations for I86 platforms

#### KNOWN PROBLEMS

> The VTIN temperature sensor is not hardware connected (the FEATURE connector pin 23). BIOS and keapiGetChipsetTemp can show/return an arbitrary (for example negative) value.

#### SEE ALSO

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