diff --git a/dump-extensions/openpower-dumps/dump-extensions.cpp b/dump-extensions/openpower-dumps/dump-extensions.cpp
index 3b91842..c049fc9 100644
--- a/dump-extensions/openpower-dumps/dump-extensions.cpp
+++ b/dump-extensions/openpower-dumps/dump-extensions.cpp
@@ -50,6 +50,26 @@
         HOSTBOOT_DUMP_PATH, "hbdump", HOSTBOOT_DUMP_TMP_FILE_DIR,
         HOSTBOOT_DUMP_MAX_SIZE, HOSTBOOT_DUMP_MIN_SPACE_REQD,
         HOSTBOOT_DUMP_TOTAL_SIZE));
+
+    try
+    {
+        std::filesystem::create_directories(HARDWARE_DUMP_PATH);
+    }
+    catch (std::exception& e)
+    {
+        log<level::ERR>(
+            fmt::format("Failed to create hardware dump directory({})",
+                        HARDWARE_DUMP_PATH)
+                .c_str());
+        throw std::runtime_error("Failed to create hardware dump directory");
+    }
+
+    dumpList.push_back(std::make_unique<openpower::dump::hostdump::Manager<
+                           sdbusplus::com::ibm::Dump::Entry::server::Hardware>>(
+        bus, event, HARDWARE_DUMP_OBJPATH, HARDWARE_DUMP_OBJ_ENTRY,
+        HARDWARE_DUMP_PATH, "hwdump", HARDWARE_DUMP_TMP_FILE_DIR,
+        HARDWARE_DUMP_MAX_SIZE, HARDWARE_DUMP_MIN_SPACE_REQD,
+        HARDWARE_DUMP_TOTAL_SIZE));
 }
 } // namespace dump
 } // namespace phosphor
diff --git a/dump-extensions/openpower-dumps/meson.build b/dump-extensions/openpower-dumps/meson.build
index ac971a4..d7d99a3 100644
--- a/dump-extensions/openpower-dumps/meson.build
+++ b/dump-extensions/openpower-dumps/meson.build
@@ -19,8 +19,6 @@
 opconf_data.set_quoted('RESOURCE_DUMP_OBJ_ENTRY', get_option('RESOURCE_DUMP_OBJ_ENTRY'),
                       description : 'The resource dump entry D-Bus object path'
                     )
-
-
 opconf_data.set_quoted('HOSTBOOT_DUMP_OBJPATH', get_option('HOSTBOOT_DUMP_OBJPATH'),
                       description : 'The Hostboot dump manager D-Bus path'
                     )
@@ -42,6 +40,27 @@
 opconf_data.set('HOSTBOOT_DUMP_TOTAL_SIZE', get_option('HOSTBOOT_DUMP_TOTAL_SIZE'),
                description : 'Total size of the dump in kilo bytes'
              )
+opconf_data.set_quoted('HARDWARE_DUMP_OBJPATH', get_option('HARDWARE_DUMP_OBJPATH'),
+                      description : 'The hardware dump manager D-Bus path'
+                    )
+opconf_data.set_quoted('HARDWARE_DUMP_OBJ_ENTRY', get_option('HARDWARE_DUMP_OBJ_ENTRY'),
+                      description : 'The hardware dump entry D-Bus object path'
+                    )
+opconf_data.set_quoted('HARDWARE_DUMP_TMP_FILE_DIR', get_option('HARDWARE_DUMP_TMP_FILE_DIR'),
+                      description : 'Directory where hardwre dump pieces are stored for packaging'
+                    )
+opconf_data.set_quoted('HARDWARE_DUMP_PATH', get_option('HARDWARE_DUMP_PATH'),
+                     description : 'Directory where hardware dumps are placed'
+             )
+opconf_data.set('HARDWARE_DUMP_MAX_SIZE', get_option('HARDWARE_DUMP_MAX_SIZE'),
+               description : 'Maximum size of one hardware dump in kilo bytes'
+             )
+opconf_data.set('HARDWARE_DUMP_MIN_SPACE_REQD', get_option('HARDWARE_DUMP_MIN_SPACE_REQD'),
+               description : 'Minimum space required for one hardware dump in kilo bytes'
+             )
+opconf_data.set('HARDWARE_DUMP_TOTAL_SIZE', get_option('HARDWARE_DUMP_TOTAL_SIZE'),
+               description : 'Total size of the dump in kilo bytes'
+            )
 
 configure_file(configuration : opconf_data,
                output : 'openpower_dumps_config.h'
diff --git a/meson_options.txt b/meson_options.txt
index 96eb650..c7eba24 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -139,30 +139,72 @@
         value : '/xyz/openbmc_project/dump/hostboot',
         description : 'The hostboot dump manager D-Bus object path'
       )
+
 option('HOSTBOOT_DUMP_OBJ_ENTRY', type : 'string',
         value : '/xyz/openbmc_project/dump/hostboot/entry',
         description : 'The Hostboot dump entry D-Bus object path'
       )
+
 # This value needs to be set from recipe as a common value with
 # packaging application.
 option('HOSTBOOT_DUMP_TMP_FILE_DIR', type : 'string',
         value : '/tmp/openpower-dumps/hostboot',
         description : 'Directory where hostboot dump pieces are stored for packaging'
       )
+
 option('HOSTBOOT_DUMP_PATH', type : 'string',
         value : '/var/lib/phosphor-debug-collector/hostbootdump/',
         description : 'Directory where Hostboot dumps are placed'
       )
+
 option('HOSTBOOT_DUMP_MAX_SIZE', type : 'integer',
         value : 102400,
         description : 'Maximum size of one Hostboot dump in kilo bytes'
       )
+
 option('HOSTBOOT_DUMP_MIN_SPACE_REQD', type : 'integer',
         value : 81920,
         description : 'Minimum space required for one Hostboot dump in kilo bytes'
       )
+
 option('HOSTBOOT_DUMP_TOTAL_SIZE', type : 'integer',
         value : 409600,
         description : 'Total size of the dump in kilo bytes'
       )
 
+# Hardware dump options
+
+option('HARDWARE_DUMP_OBJPATH', type : 'string',
+        value : '/xyz/openbmc_project/dump/hardware',
+        description : 'The hardware dump manager D-Bus object path'
+      )
+
+option('HARDWARE_DUMP_OBJ_ENTRY', type : 'string',
+        value : '/xyz/openbmc_project/dump/hardware/entry',
+        description : 'The hardware dump entry D-Bus object path'
+      )
+
+option('HARDWARE_DUMP_TMP_FILE_DIR', type : 'string',
+        value : '/tmp/openpower-dumps/hardware',
+        description : 'Directory where hardware dump pieces are stored for packaging'
+      )
+
+option('HARDWARE_DUMP_PATH', type : 'string',
+        value : '/var/lib/phosphor-debug-collector/hardwaredump/',
+        description : 'Directory where hardware dumps are placed'
+      )
+
+option('HARDWARE_DUMP_MAX_SIZE', type : 'integer',
+        value : 102400,
+        description : 'Maximum size of one hardware dump in kilo bytes'
+      )
+
+option('HARDWARE_DUMP_MIN_SPACE_REQD', type : 'integer',
+        value : 81920,
+        description : 'Minimum space required for one hardware dump in kilo bytes'
+      )
+
+option('HARDWARE_DUMP_TOTAL_SIZE', type : 'integer',
+        value : 409600,
+        description : 'Total size of the hardware dump in kilo bytes'
+      )
