aboutsummaryrefslogtreecommitdiff
path: root/en/devices/architecture/hal-types.html
diff options
context:
space:
mode:
Diffstat (limited to 'en/devices/architecture/hal-types.html')
-rw-r--r--en/devices/architecture/hal-types.html33
1 files changed, 17 insertions, 16 deletions
diff --git a/en/devices/architecture/hal-types.html b/en/devices/architecture/hal-types.html
index 52cb869f..3df8d61c 100644
--- a/en/devices/architecture/hal-types.html
+++ b/en/devices/architecture/hal-types.html
@@ -21,19 +21,20 @@
limitations under the License.
-->
-<p>As part of the Android O rearchitecture of the lower layers of the Android OS
-to support better modularity, devices running Android O must support binderized
+<p>As part of the Android 8.0 rearchitecture of the lower layers of the Android OS
+to support better modularity, devices running Android 8.0 must support binderized
or passthrough HALs:</p>
<ul>
<li><strong>Binderized HALs</strong>. HALs expressed in HAL interface definition
-language (HIDL). These HALs replace both conventional and legacy HALs used in
-earlier versions of Android and can serve the HAL in binderized mode. All
-devices launching with Android O or later must support binderized HALs only.</li>
+language (HIDL). These HALs replace both conventional and legacy HALs used in earlier versions of
+Android. In a Binderized HAL, the Android framework and HALs communicate with each other using
+binder inter-process communication (IPC) calls. All devices launching with Android 8.0 or later must
+support binderized HALs only.</li>
<li><strong>Passthrough HALs</strong>. A HIDL-wrapped conventional or legacy
HAL. These HALs wrap existing HALs and can serve the HAL in binderized and
-same-process (passthrough) modes. Devices upgrading to Android O can use
+same-process (passthrough) modes. Devices upgrading to Android 8.0 can use
passthrough HALs.</li>
</ul>
@@ -49,7 +50,7 @@ passthrough HALs.</li>
</tr>
<tr>
-<td><em>Launch with Android O</em></td>
+<td><em>Launch with Android 8.0</em></td>
<td>HALs listed in <a href="#passthrough">Passthrough HALs</a> must be
passthrough.</td>
<td>All other HALs are binderized (including HALs that are vendor
@@ -57,7 +58,7 @@ extensions).</td>
</tr>
<tr>
-<td rowspan=2><em>Upgrade to Android O</em></td>
+<td rowspan=2><em>Upgrade to Android 8.0</em></td>
<td>HALs listed in <a href="#passthrough">Passthrough HALs</a> must be
passthrough.</td>
<td>HALs listed in <a href="#binderized">Binderized HALs</a> must be
@@ -78,19 +79,19 @@ devices regardless of whether they are launch devices or upgrade devices:</p>
<ul>
<li><code>android.hardware.biometrics.fingerprint@2.1</code>. Replaces
-<code>fingerprintd</code> which is no longer in Android O.</li>
-<li><code>android.hardware.configstore@1.0</code>. New in Android O.</li>
+<code>fingerprintd</code> which is no longer in Android 8.0.</li>
+<li><code>android.hardware.configstore@1.0</code>. New in Android 8.0.</li>
<li><code>android.hardware.dumpstate@1.0</code>. The original interface provided
by this HAL could not be shimmed and was changed. Because of this,
<code>dumpstate_board</code> must be re-implemented on a given device (this is
an optional HAL).</li>
<li><code>android.hardware.graphics.allocator@2.0</code>. Required to be
-binderized in Android O so file descriptors don't have to be shared between
+binderized in Android 8.0 so file descriptors don't have to be shared between
trusted and untrusted processes.</li>
<li><code>android.hardware.radio@1.0</code>. Replaces the interface provided by
<code>rild</code> which lives in its own process.</li>
-<li><code>android.hardware.usb@1.0</code>. New in Android O.</li>
-<li><code>android.hardware.wifi@1.0</code>. New in Android O, replaces the
+<li><code>android.hardware.usb@1.0</code>. New in Android 8.0.</li>
+<li><code>android.hardware.wifi@1.0</code>. New in Android 8.0, replaces the
legacy Wi-Fi HAL library that was loaded into <code>system_server</code>.</li>
<li><code>android.hardware.wifi.supplicant@1.0</code>. A HIDL interface over the
existing <code>wpa_supplicant</code> process.</li>
@@ -133,7 +134,7 @@ passthrough)</li>
<h2 id=legacy>Conventional &amp; legacy HALs</h2>
-<p>Conventional HALs (deprecated in Android O) are interfaces that conform to a
+<p>Conventional HALs (deprecated in Android 8.0) are interfaces that conform to a
specific named and versioned application binary interface (ABI). The bulk of
Android system interfaces
(<a href="https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/camera3.h">camera</a>,
@@ -142,10 +143,10 @@ Android system interfaces
etc.) are in the form of conventional HALs, which are defined under
<a href="https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware">hardware/libhardware/include/hardware</a>.</p>
-<p>Legacy HALs (also deprecated in Android O) are interfaces that predate
+<p>Legacy HALs (also deprecated in Android 8.0) are interfaces that predate
conventional HALs. A few important subsystems (Wi-Fi, Radio Interface Layer, and
Bluetooth) are legacy HALs. While there's no uniform or standardized way to
-describe a legacy HAL, anything predating Android O that is not a conventional
+describe a legacy HAL, anything predating Android 8.0 that is not a conventional
HAL is a legacy HAL. Parts of some legacy HALs are contained in
<a href="https://android.googlesource.com/platform/hardware/libhardware_legacy/+/master">libhardware_legacy</a>,
while other parts are interspersed throughout the codebase.</p>