diff --git a/linux-ramdump-parser-v2/debug_image_v2.py b/linux-ramdump-parser-v2/debug_image_v2.py
index 6a04104305c6d7fac2ab6e3faecd550c9f50cfc0..b937b364e7201b7b328e04a4316b9ca11d08c005 100644
--- a/linux-ramdump-parser-v2/debug_image_v2.py
+++ b/linux-ramdump-parser-v2/debug_image_v2.py
@@ -525,7 +525,10 @@ class DebugImage_v2():
                     getattr(DebugImage_v2, func)(self, dump_data_version, dump_data_addr, dump_data_addr + dump_data_len,
                                                  client_id, ram_dump)
 
-            self.qdss.dump_all(ram_dump)
+            self.qdss.dump_standard(ram_dump)
+            if not ram_dump.skip_qdss_bin:
+                self.qdss.save_etf_bin(ram_dump)
+                self.qdss.save_etr_bin(ram_dump)
             if ram_dump.qtf:
                 self.parse_qtf(ram_dump)
             if ram_dump.dcc:
diff --git a/linux-ramdump-parser-v2/parsers/debug_image.py b/linux-ramdump-parser-v2/parsers/debug_image.py
index 1d0d1efcc38c1ce56766705789ef0d49552ea2e8..827d86be7cb46888a1bc0abf25f3dee91f5d197d 100644
--- a/linux-ramdump-parser-v2/parsers/debug_image.py
+++ b/linux-ramdump-parser-v2/parsers/debug_image.py
@@ -190,7 +190,10 @@ class DebugImage(RamParser):
                                           client_end, client_name)
             print_out_str('--------')
 
-        self.qdss.dump_all(self.ramdump)
+        self.qdss.dump_standard(self.ramdump)
+        if not self.ramdump.skip_qdss_bin:
+            self.qdss.save_etf_bin(self.ramdump)
+            self.qdss.save_etr_bin(self.ramdump)
 
     def parse(self):
         # use the mem_dump_data variable to detect if debug image feature was compiled in,
diff --git a/linux-ramdump-parser-v2/qdss.py b/linux-ramdump-parser-v2/qdss.py
index 08e2cf163e001adc2adc2c69919611c22ce3bf8f..261d792a0740e0ffc4c1f122795a39fb212d57f2 100755
--- a/linux-ramdump-parser-v2/qdss.py
+++ b/linux-ramdump-parser-v2/qdss.py
@@ -455,10 +455,8 @@ class QDSSDump():
                 ram_dump.read_u32(self.dbgui_start + data_offset + (4 * i), False)))
         dbgui_out.close()
 
-    def dump_all(self, ram_dump):
+    def dump_standard(self, ram_dump):
         self.print_tmc_etf(ram_dump)
         self.print_tmc_etr(ram_dump)
         self.print_dbgui_registers(ram_dump)
         self.print_all_etm_register(ram_dump)
-        self.save_etf_bin(ram_dump)
-        self.save_etr_bin(ram_dump)
diff --git a/linux-ramdump-parser-v2/ramdump.py b/linux-ramdump-parser-v2/ramdump.py
index 798b1aacc4d583ad46d7480411a63df175a8b411..39268eec1fd33d33126a0bfde14c683c9884384e 100755
--- a/linux-ramdump-parser-v2/ramdump.py
+++ b/linux-ramdump-parser-v2/ramdump.py
@@ -441,6 +441,7 @@ class RamDump():
         self.thread_size = 8192
         self.qtf_path = options.qtf_path
         self.qtf = options.qtf
+        self.skip_qdss_bin = options.skip_qdss_bin
         self.dcc = False
         self.t32_host_system = options.t32_host_system or None
         self.ipc_log_test = options.ipc_test
diff --git a/linux-ramdump-parser-v2/ramparse.py b/linux-ramdump-parser-v2/ramparse.py
index 4c3cc9866b4892db3c867e61c969400339c56600..aadb2861a87b72a7a8582cbaea95035b56359ca8 100755
--- a/linux-ramdump-parser-v2/ramparse.py
+++ b/linux-ramdump-parser-v2/ramparse.py
@@ -134,6 +134,10 @@ if __name__ == '__main__':
                       help='Use QTF tool to parse and save QDSS trace data')
     parser.add_option('', '--qtf-path', dest='qtf_path',
                       help='QTF tool executable')
+    parser.add_option('', '--skip-qdss-bin', action='store_true',
+                      dest='skip_qdss_bin', help='Skip QDSS ETF and ETR '
+                      'binary data parsing from debug image (may save time '
+                      'if large ETM and ETR buffers are present)')
     parser.add_option('', '--ipc-help', dest='ipc_help',
                       help='Help for IPC Logging', action='store_true',
                       default=False)