Add init.firstboot.sh, for factory use case

In the factory they need an automated way to shut down the device after
setupwizard finishes, but we also don't want to let them talk to Android
over USB on a user / locked device.

When bootmode is "firstboot" (Set by bootloader), the device will wait
for USB cable to be disconnected, then shut down.

Bug: 110896488
Change-Id: Ic0b7d65cfc8727c74be507a858f32a68199d5fee
Merged-In: Ib09460b242a7c2149f816f8a13cca698e02745e7
3 files changed
tree: 54e38c9afa017a99400876b12da47f589bb612b5
  1. acdbdata/
  2. audio/
  3. bluetooth/
  4. bonito/
  5. dumpstate/
  6. factory-images_bonito/
  7. factory-images_sargo/
  8. gpt-utils/
  9. health/
  10. hidl/
  11. json-c/
  12. keymaster/
  13. nfc/
  14. overlay/
  15. permissions/
  16. pixelstats/
  17. power-libperfmgr/
  18. recovery/
  19. sargo/
  20. sdm710/
  21. seccomp_policy/
  22. self-extractors/
  23. self-extractors_sargo/
  24. sensors/
  25. thermal/
  26. usb/
  27. vibrator/
  28. voice_processing/
  29. vr/
  30. .clang-format
  31. .gitignore
  32. Android.bp
  33. Android.mk
  34. AndroidProducts.mk
  35. aosp_bonito.mk
  36. aosp_sargo.mk
  37. audio_effects.xml
  38. audio_platform_info_intcodec_b4.xml
  39. audio_platform_info_intcodec_b4dev.xml
  40. audio_platform_info_intcodec_s4.xml
  41. audio_platform_info_intcodec_s4dev.xml
  42. audio_policy_configuration.xml
  43. audio_policy_configuration_a2dp_offload_disabled.xml
  44. audio_policy_volumes.xml
  45. board-info.txt
  46. BoardConfig-common.mk
  47. CleanSpec.mk
  48. compatibility_matrix.xml
  49. config.fs
  50. default-permissions.xml
  51. device-audio-mfg.mk
  52. device-bonito.mk
  53. device-common.mk
  54. device-sargo.mk
  55. device.mk
  56. device_framework_matrix.xml
  57. framework_manifest.xml
  58. fstab.hardware
  59. gps.conf
  60. gps_debug.conf
  61. graphite_ipc_platform_info.xml
  62. init.common.rc
  63. init.edge_sense.sh
  64. init.firstboot.sh
  65. init.hardware.chamber.rc.userdebug
  66. init.hardware.diag.rc.user
  67. init.hardware.diag.rc.userdebug
  68. init.hardware.mpssrfs.rc.user
  69. init.hardware.mpssrfs.rc.userdebug
  70. init.hardware.rc
  71. init.hardware.usb.rc
  72. init.insmod.cfg
  73. init.insmod.sh
  74. init.logging.rc
  75. init.power.rc
  76. init.qcom.devstart.sh
  77. init.qcom.ipastart.sh
  78. init.qcom.wlan.sh
  79. init.radio.sh
  80. init.ramoops.sh
  81. init.recovery.hardware.device.rc
  82. init.recovery.hardware.rc
  83. lowi.conf
  84. manifest.xml
  85. manifest_userdebug.xml
  86. media_codecs.xml
  87. media_codecs_c2.xml
  88. media_codecs_google_audio.xml
  89. media_codecs_performance.xml
  90. media_codecs_performance_c2.xml
  91. media_profiles_V1_0.xml
  92. mixer_paths_intcodec_b4.xml
  93. mixer_paths_intcodec_s4.xml
  94. OWNERS
  95. p2p_supplicant_overlay.conf
  96. powerhint.json
  97. preloads_copy.sh
  98. recovery.wipe
  99. sec_config
  100. sound_trigger_mixer_paths.xml
  101. sound_trigger_platform_info.xml
  102. system.prop
  103. thermal-engine-bonito.conf
  104. thermal-engine-sargo.conf
  105. ueventd.hardware.rc
  106. uinput-fpc.idc
  107. uinput-fpc.kl
  108. utils.mk
  109. vendorsetup.sh
  110. WCNSS_qcom_cfg.ini
  111. wifi_concurrency_cfg.txt
  112. wpa_supplicant_overlay.conf
  113. wpa_supplicant_wcn.conf