Simtec's USB stack Introduction

USB TridentThis is a platform independent USB stack which can be targeted to a customers system as required. OHCI type host controllers are supported with an example driver for a Philips ISP1161.

Software Description

The Simtec USB stack is available as a complete turnkey licenseable product for ABLE and RISC OS. Device drivers for differing OHCI host controllers for these OS can be written either by Simtec or by a third party as required (full documentation is available).

The Simtec USB stack can be supplied in source form to enable customer porting to other OS as required. This porting work can also be performed by Simtec.

The components of the stack are arranged in a layered manner.

The core stack is made up of three main areas

In addition to these core parts Simtec also have resources for

Code layout and output size

The Simtec USB stack is a complete implementation of the USB 1.1 specification. This implementation is in portable ANSI C code and is split into OS independent and OS dependent parts simplifying porting to new environments.

The build environment can be any ANSI C compiler, development has primarily been with GNU GCC and ARM Norcroft compilers. Make files for both GNU Make and AMU are available however other make systems may be used.

The environment independent sections of the code comes to around 45,000 lines. This includes (but is not limited to) code for the core module, the hub driver, OHCI driver for the ISP1161, several class drivers (HID,Printer,Mass storage(SCSI)).

Some specific values (for guidance only) for one very well supported OS (which includes three language APIs and numerous drivers) totals less than 15,000 lines. The compiled output for core components (core, ISP1161 driver and hub module) on this particular OS is around 64KB.

Other pages