IB(5) Standards, Environments, and Macros IB(5)


ib - InfiniBand device driver configuration files


The InfiniBand (IB) bus is an I/O transport based on switched fabrics.
IB devices are managed by the ib(4D) nexus driver. There are three
categories of InfiniBand devices:

o IB port/IB VPPA/IB HCA_SVC devices

o IB IOC devices

o IB Pseudo devices

The IB port/IB VPPA/IB HCA_SVC devices are enumerated by way of the
ib.conf file. See ib(4D).

The IB IOC devices are enumerated using the InfiniBand Device management
class. See ibdm(4D).

For devices not in these two categories, most notably IB Pseudo devices,
the driver must provide configuration files to inform the system of the
IB devices to be created. Configuration parameters are represented in
the form of name value pairs you can retrieve using the DDI property
interfaces. See ddi_prop_op(9F) for details.

Configuration files for IB device drivers must identify the parent driver
explicitly as ib, and must create a string array property called unit-
address which is unique to this entry in the configuration file. Drivers
name ibport and ioc are reserved by ib(4D) and should not be used.

Each entry in the configuration file creates a prototype devinfo node.
Each node is assigned a unit address which is determined by the value of
the unit-address property. This property is only applicable to children
of the IB parent and is required. See driver.conf(5) for further details
on configuration file syntax.


Example 1: Sample configuration file

Here is a configuration file called ibgen.conf for an IB device driver
that implements a generic IB driver. This file creates a node called

# Copyright 2002-2003 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#ident "@(#)ibgen.conf 1.3 03/05/01 SMI"
name="ibgen" parent="ib" unit-address="0";


ib(4D), ibtl(4D), driver.conf(5), ddi_prop_op(9F)

February 19, 2004 IB(5)