VxBus and the Component Description Language
The course explains how VxWorks component description language (CDL) defines kernel components, how the VxWorks I/O system is used, and how the VxBus device driver infrastructure supports drivers.
Course Description
The course explains how VxWorks component description language (CDL) defines kernel components, how the VxWorks I/O system is used, and how the VxBus device driver infrastructure supports drivers.
Course Results
After this course, participants will be able to perform the following:
- Create and make add-on VxWorks kernel components available in the kernel configuration editor
- Implement a VxWorks I/O system driver and access I/O devices from both user and kernel space
- Explain the VxBus general architecture and describe how VxBus device drivers are managed and integrated
- Explain the roles of ttyDrv, tyLib, and implement and integrate a serial driver
- Implement and integrate a timer driver
- Initialize, configure and integrate END drivers
Hands-on exercises are included, utilizing the Wind River Simics® virtual target.
Products Supported
- VxWorks 7
- Wind River Workbench 4 for VxWorks 7
The Course is Suited For
- Developers planning to write a BSP for a new board on a supported architecture
- Device driver developers
- Application programmers interested in learning what occurs at the hardware level of a VxWorks image
- Senior engineers who will decide on a final production image of their product
Course Structure
- This eLearning course consists of lectures and lab sessions.
- Viewers use VxWorks 7, Workbench 4, and Simics to gain experience with the topics presented.
Syllabus
Component Description Language
- Language and file essentials
- Adding components
- LAB: Adding VxWorks 7 Components
VxWorks I/O Interface
- VxWorks I/O system
- I/O system structure
- User space and I/O facilities
- LAB: Creating a VxWorks I/O Device Driver
VxBus and Device Driver Fundamentals
- VxBus architecture
- The VXB_DRV structure
- Device driver methods
- VxBus initialization sequence
- Device discovery
- Resource management
- Dealing with device interdependency
- Driver debug aids
- Using I/O system with VxBus-compatible drivers
- LAB: Integrating a VxWorks I/O Device Driver with VxBus
Prerequisite Skills
- C programming, including experience with structures, pointers, pointers to structures, typedefs, macros, and bitwise operators
- Windows Functional knowledge of Linux or Windows host operating systems
- Experience using the Workbench debugger to debug target code