1
0
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hmz007 6d24f2138b
Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56)
3 years ago
..
include/minadbd Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Android.bp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AndroidTest.xml Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
README.md Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
fuse_adb_provider.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
fuse_adb_provider.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
fuse_adb_provider_test.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
minadbd.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
minadbd_services.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
minadbd_services.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
minadbd_services_test.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago

README.md

minadbd

minadbd is analogous to the regular adbd, but providing the minimal services to support recovery-specific use cases. Generally speaking, adbd = libadbd + libadbd_services, whereas minadbd = libadbd + libminadbd_services.

Although both modules may be installed into the recovery image, only one of them, or none, can be active at any given time.

  • The start / stop of adbd is managed via system property sys.usb.config, when setting to adb or none respectively. Upon starting recovery mode, adbd is started in debuggable builds by default; otherwise adbd will stay off at all times in user builds. See the triggers in bootable/recovery/etc/init.rc.

  • minadbd is started by recovery as needed.

    • When requested to start minadbd, recovery stops adbd first, if it's running; it then forks and execs minadbd in a separate process.
    • minadbd talks to host-side adb server to get user requests.
      • minadbd handles some requests directly, e.g. querying device properties for rescue service.
      • minadbd communicates with recovery to fulfill requests regarding package installation. See the comments in bootable/recovery/install/adb_install.cpp for the IPC protocol between recovery and minadbd.
    • Upon exiting minadbd, recovery restarts adbd if it was previously running.