HIDL HALs guarantee the Android core system (aka system.img or the framework) is backwards compatible. While Vendor Test Suite (VTS) tests ensure that HALs work as expected (e.g. 1.1 HAL tests are run on all 1.2 implementations), framework testing is needed to ensure that when a supported HAL (1.0, 1.1, or 1.2) is provided, the framework works properly with that HAL.
About HAL upgrades
There are two types of HAL upgrades: major and minor. Most systems include only one HAL implementation, but multiple implementations are supported. For example:
email@example.com # initial interface firstname.lastname@example.org # minor version upgrade email@example.com # another minor version upgrade ... firstname.lastname@example.org # major version upgrade ...
The system partition typically includes a framework daemon (such as
teleportd) that manages communication with a specific group of
HAL implementations. Alternatively, systems might instead
include a system library (such as
android.hardware.configstore-utils) that implements convenient
client behavior. In the example above,
teleportd must work no
matter what version of the HAL is installed on the device.