How is HIDL implemented for Bluetooth module?

884 Views Asked by At

I was browsing for AOSP bluetooth code to know more about HIDL.

As per my understanding, HIDL provides an interface between System services and HAL layer.

But as per official android doc here , It seems that HIDL is interface between bluetooth stack(/system/bt) and bluetooth firmware implementation.

enter image description here

Shouldn't HIDL be present between Bluetooth process services and bluetooth stack? Am I missing something here?

2

There are 2 best solutions below

0
On BEST ANSWER

The question you have to ask is which parts of the whole Bluetooth stack can be provided by Android and which parts have to be provided by the hardware/device manufacturer.

Google probably decided that all they need from a hardware/device manufacturer is what is described in the Bluetooth HIDL interfaces and that they provide the rest of the stack in the Android framework.

2
On

I guess your understanding is based on 2 and 3 in the diagram, but the diagram you posted here is based on 4, which you don't need the HAL layer. Vendor can just implement the HIDL interface.

enter image description here