Add configuration to enable USB camera

Mostly following the requirements from:
https://source.android.com/devices/camera/external-usb-cameras

Bug: 187214592
Test: adb shell dumpsys media.camera
Change-Id: I4083348d9af5af50b3b7046555dbbbd6f78f553c
diff --git a/device-common.mk b/device-common.mk
index e4bf0ae..45ad9e6 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -362,5 +362,11 @@
     android.hardware.light-service \
     lights-yukawa
 
+# Enable USB Camera
+PRODUCT_PACKAGES += android.hardware.camera.provider@2.4-impl
+PRODUCT_PACKAGES += android.hardware.camera.provider@2.4-external-service
+PRODUCT_COPY_FILES += \
+    device/amlogic/yukawa/hal/camera/external_camera_config.xml:$(TARGET_COPY_OUT_VENDOR)/etc/external_camera_config.xml
+
 # Include Virtualization APEX
 $(call inherit-product, packages/modules/Virtualization/apex/product_packages.mk)
diff --git a/hal/camera/external_camera_config.xml b/hal/camera/external_camera_config.xml
new file mode 100644
index 0000000..d6c14c5
--- /dev/null
+++ b/hal/camera/external_camera_config.xml
@@ -0,0 +1,17 @@
+<ExternalCamera>
+    <Provider>
+        <ignore> <!-- Internal video devices to be ignored by external camera HAL -->
+            <id>0</id>
+        </ignore>
+    </Provider>
+    <Device>
+        <MaxJpegBufferSize bytes="3145728"/>
+        <NumVideoBuffers count="4"/>
+        <NumStillBuffers count="2"/>
+        <FpsList>
+            <Limit width="640" height="480" fpsBound="30.0"/>
+            <Limit width="1280" height="720" fpsBound="30.0"/>
+            <Limit width="1920" height="1080" fpsBound="30.0"/>
+        </FpsList>
+    </Device>
+</ExternalCamera>
diff --git a/manifest.xml b/manifest.xml
index 6a7c191..b4f22f8 100755
--- a/manifest.xml
+++ b/manifest.xml
@@ -173,4 +173,14 @@
             <instance>default</instance>
         </interface>
     </hal>
+    <hal format="hidl">
+        <name>android.hardware.camera.provider</name>
+        <transport>hwbinder</transport>
+        <impl level="generic"></impl>
+        <version>2.4</version>
+        <interface>
+          <name>ICameraProvider</name>
+          <instance>external/0</instance>
+        </interface>
+    </hal>
 </manifest>
diff --git a/ueventd.rc b/ueventd.rc
index 7abdbba..7ab7fd1 100644
--- a/ueventd.rc
+++ b/ueventd.rc
@@ -11,5 +11,9 @@
 /dev/nanohub              0660   system     system
 /dev/nanohub_comms        0660   system     system
 
+/dev/video1               0660   system     camera
+/dev/video2               0660   system     camera
+/dev/video3               0660   system     camera
+
 /sys/class/leds/sei610\:red\:power	brightness	0666 system system
 /sys/class/leds/sei610\:blue\:bt	brightness	0666 system system