HAL Groups and Handlers

List of HAL groups and the location of their associated handlers.

Some of the handlers are part of Symbian platform generic code and do not require porting.

HAL group

Location

Customizable?

Explicit registration required?

EHalGroupVariant

Variant

Yes. It needs to be implemented as the Asic::VariantHal() function defined by the Asic class.

See the template port: ...\template\template_variant\specific\variant.cpp

No. It is done automatically as part of the kernel initialization.

EHalGroupPower

Power model

Yes. It needs to be implemented when implementing the power model.

See the template port: ...\template\template_variant\specific\power.cpp

No. It is done automatically as part of the kernel initialization.

EHalGroupDisplay

LCD driver

Yes, when porting the LCD driver.

See the template port: ...\template\template_variant\specific\lcd.cpp.

Yes, during initialization of the driver.

EHalGroupDigitiser

Digitiser

Yes, when porting the digitiser.

See the template port: ...\template\template_variant\specific\xyin.cpp.

Yes, during initialization of the driver.

EHalGroupKeyboard

Keyboard driver

Yes, when porting the keyboard driver.

See the template port: ...\template\template_variant\specific\keyboard.cpp.

Yes, during initialization of the driver.

EHalGroupKernel

Kernel

No. It is part of Symbian platform generic code.

No. It is done automatically as part of the kernel initialization.

EHalGroupMedia

Media Driver

No. This is in the media driver LDD; this is a kernel extension and is implemented by Symbian platform.

Yes, during initialization of the driver/extension.

EHalGroupEmulator

Emulator

No. The emulator is a port of Symbian platform maintained by Symbian.

Yes, during 3rd phase initialization of the emulator variant.

EHalGroupSound

Sound driver

Unlikely—the only example is in the sound driver maintained for backwards compatibility with pre-Symbian hardware.

Yes

EHalGroupMouse

Emulator

Unlikely—the only example is in the emulator, which is a port of Symbian platform maintained by Symbian.

Yes