--- a/hardware/interfaces/camera/provider/2.4/default/ExternalCameraProviderImpl_2_4.cpp
+++ b/hardware/interfaces/camera/provider/2.4/default/ExternalCameraProviderImpl_2_4.cpp
@@ -175,7 +175,31 @@ Return<void> ExternalCameraProviderImpl_2_4::getCameraDeviceInterface_V3_x(
     std::string cameraDevicePath, deviceVersion;
     bool match = matchDeviceName(mCfg.cameraIdOffset, cameraDeviceName,
                                  &deviceVersion, &cameraDevicePath);
-    ALOGD("cameraDevicePath:%s", cameraDevicePath.c_str());
+                    
+    ALOGD("rpdzkj --------------------------");             
+    ALOGD("rpdzkj mCfg.cameraIdOffset:%d", mCfg.cameraIdOffset);
+    ALOGD("rpdzkj cameraDeviceName:%s", cameraDeviceName.c_str());
+    ALOGD("rpdzkj deviceVersion:%s", deviceVersion.c_str());
+    ALOGD("rpdzkj cameraDevicePath:%s", cameraDevicePath.c_str());
+    ALOGD("rpdzkj --------------------------");   
+    
+    
+    
+               base::unique_fd fd(::open("/dev/video8", O_RDWR));
+    if (fd.get() < 0) {
+        ALOGD("rpdzkj %s open v4l2 device /dev/video8 failed", __FUNCTION__);
+    } else {
+       
+        ALOGD("rpdzkj %s open v4l2 device /dev/video8 successful", __FUNCTION__);
+        
+       if (0 == strcmp(cameraDevicePath.c_str(), "/dev/video8")) {
+               cameraDevicePath = "/dev/video0";
+       } 
+       else if (0 == strcmp(cameraDevicePath.c_str(), "/dev/video0")) {
+               cameraDevicePath = "/dev/video8";
+       }
+    }
+   
     if (!match) {
         _hidl_cb(Status::ILLEGAL_ARGUMENT, nullptr);
         return Void();
rpdzkj@50:~/fifth/jeff/rk3588/rk3588-android12.0$ 