VxWorks 6.x Device Drivers

Buy Now

Course Description

Course Results

Products Supported

Who Should Attend

Course Format

Please see course datasheet for further details here Buy Now

Course Details Summary

  • Duration: 4 Days
  • Course Information: View
  • Format: Lectures and Labs
  • Type: Instructor-led
  • Price/Schedule: View

The VxWorks® 6.x Device Drivers workshop provides engineers with an efficient way to acquire the skills necessary to develop device drivers using both legacy VxWorks and VxBus device driver models.

After this course, participants will be able to perform the following:

  • Optimize the development of a new device driver from scratch
  • Use coding conventions for ease of debugging and driver portability
  • Utilize common techniques for driver development
  • Write standard VxWorks I/O drivers
  • Distinguish between legacy VxWorks and VxBus drivers and determine which driver model is appropriate for a particular application
  • Design and integrate custom VxBus drivers
  • Migrate proprietary and legacy drivers to VxBus
  • VxWorks 6.8
  • Wind River® Workbench 3.2
  • Developers with general experience writing device drivers for embedded hardware systems
  • Engineers who will develop VxBus-enabled device drivers

Day 1

Introduction to VxWorks Device Drivers

  • Overview
  • VxWorks device driver models
  • Introduction to VxBus
  • VxBus terminology
  • VxWorks target initialization
  • VxWorks development environment
  • LAB: Getting started (booting, shells)

Driver Design Guidelines

  • Design goals
  • VxWorks coding conventions
  • Control structures
  • Error handling
  • Driver documentation and other resources
  • LAB: Common driver interactions

Day 2

VxBus Integration

  • Introduction
  • Location of resources
  • Required files
  • Essential source file elements
  • BSP configuration
  • VxWorks component configuration
  • LAB: Integrating a VxBus driver

VxBus Initialization

  • VxBus driver initialization sequence
  • Other driver features
  • VxBus show routines
  • Services available to VxBus drivers
  • LAB: Initializing a VxBus driver

Day 3

VxWorks I/O Interface

  • Introduction
  • Standard I/O
  • Support routines
  • Supporting select( )
  • I/O access from user space
  • LAB: VxWorks I/O interface

VxWorks Serial Drivers

  • Overview
  • ttyDrv
  • Driver routines
  • Initialization
  • Supporting the WDB agent

Polling and Interrupts

  • Interrupt handling
  • Polling
  • Design considerations
  • LAB: Polling and interrupts

Day 4

Using VxBus Drivers

  • Using methods
  • Using a standard I/O model to integrate a VxBus driver into a VIP
  • Dynamic loading/unloading
  • Removing a device
  • LAB: Using VxBus

Migration to VxBus

  • Generic migration strategy
  • Porting OS-agnostic drivers to VxBus
  • LAB: Migrating a legacy LED driver to VxBus

VxBus Class-Specific Drivers

  • Interrupt handling
  • Interrupt controllers
  • PLB and PCI buses
  • VxBus-compliant serial drivers
  • VxBus-compliant network drivers
  • VxBus-compliant timer drivers

USE CASE: CUSTOM END DRIVER

Prerequisite Course

Prerequisite Skills

  • Three to five years OS/programming experience
  • One year embedded device programming experience
  • Familiarity with device drivers
  • Basic understanding of reading and writing device registers
  • This four-day expert-led course consists of lectures and lab sessions.
  • Attendees use VxWorks 6.8 and Wind River Workbench 3.2 to gain experience with the topics presented.
  • Participants examine and exercise simulated network topologies in hands-on labs.
  • Participants receive individual guidance from an expert engineer who has extensive experience with Wind River technologies.
Subscribe to Wind River