fastboot: implement fastbootd in twrp

fastbootd is a userspace daemon that runs in the recovery
ramdisk. It allows writing single partitions to the super
partition via fastboot CLI. When TWRP sees the fastboot option
in the misc partition during startup, it will start with
the fastbootd page and fastbootd running. Otherwise it will
run recovery normally.

Change-Id: Id7b12d29ef21dbd5950dc884dd1cd788f25357f0
28 files changed
tree: d5f87d3df96c6b93f2726aca364465ef99ef0a7f
  1. .github/
  2. adbbu/
  3. applypatch/
  4. attr/
  5. bmlutils/
  6. boot_control/
  7. bootloader_message/
  8. crypto/
  9. dosfstools/
  10. edify/
  11. etc/
  12. exfat/
  13. fastboot/
  14. fb2png/
  15. flashutils/
  16. fonts/
  17. fuse/
  18. fuse_sideload/
  19. gpt/
  20. gui/
  21. htcdumlock/
  22. injecttwrp/
  23. install/
  24. libblkid/
  25. libcrecovery/
  26. libmincrypt/
  27. libpixelflinger/
  28. libtar/
  29. minadbd/
  30. minadbd21/
  31. minui/
  32. minuitwrp/
  33. minzip/
  34. misc_writer/
  35. mmcutils/
  36. mtdutils/
  37. mtp/
  38. openaes/
  39. orscmd/
  40. otafault/
  41. otautil/
  42. ozip_decrypt/
  43. pigz/
  44. prebuilt/
  45. recovery_ui/
  46. res/
  47. res-hdpi/
  48. res-mdpi/
  49. res-xhdpi/
  50. res-xxhdpi/
  51. res-xxxhdpi/
  52. scripts/
  53. sepolicy/
  54. simg2img/
  55. tests/
  56. tools/
  57. twrpDigest/
  58. twrpTarMain/
  59. uncrypt/
  60. update_verifier/
  61. updater/
  62. updater_sample/
  63. verifier28/
  64. .clang-format
  65. .gitignore
  66. Android.bp
  67. Android.mk
  68. BasePartition.cpp
  69. bootloader.h
  70. CleanSpec.mk
  71. common.h
  72. data.cpp
  73. data.hpp
  74. exclude.cpp
  75. exclude.hpp
  76. find_file.cpp
  77. find_file.hpp
  78. fixContexts.cpp
  79. fixContexts.hpp
  80. fsck_unshare_blocks.cpp
  81. fsck_unshare_blocks.h
  82. fuse.h
  83. infomanager.cpp
  84. infomanager.hpp
  85. interlace-frames.py
  86. legacy_properties.h
  87. mounts.c
  88. NOTICE
  89. openrecoveryscript.cpp
  90. openrecoveryscript.hpp
  91. OWNERS
  92. partition.cpp
  93. partitionmanager.cpp
  94. partitions.hpp
  95. PREUPLOAD.cfg
  96. progresstracking.cpp
  97. progresstracking.hpp
  98. README.md
  99. recovery-persist.cpp
  100. recovery-persist.rc
  101. recovery-refresh.cpp
  102. recovery-refresh.rc
  103. recovery.cpp
  104. recovery.h
  105. recovery_main.cpp
  106. recovery_ui.h
  107. startupArgs.cpp
  108. startupArgs.hpp
  109. tarWrite.c
  110. tarWrite.h
  111. twcommon.h
  112. twinstall.cpp
  113. twinstall.h
  114. twinstallorig.h
  115. twrp-functions.cpp
  116. twrp-functions.hpp
  117. twrp.cpp
  118. twrpAdbBuFifo.cpp
  119. twrpAdbBuFifo.hpp
  120. twrpApex.cpp
  121. twrpApex.hpp
  122. twrpDigestDriver.cpp
  123. twrpDigestDriver.hpp
  124. twrpRepacker.cpp
  125. twrpRepacker.hpp
  126. twrpTar.cpp
  127. twrpTar.h
  128. twrpTar.hpp
  129. variables.h