diff --git a/meson.build b/meson.build
index 9b87a3d..a172113 100644
--- a/meson.build
+++ b/meson.build
@@ -14,12 +14,12 @@
     meson_version: '>=1.1.1',
 )
 
-if(get_option('buildtype') == 'minsize')
-    add_project_arguments('-DNDEBUG', language : 'cpp')
+if (get_option('buildtype') == 'minsize')
+    add_project_arguments('-DNDEBUG', language: 'cpp')
 endif
 
 # Disable lto when compiling with no optimization
-if(get_option('optimization') == '0')
+if (get_option('optimization') == '0')
     add_project_arguments('-fno-lto', language: 'cpp')
     message('Disabling lto because optimization is disabled')
 endif
@@ -35,7 +35,7 @@
 build_verify_signature = get_option('verify-signature').allowed()
 
 if not cxx.has_header('CLI/CLI.hpp')
-      error('Could not find CLI.hpp')
+    error('Could not find CLI.hpp')
 endif
 
 summary('building for device type', '@0@'.format(get_option('device-type')))
@@ -49,16 +49,25 @@
 subs.set_quoted('ACTIVE_FWD_ASSOCIATION', 'active')
 subs.set('ACTIVE_PNOR_MAX_ALLOWED', 2)
 subs.set_quoted('ACTIVE_REV_ASSOCIATION', 'software_version')
-subs.set_quoted('ASSOCIATIONS_INTERFACE', 'xyz.openbmc_project.Association.Definitions')
+subs.set_quoted(
+    'ASSOCIATIONS_INTERFACE',
+    'xyz.openbmc_project.Association.Definitions',
+)
 subs.set_quoted('BUSNAME_UPDATER', 'org.open_power.Software.Host.Updater')
 subs.set_quoted('CHASSIS_STATE_OBJ', 'xyz.openbmc_project.State.Chassis')
-subs.set_quoted('CHASSIS_STATE_OFF', 'xyz.openbmc_project.State.Chassis.PowerState.Off')
+subs.set_quoted(
+    'CHASSIS_STATE_OFF',
+    'xyz.openbmc_project.State.Chassis.PowerState.Off',
+)
 subs.set_quoted('CHASSIS_STATE_PATH', '/xyz/openbmc_project/state/chassis0')
 subs.set_quoted('FILEPATH_IFACE', 'xyz.openbmc_project.Common.FilePath')
 subs.set_quoted('FUNCTIONAL_FWD_ASSOCIATION', 'functional')
 subs.set_quoted('FUNCTIONAL_REV_ASSOCIATION', 'software_version')
 subs.set_quoted('HASH_FILE_NAME', 'hashfunc')
-subs.set_quoted('HOST_INVENTORY_PATH', '/xyz/openbmc_project/inventory/system/chassis')
+subs.set_quoted(
+    'HOST_INVENTORY_PATH',
+    '/xyz/openbmc_project/inventory/system/chassis',
+)
 subs.set_quoted('IMG_DIR', '/tmp/images')
 subs.set_quoted('MANIFEST_FILE', 'MANIFEST')
 subs.set_quoted('MAPPER_BUSNAME', 'xyz.openbmc_project.ObjectMapper')
@@ -70,10 +79,19 @@
 subs.set_quoted('PNOR_ACTIVE_PATH', '/var/lib/phosphor-software-manager/pnor/')
 subs.set_quoted('PNOR_MSL', get_option('msl'))
 subs.set_quoted('PNOR_PRSV', '/media/pnor-prsv')
-subs.set_quoted('PNOR_PRSV_ACTIVE_PATH', '/var/lib/phosphor-software-manager/pnor/prsv')
-subs.set_quoted('PNOR_RO_ACTIVE_PATH', '/var/lib/phosphor-software-manager/pnor/ro')
+subs.set_quoted(
+    'PNOR_PRSV_ACTIVE_PATH',
+    '/var/lib/phosphor-software-manager/pnor/prsv',
+)
+subs.set_quoted(
+    'PNOR_RO_ACTIVE_PATH',
+    '/var/lib/phosphor-software-manager/pnor/ro',
+)
 subs.set_quoted('PNOR_RO_PREFIX', '/media/pnor-ro-')
-subs.set_quoted('PNOR_RW_ACTIVE_PATH', '/var/lib/phosphor-software-manager/pnor/rw')
+subs.set_quoted(
+    'PNOR_RW_ACTIVE_PATH',
+    '/var/lib/phosphor-software-manager/pnor/rw',
+)
 subs.set_quoted('PNOR_RW_PREFIX', '/media/pnor-rw-')
 subs.set_quoted('PNOR_SIGNED_IMAGE_CONF_PATH', '/etc/activationdata/')
 subs.set_quoted('PNOR_TOC_FILE', 'pnor.toc')
@@ -90,9 +108,7 @@
 subs.set_quoted('UPDATEABLE_REV_ASSOCIATION', 'software_version')
 subs.set_quoted('VERSION_IFACE', 'xyz.openbmc_project.Software.Version')
 subs.set('WANT_SIGNATURE_VERIFY', build_verify_signature)
-configure_file(
-    output: 'config.h',
-    configuration: subs)
+configure_file(output: 'config.h', configuration: subs)
 
 if get_option('device-type') == 'ubi'
     extra_sources += [
@@ -101,9 +117,7 @@
         'ubi/serialize.cpp',
         'ubi/watch.cpp',
     ]
-    extra_scripts += [
-        'ubi/obmc-flash-bios',
-    ]
+    extra_scripts += ['ubi/obmc-flash-bios']
     extra_unit_files += [
         'ubi/obmc-flash-bios-cleanup.service',
         'ubi/obmc-flash-bios-ubiattach.service',
@@ -116,14 +130,8 @@
 endif
 
 if get_option('device-type') == 'mmc'
-    extra_sources += [
-        'mmc/activation_mmc.cpp',
-        'mmc/item_updater_mmc.cpp',
-    ]
-    extra_scripts += [
-        'mmc/obmc-flash-bios',
-        'mmc/recover_pnor_files',
-    ]
+    extra_sources += ['mmc/activation_mmc.cpp', 'mmc/item_updater_mmc.cpp']
+    extra_scripts += ['mmc/obmc-flash-bios', 'mmc/recover_pnor_files']
     extra_unit_files += [
         'mmc/obmc-flash-bios-init.service',
         'mmc/obmc-flash-bios-patch.service',
@@ -144,21 +152,15 @@
         'static/item_updater_static.cpp',
         'static/activation_static.cpp',
     ]
-    extra_unit_files += [
-        'openpower-pnor-update@.service',
-    ]
+    extra_unit_files += ['openpower-pnor-update@.service']
 endif
 
 if build_verify_signature
-    extra_sources += [
-        'image_verify.cpp'
-    ]
+    extra_sources += ['image_verify.cpp']
 endif
 
 if build_vpnor
-    extra_scripts += [
-        'vpnor/obmc-vpnor-util',
-    ]
+    extra_scripts += ['vpnor/obmc-vpnor-util']
     extra_unit_files += [
         'vpnor/obmc-vpnor-check-clearvolatile@.service',
         'vpnor/obmc-vpnor-enable-clearvolatile@.service',
@@ -185,22 +187,19 @@
         dependency('sdbusplus'),
         dependency('sdeventplus'),
     ],
-    install: true
+    install: true,
 )
 
 executable(
     'openpower-pnor-msl',
-    [
-        'msl_verify.cpp',
-        'msl_verify_main.cpp',
-    ],
+    ['msl_verify.cpp', 'msl_verify_main.cpp'],
     dependencies: [
         dependency('libsystemd'),
         dependency('phosphor-dbus-interfaces'),
         dependency('phosphor-logging'),
         dependency('sdbusplus'),
     ],
-    install: true
+    install: true,
 )
 
 fs = import('fs')
@@ -209,7 +208,7 @@
         s,
         install: true,
         install_mode: 'rwxr-xr-x',
-        install_dir: get_option('bindir')
+        install_dir: get_option('bindir'),
     )
 endforeach
 
@@ -220,37 +219,49 @@
 
 systemd_system_unit_dir = dependency('systemd').get_variable(
     'systemdsystemunitdir',
-    pkgconfig_define: ['prefix', get_option('prefix')])
+    pkgconfig_define: ['prefix', get_option('prefix')],
+)
 foreach u : unit_files
-    fs.copyfile(
-        u,
-        install: true,
-        install_dir: systemd_system_unit_dir
-    )
+    fs.copyfile(u, install: true, install_dir: systemd_system_unit_dir)
 endforeach
 
 dbus_system_bus_services_dir = dependency('dbus-1').get_variable(
     'system_bus_services_dir',
-    pkgconfig_define: ['prefix', get_option('prefix')])
+    pkgconfig_define: ['prefix', get_option('prefix')],
+)
 dbus_policy_dir = run_command(
     'realpath',
-    join_paths(dbus_system_bus_services_dir, '..', 'system.d')).stdout().strip()
+    join_paths(dbus_system_bus_services_dir, '..', 'system.d'),
+).stdout().strip()
 
 install_data(
     'dbus/org.open_power.Software.Host.Updater.conf',
-    install_dir: dbus_policy_dir)
+    install_dir: dbus_policy_dir,
+)
 
 if get_option('tests').allowed()
     oe_sdk = get_option('oe-sdk')
     if oe_sdk.allowed()
         # Setup OE SYSROOT
-        OECORE_TARGET_SYSROOT = run_command('sh', '-c', 'echo $OECORE_TARGET_SYSROOT').stdout().strip()
+        OECORE_TARGET_SYSROOT = run_command(
+            'sh',
+            '-c',
+            'echo $OECORE_TARGET_SYSROOT',
+        ).stdout().strip()
         if OECORE_TARGET_SYSROOT == ''
-            error('Unable to get $OECORE_TARGET_SYSROOT, check your environment.')
+            error(
+                'Unable to get $OECORE_TARGET_SYSROOT, check your environment.',
+            )
         endif
         message('OE_SYSROOT: ' + OECORE_TARGET_SYSROOT)
-        rpath = ':'.join([OECORE_TARGET_SYSROOT + '/lib', OECORE_TARGET_SYSROOT + '/usr/lib'])
-        ld_so = run_command('sh', '-c', 'find ' + OECORE_TARGET_SYSROOT + '/lib/ld-*.so | sort -r -n | head -n1').stdout().strip()
+        rpath = ':'.join(
+            [OECORE_TARGET_SYSROOT + '/lib', OECORE_TARGET_SYSROOT + '/usr/lib'],
+        )
+        ld_so = run_command(
+            'sh',
+            '-c',
+            'find ' + OECORE_TARGET_SYSROOT + '/lib/ld-*.so | sort -r -n | head -n1',
+        ).stdout().strip()
         dynamic_linker = ['-Wl,-dynamic-linker,' + ld_so]
     else
         dynamic_linker = []
@@ -285,7 +296,7 @@
             ],
             implicit_include_directories: false,
             include_directories: '.',
-        )
+        ),
     )
     test(
         'test_functions',
@@ -299,6 +310,6 @@
                 dependency('sdbusplus'),
                 dependency('sdeventplus'),
             ],
-        )
+        ),
     )
 endif
diff --git a/meson.options b/meson.options
index 2d17003..8f055d2 100644
--- a/meson.options
+++ b/meson.options
@@ -1,7 +1,21 @@
 option('tests', type: 'feature', description: 'Build tests.')
-option('oe-sdk', type: 'feature', value: 'disabled', description: 'Enable OE SDK')
-option('device-type', type: 'combo', choices: ['static', 'ubi', 'mmc'], description: 'Select which device type to support')
+option(
+    'oe-sdk',
+    type: 'feature',
+    value: 'disabled',
+    description: 'Enable OE SDK',
+)
+option(
+    'device-type',
+    type: 'combo',
+    choices: ['static', 'ubi', 'mmc'],
+    description: 'Select which device type to support',
+)
 option('vpnor', type: 'feature', description: 'Enable virtual PNOR support')
 option('pldm', type: 'feature', description: 'Enable Host PLDM support')
-option('verify-signature', type: 'feature', description: 'Enable image signature validation')
+option(
+    'verify-signature',
+    type: 'feature',
+    description: 'Enable image signature validation',
+)
 option('msl', type: 'string', description: 'Minimum Ship Level')
