tree: a2c45ab60a41214142130b1d1051df94cac1e37a [path history] [tgz]
  1. fuzzers/
  2. init/
  3. seccomp/
  4. .project_alias
  5. adbd.cc
  6. adbd.h
  7. adbd_main.cc
  8. arcvm_sock_to_usb.cc
  9. arcvm_sock_to_usb.h
  10. arcvm_sock_to_usb_test.cc
  11. arcvm_usb_to_sock.cc
  12. arcvm_usb_to_sock.h
  13. arcvm_usb_to_sock_test.cc
  14. BUILD.gn
  15. OWNERS
  16. README.md
arc/adbd/README.md

ARC adbd ConfigFS / FunctionFS proxy for Developer Mode

This sets up the ADB gadget to allow Chromebooks that have the necessary hardware / kernel support to be able to use ADB over USB. This avoids exposing ConfigFS into the container.

See https://android.googlesource.com/platform/system/core/+/HEAD/adb/daemon/usb.cpp for more information.

Configuration

This service expects a file in /etc/arc/adbd.json to configure the service. The file should be a JSON with the following format:

{
  # Required, the USB product identifier for the SoC.
  "usbProductId": "0x520B",
  # Optional, a list of kernel modules that need to be loaded prior to starting
  # to setup the USB gadget.
  "kernelModules": [
    # Each one of these objects will become an invocation to modprobe(8).
    {
      # Required, the name of the kernel module.
      "name": "g_ffs",
      # Optional, the list of additional parameters to modprobe(8). These can be
      # used to further configure the module.
      "parameters": [
        "functions=adb"
      ]
    }
  ]
}