This document describes the entry points for each type of device driver.
The Device Driver framework supports the following device driver models:
The LDD-PDD model: drivers of this type must be loaded by a user application.
The kernel extension model: drivers of this type are loaded by the Kernel at boot up.
The combined model is a combination of the kernel extension and LDD-PDD models. This is used when the driver must perform some initialization at the time of boot up.
For each model, the Kernel provides a standard API for the entry points to the driver.
For a standard LDD-PDD driver, the driver entry points are defined by the following macros:
For LDDs, use DECLARE_STANDARD_LDD. For example:
// LDD entry point DECLARE_STANDARD_LDD() { // create LDD factory object return new DExDriverLogicalDevice; }
For PDDs, use DECLARE_STANDARD_PDD. For example:
// PDD entry point DECLARE_STANDARD_PDD() { // create PDD factory object return new DExH4PhysicalDevice; }
For a kernel extension, the entry point is defined by the macro DECLARE_STANDARD_EXTENSION.
For drivers with a combined model, the entry points are defined by the following macros:
For LDDs, use DECLARE_EXTENSION_LDD.
For PDDs, use DECLARE_EXTENSION_PDD.
A driver creates factory objects in the entry point routines.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.