A Frequently Asked Questions document for DDB is also available.
Complete specifications are available to MIPI members only. For more information on joining MIPI, please go to Join MIPI.
This MIPI Device Descriptor Block specification defines Services to transfer descriptor and configuration data between Devices on a MIPI Interconnect. This specification is used with other MIPI Alliance specifications as part of a complete system design.
The descriptor and configuration data, hereafter referred to as DDB Data, is comprised of several fields with each field representing a single data item.
The DDB specification allows for three levels of conformity, called Level 1, Level 2, and Level 3. Level 1 provides access to basic Device descriptor data fields as defined in this document. Level 2 provides getting and setting of DDB Data fields, using a sequence of bytes as access model for the Device’s fields. Level 3 provides the same functionality as Level 2, but uses a field ID-based access model. Level 2 and Level 3 include the Level 1 functionality. Level 2 and Level 3 are functional alternatives that may be supported individually or in combination.
For a given Device, a manufacturer may choose whether or not to support DDB. In addition, the manufacturer may choose to support only DDB Level 1, to support Level 2, to support Level 3 or to support both Level 2 and Level 3. For example, a simple Device such as a MEMS microphone may only need to convey limited information such as its manufacturer ID and device class to other Devices; in this case providing Level 1 suffices. A more complex Device such as a display module may need to provide additional descriptor data such as the display resolution and configuration information such as color depth to other Devices; this additional information can be provided by DDB Level 2 or by DDB Level 3.
This specification defines DDB Level 1 and Level 2 Services, Service Access Points (SAPs), Level 1 descriptor data fields, and the Level 2 data model framework for DDB Data. The DDB Data fields may be defined in a MIPI Interface specification, in a separate Device class specification, or in a manufacturer’s Device specification and are outside the scope of this document.
This specification also defines a reference protocol that may be used in the definition of the mapping of DDB Services onto the various MIPI Interfaces. The actual mapping is defined in separate, Interface specific, specifications and is outside the scope of this specification.
The DDB specification provides a common set of Services to dynamically read (get) descriptor and configuration data from Devices and to write (set) configuration data to Devices regardless of the Device type or the underlying Interconnect.
Descriptor data can be used in the Device discovery process to identify the available Devices and their class, e.g. microphone, display module, modem. Descriptor data can also be used to dynamically detect variability between Devices of the same class, e.g. the actual resolution of a display, allowing the user of a Device to adjust its use of the Device to be in accordance with its capabilities or properties. This is useful when dealing with second sourcing, dealing with evolution of Devices and for building product families.