[audio] Convert all calls to GetChannel from C to LLCPP

The audio driver interface FIDL definition includes a method (GetVmo)
with an error (GetVmoError). Errors are implemented in FIDL as
unions and since now unions are all effectively xunions, FIDL
interfaces with errors are not supported by the C bindings.
This change does not convert all users of the audio driver
interface to use the full FIDL interface, but rather converts the
GetChannel call used in the legacy manually serialized interface from
the C bindings to the LLCPP bindings.  Without this change, even users
of the C bindings that would not call GetVmo would fail to compile. To
avoid this compilation error the GetVmo method was added to an allowed
list that "allow C bindings for libraries with xunions to be valid C
code" (see fxr/338112).

Test: Listening to audio on Astro connected to USB headphones.

Change-Id: Ia093de1cccbe27b74751a84caf84a55aa4cb9d1e
14 files changed
tree: 9eae7d1d077b44d5be6d9afc85527e205853c420
  1. boards/
  2. build/
  3. bundles/
  4. docs/
  5. examples/
  6. garnet/
  7. peridot/
  8. products/
  9. scripts/
  10. sdk/
  11. src/
  12. third_party/
  13. tools/
  14. zircon/
  15. .clang-format
  16. .clang-tidy
  17. .dir-locals.el
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. .style.yapf
  22. AUTHORS
  23. BUILD.gn
  24. CODE_OF_CONDUCT.md
  25. CONTRIBUTING.md
  26. LICENSE
  27. OWNERS
  28. PATENTS
  29. README.md
  30. rustfmt.toml
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.