Host Channel Adapters (HCA's), are present in processor and IO nodes that produce and consume packets. InfiniBand™ Architecture Volume 1, calls the interface to the HCA as the Channel Interface (CI). CI represents the combination of the HCA hardware and associated drivers that provides access to the fabric. InfiniBand Architecture calls this CI interface as verbs. Verbs define the permitted operations on the adapter. Verbs are not an API spec, and does not address the OS specific mappings.  This section provides the required information for a HCA vendor to develop drivers to interface the hardware with the software infrastructure supported by this open implementation.

High Level Architecture

High level architecture of the InfiniBand software stack is shown below. HCA DDK provides the necessary infrastructure to enable a HCA vendor to interface with the InfiniBand framework provided by this Open Source effort. The HCA DDK project specifically addresses the following pieces.

Project Definition

The HCA Driver DDK project defines both the User-mode and Kernel-Mode interfaces as shown in the architecture diagram above. This project is targeted at IHVs developing support for their HCA products as an open source implementation. Vendors supporting open source implementations of their driver modules could contact the project administrator to add code and drivers under the HCA Drivers sections.


The primary goals of this project is to provide a vendor neutral, robust, efficient and maintainable interface definition that drives a mature, enterprise ready InfiniBand solution for Linux.

The software architecture is designed to address the following major requirements.

A complete list of detailed requirements can be obtained from the Software Architecture Specification, particularly in the "HCA Verbs Provider Driver" section.

Licensing Details

This software is being made available under a choice of one of two licenses. You may choose to be licensed under either the GNU General Public License (GPL) Version 2, June 1991, available at http://www.fsf.org/copyleft/gpl.html, or the Intel BSD + Patent License, further described here.

Project Deliverables

The deliverables of this project are: 


Actual sub-project timelines are not yet determined and will be formulated by the participants of the sub-project.

How to Get Involved

The best way to contribute to this effort is to get in touch with the contact for the area you are interested in.  New participants are welcomed and encouraged to join in this effort to bring InfiniBand support to the Linux operating system.

Project News

The project news is included on the SourceForge site.  Click the "News" link at the left under "SourceForge Services".

Last Updated: 08/02/2002 04:40 PM