Camera2: Reduce redundant device dumpsys

Bug: 6243944
Change-Id: Ifdc15ee62156a7adfd133f0d0d8b772dd1e9d5a3
diff --git a/services/camera/libcameraservice/Camera2Device.cpp b/services/camera/libcameraservice/Camera2Device.cpp
index f6253d2..6eca7c0 100644
--- a/services/camera/libcameraservice/Camera2Device.cpp
+++ b/services/camera/libcameraservice/Camera2Device.cpp
@@ -117,20 +117,27 @@
 status_t Camera2Device::dump(int fd, const Vector<String16>& args) {
 
     String8 result;
+    int detailLevel = 0;
+    int n = args.size();
+    String16 detailOption("-d");
+    for (int i = 0; i + 1 < n; i++) {
+        if (args[i] == detailOption) {
+            String8 levelStr(args[i+1]);
+            detailLevel = atoi(levelStr.string());
+        }
+    }
 
-    result.appendFormat("  Camera2Device[%d] dump:\n", mId);
+    result.appendFormat("  Camera2Device[%d] dump (detail level %d):\n", mId);
 
-    result.appendFormat("    Static camera information metadata:\n");
-    write(fd, result.string(), result.size());
-    dump_indented_camera_metadata(mDeviceInfo, fd, 2, 6);
+    if (detailLevel > 0) {
+        result = "    Request queue contents:\n";
+        write(fd, result.string(), result.size());
+        mRequestQueue.dump(fd, args);
 
-    result = "    Request queue contents:\n";
-    write(fd, result.string(), result.size());
-    mRequestQueue.dump(fd, args);
-
-    result = "    Frame queue contents:\n";
-    write(fd, result.string(), result.size());
-    mFrameQueue.dump(fd, args);
+        result = "    Frame queue contents:\n";
+        write(fd, result.string(), result.size());
+        mFrameQueue.dump(fd, args);
+    }
 
     result = "    Active streams:\n";
     write(fd, result.string(), result.size());