summaryrefslogtreecommitdiffstats
path: root/docs/high-level-api/TipsAndTricks/HALs.md
diff options
context:
space:
mode:
authorLoïc Collignon <loic.collignon@iot.bzh>2018-11-29 15:29:54 +0100
committerLoïc Collignon <loic.collignon@iot.bzh>2018-11-29 15:29:54 +0100
commit2610bf62ef76f4120a5f76dd0e5eb1e51538b41b (patch)
tree5a54c544bdfbab30601ef4c9cf4ebf554bc232e6 /docs/high-level-api/TipsAndTricks/HALs.md
parent04f89b1c4f49372aea2f9d1c7e0adad5fb8bd99b (diff)
Backport of audio documentation from masterflounder_6.0.3flounder/6.0.36.0.3
Documentation was available only on master. New documentation website is now by branch, so documentation should be available on both branches. Bug: SPEC-1993 Change-Id: I55484d5c1f28ae1e7fa927533b3dd862a03ed207 Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
Diffstat (limited to 'docs/high-level-api/TipsAndTricks/HALs.md')
-rw-r--r--docs/high-level-api/TipsAndTricks/HALs.md46
1 files changed, 46 insertions, 0 deletions
diff --git a/docs/high-level-api/TipsAndTricks/HALs.md b/docs/high-level-api/TipsAndTricks/HALs.md
new file mode 100644
index 0000000..4c2ead6
--- /dev/null
+++ b/docs/high-level-api/TipsAndTricks/HALs.md
@@ -0,0 +1,46 @@
+# HALs
+
+HALs are known as json files in 4a, they are stored in
+**/usr/libexec/agl/4a-hal**.
+
+Enabled HALs can be found in the **etc** subfolder, and disabled HALs in
+**etc.available**.
+
+You can enable and disable HALs just by moving the corresponding json file from
+one folder to the other.
+
+Example:
+
+```bash
+user@machine$ ls etc etc.available/
+etc:
+hal-4a-csl-cm106-8ch-usb.json
+
+etc.available/:
+hal-4a-2ch-generic-usb.json hal-4a-intel.json
+hal-4a-ensoniq.json hal-4a-jabra.json
+hal-4a-intel-minnow.json hal-4a-rcar-m3.json
+hal-4a-intel-qemu.json hal-4a-rcar-m3kf.json
+
+user@machine$ mv etc/hal-4a-csl-cm106-8ch-usb.json etc.available
+user@machine$ mv etc.available/hal-4a-2ch-generic-usb.json etc
+
+user@machine$ ls etc etc.available/
+etc:
+hal-4a-2ch-generic-usb.json
+
+etc.available/:
+hal-4a-csl-cm106-8ch-usb.json hal-4a-intel.json
+hal-4a-ensoniq.json hal-4a-jabra.json
+hal-4a-intel-minnow.json hal-4a-rcar-m3.json
+hal-4a-intel-qemu.json hal-4a-rcar-m3kf.json
+
+user@machine$ sync
+user@machine$ reboot
+```
+
+>NOTE: Even if multiple HAL are allowed, you have to make sure that they don't
+>provide the same streams, because it will cause a race condition in the high
+>level API. The first HAL providing the stream is used, any other are ignored.
+>
+>Also, the hardware used by enabled HALs should be available.