diff --git a/ffdc b/ffdc
index 3c93fe4..f08649a 100644
--- a/ffdc
+++ b/ffdc
@@ -7,10 +7,10 @@
 usage: ffdc [OPTION]
 
 Options:
-   -d, --dir <directory>  Specify destination directory. Defaults to /tmp if
-                          invalid or unspecified.
-   -D, --disable_dreport  Disable dreport based dump collection
-   -h, --help             Display this help text and exit.
+-d, --dir <directory>  Specify destination directory. Defaults to /tmp if
+invalid or unspecified.
+-D, --disable_dreport  Disable dreport based dump collection
+-h, --help             Display this help text and exit.
 '
 
 declare -a arr=(
diff --git a/tools/dreport.d/dreport b/tools/dreport.d/dreport
index 3009b80..b390674 100755
--- a/tools/dreport.d/dreport
+++ b/tools/dreport.d/dreport
@@ -1,6 +1,6 @@
 #! /bin/bash
 
-help=$"
+help=$(cat << EOF
         dreport creates an archive(xz compressed) consisting of the following:
                 * Configuration information
                 * Debug information
@@ -33,7 +33,8 @@
         -V, --version         Output version information.
         -q, —-quiet           Only log fatal errors to stderr
         -h, —-help            Display this help and exit.
-"
+EOF
+)
 
 #CONSTANTS
 declare -rx TRUE=1
@@ -126,7 +127,7 @@
 
     #Executes plugins based on the type.
     for i in $plugin_path/* ; do
-       $i
+        $i
     done
 }
 
@@ -151,24 +152,24 @@
 function set_elog_pid()
 {
     additional_data=$(busctl get-property xyz.openbmc_project.Logging \
-                             $optional_path \
-                             xyz.openbmc_project.Logging.Entry \
-                             AdditionalData)
+            $optional_path \
+            xyz.openbmc_project.Logging.Entry \
+        AdditionalData)
 
     #read _PID data.
     if [ ! -z "$additional_data" ]; then
         pid=$(echo $additional_data | \
-                   awk -F _PID= '{ print ($2+0)}')
+            awk -F _PID= '{ print ($2+0)}')
     fi
 }
 
 # @brief Initial version of the summary log
-init_summary()
+function init_summary()
 {
-   log_summary "Name:          $name.tar.xz"
-   log_summary "Epochtime:     $EPOCHTIME"
-   log_summary "ID:            $dump_id"
-   log_summary "Type:          $dump_type"
+    log_summary "Name:          $name.tar.xz"
+    log_summary "Epochtime:     $EPOCHTIME"
+    log_summary "ID:            $dump_id"
+    log_summary "Type:          $dump_type"
 }
 
 # @brief Check the validity of user inputs and initialize global
@@ -199,22 +200,22 @@
     summary_log="$name_dir/$SUMMARY_LOG"
 
     #Type
-    if [[ ! ($dump_type = $TYPE_USER || \
-             $dump_type = $TYPE_CORE || \
-             $dump_type = $TYPE_ELOG || \
-             $dump_type = $TYPE_RAMOOPS || \
-             $dump_type = $TYPE_CHECKSTOP) ]]; then
-       log_error "Invalid -type, Only summary log is available"
-       dump_type=$SUMMARY_DUMP
+    if [[ $dump_type != $TYPE_USER ]] || \
+        [[ $dump_type != $TYPE_CORE ]] || \
+        [[ $dump_type != $TYPE_ELOG ]] || \
+        [[ $dump_type != $TYPE_RAMOOPS ]] || \
+        [[ $dump_type != $TYPE_CHECKSTOP ]]; then
+        log_error "Invalid -type, Only summary log is available"
+        dump_type=$SUMMARY_DUMP
     fi
 
     #Size
     #Check the input is integer.
     if [ "$dump_size" -eq "$dump_size" ] 2>/dev/null; then
-       #Converts in to bytes.
-       dump_size="$((dump_size * 1024))"
+        #Converts in to bytes.
+        dump_size="$((dump_size * 1024))"
     else
-       dump_size=$UNLIMITED
+        dump_size=$UNLIMITED
     fi
 
     return $SUCCESS
@@ -232,14 +233,14 @@
     #tar and compress the files.
     if [ -f "$HEADER_EXTENSION" ]; then
         tar -Jcf "$name_dir.tar.xz" -C \
-                 $(dirname "$name_dir") $(basename "$name_dir")
+            $(dirname "$name_dir") $(basename "$name_dir")
         echo "Adding Dump Header :"$HEADER_EXTENSION
         ("$HEADER_EXTENSION")
         cat "$name_dir.tar.xz" | tee -a "/tmp/dumpheader_$EPOCHTIME" > /dev/null
         mv "/tmp/dumpheader_$EPOCHTIME" "$name_dir.tar.xz"
     else
         tar -Jcf "$name_dir.tar.xz" -C \
-                 $(dirname "$name_dir") $(basename "$name_dir")
+            $(dirname "$name_dir") $(basename "$name_dir")
     fi
 
     if [ $? -ne 0 ]; then
@@ -254,7 +255,7 @@
     echo $($TIME_STAMP) "Report is available in $dump_dir"
 
     if [ "$TMP_DIR" == "$dump_dir" ] || [ "$TMP_DIR/" == "$dump_dir" ]; then
-       return $SUCCESS
+        return $SUCCESS
     fi
 
     #copy the compressed tar file into the destination
@@ -298,8 +299,8 @@
 }
 
 TEMP=`getopt -o n:d:i:t:s:p:vVqh \
-      --long name:,dir:,dumpid:,type:,size:,path:,verbose,version,quiet,help \
-      -- "$@"`
+    --long name:,dir:,dumpid:,type:,size:,path:,verbose,version,quiet,help \
+    -- "$@"`
 
 if [ $? -ne 0 ]
 then
@@ -314,37 +315,37 @@
     case $key in
         -n|--name)
             name=$2
-            shift 2;;
+            shift 2 ;;
         -d|--dir)
             dump_dir=$2
-            shift 2;;
+            shift 2 ;;
         -i|--dumpid)
             dump_id=$2
-            shift 2;;
+            shift 2 ;;
         -t|--type)
             dump_type=$2
-            shift 2;;
+            shift 2 ;;
         -s|--size)
             dump_size=$2
-            shift 2;;
+            shift 2 ;;
         -p|--path)
             optional_path=$2
-            shift 2;;
+            shift 2 ;;
         -v|—-verbose)
             verbose=$TRUE
-            shift;;
+            shift ;;
         -V|--version)
-            shift;;
+            shift ;;
         -q|—-quiet)
             quiet=$TRUE
-            shift;;
+            shift ;;
         -h|--help)
             echo "$help"
-            exit;;
+            exit ;;
         *) # unknown option
             log_error "Unknown argument: $1"
             log_info "$help"
-            exit 1;;
+            exit 1 ;;
     esac
 done
 
diff --git a/tools/dreport.d/ibm.d/gendumpheader b/tools/dreport.d/ibm.d/gendumpheader
index b1de37e..cc49177 100755
--- a/tools/dreport.d/ibm.d/gendumpheader
+++ b/tools/dreport.d/ibm.d/gendumpheader
@@ -24,19 +24,19 @@
 declare -x FILE="/tmp/dumpheader_$EPOCHTIME"
 declare -x dumpSize=$(ls -al $name_dir.tar.xz | awk '{print $5}')
 declare -x modelNo=$(busctl get-property $INVENTORY_MANAGER $INVENTORY_PATH \
-$INVENTORY_ASSET_INT Model | cut -d " " -f 2 | sed "s/^\(\"\)\(.*\)\1\$/\2/g")
+    $INVENTORY_ASSET_INT Model | cut -d " " -f 2 | sed "s/^\(\"\)\(.*\)\1\$/\2/g")
 
 declare -x serialNo=$(busctl get-property $INVENTORY_MANAGER $INVENTORY_PATH \
-$INVENTORY_ASSET_INT SerialNumber | cut -d " " -f 2 | sed "s/^\(\"\)\(.*\)\1\$/\2/g")
+    $INVENTORY_ASSET_INT SerialNumber | cut -d " " -f 2 | sed "s/^\(\"\)\(.*\)\1\$/\2/g")
 
 declare -x dDay=$(date -d @$EPOCHTIME +'%Y%m%d%H%M%S')
 
 declare -x bmcSerialNo=$(busctl call $INVENTORY_MANAGER $INVENTORY_BMC_BOARD \
-org.freedesktop.DBus.Properties Get ss $INVENTORY_ASSET_INT \
-SerialNumber | cut -d " " -f 3 | sed "s/^\(\"\)\(.*\)\1\$/\2/g")
+        org.freedesktop.DBus.Properties Get ss $INVENTORY_ASSET_INT \
+    SerialNumber | cut -d " " -f 3 | sed "s/^\(\"\)\(.*\)\1\$/\2/g")
 
 #Function to add NULL
-function add_null () {
+function add_null() {
     local a=$1
     printf '%*s' $a | tr ' ' "\0" >> $FILE
 }
@@ -44,7 +44,7 @@
 #Function to is to convert the EPOCHTIME collected
 #from dreport into hex values and write the same in
 #header.
-function dump_time () {
+function dump_time() {
     x=${#dDay}
     msize=`expr $x / 2`
     msize=`expr $SIZE_8 - $msize`
@@ -56,7 +56,7 @@
 }
 
 #Function to fetch the size of the dump
-function dump_size () {
+function dump_size() {
     #Adding 516 bytes as the total dump size is dump tar size
     #plus the dump header entry in this case
     #dump_header and dump_entry
@@ -77,7 +77,7 @@
 }
 
 #Function to set dump id to 8 bytes format
-function get_dump_id () {
+function get_dump_id() {
     x=${#dump_id}
     nulltoadd=`expr $SIZE_8 - $x`
     printf '%*s' $nulltoadd | tr ' ' "0" >> $FILE
@@ -85,7 +85,7 @@
 }
 
 #Function to get the bmc serial number
-function getbmc_serial () {
+function getbmc_serial() {
     x=${#bmcSerialNo}
     nulltoadd=`expr $SIZE_12 - $x`
     printf $bmcSerialNo >> $FILE
@@ -107,7 +107,7 @@
 #Separator         1            .
 #Time stamp        14           Form should be yyyymmddhhmmss
 #Null Terminator   1            0x00
-function dump_file_entry () {
+function dump_file_entry() {
     printf "FILE    " >> $FILE
     add_null 1
     printf '\x40' >> $FILE #Virtual file directory entry size
@@ -134,7 +134,7 @@
 #Reserved          2            NULL
 #Dump Size         8            Dump size in hex + dump header
 #Optional Section  16           BMCDUMP
-function dump_section_entry () {
+function dump_section_entry() {
     printf "SECTION " >> $FILE
     add_null 1
     printf '\x30' >> $FILE #Section entry size
@@ -177,7 +177,7 @@
 #Dump requestor type
 #Dump Req ID
 #Dump Req user ID
-function dump_header () {
+function dump_header() {
     printf "BMC DUMP" >> $FILE
     dump_time
     add_null 4 #Dump Identifier
@@ -207,7 +207,7 @@
 #BMC Dump Valid     1            0x01
 #No of Dump Entry   2            Number of Dump Entry
 #
-function dump_entry () {
+function dump_entry() {
     printf '\x01' >> $FILE #Dump entry version
     printf '\x01' >> $FILE #Dump valid
     add_null 1
@@ -215,7 +215,7 @@
 }
 
 #main function
-function gen_header_package () {
+function gen_header_package() {
     dump_file_entry
     dump_section_entry
     dump_header
diff --git a/tools/dreport.d/include.d/functions b/tools/dreport.d/include.d/functions
index d3aff63..b62b471 100755
--- a/tools/dreport.d/include.d/functions
+++ b/tools/dreport.d/include.d/functions
@@ -88,7 +88,7 @@
     #get the file or directory size
     if [[ -d $source ]] && [[ -n $source ]]; then
         tar -cf "$source.tar" -C \
-                 $(dirname "$source") $(basename "$source")
+            $(dirname "$source") $(basename "$source")
         size=$(stat -c%s "$source.tar")
         rm "$source.tar"
     else
@@ -99,7 +99,7 @@
         #Exceed the allowed limit,
         #tar and compress the files and check the size
         tar -Jcf "$name_dir.tar.xz" -C \
-                  $(dirname "$name_dir") $(basename "$name_dir")
+            $(dirname "$name_dir") $(basename "$name_dir")
         size=$(stat -c%s "$name_dir.tar.xz")
         if [ $size -gt $dump_size ]; then
             #Remove the the specific data from the name_dir and continue
@@ -118,10 +118,10 @@
 # @param error message
 function log_error()
 {
-   echo $($TIME_STAMP) "ERROR: $*" >> $dreport_log
-   if ((quiet != TRUE)); then
-      echo $($TIME_STAMP) "ERROR: $*" >&2
-   fi
+    echo $($TIME_STAMP) "ERROR: $*" >> $dreport_log
+    if ((quiet != TRUE)); then
+        echo $($TIME_STAMP) "ERROR: $*" >&2
+    fi
 }
 
 # @brief log warning message
diff --git a/tools/dreport.d/openpower.d/plugins.d/dumpfilelist b/tools/dreport.d/openpower.d/plugins.d/dumpfilelist
index b6720d8..805a93e 100644
--- a/tools/dreport.d/openpower.d/plugins.d/dumpfilelist
+++ b/tools/dreport.d/openpower.d/plugins.d/dumpfilelist
@@ -15,7 +15,7 @@
                 /xyz/openbmc_project/dump \
                 org.freedesktop.DBus.ObjectManager \
                 GetManagedObjects"
-if ! add_cmd_output "$command" "$file_name" "$desc"; 
+if ! add_cmd_output "$command" "$file_name" "$desc";
 then
     #bmc dumps
     dir="/var/lib/phosphor-debug-collector/dumps/"
diff --git a/tools/dreport.d/plugins.d/elogall b/tools/dreport.d/plugins.d/elogall
index 0d500f6..33fd98e 100644
--- a/tools/dreport.d/plugins.d/elogall
+++ b/tools/dreport.d/plugins.d/elogall
@@ -9,8 +9,8 @@
 desc="elog"
 
 entries=$(busctl --list --no-pager tree \
-                 xyz.openbmc_project.Logging | grep \
-                 '/xyz/openbmc_project/logging/entry/')
+        xyz.openbmc_project.Logging | grep \
+    '/xyz/openbmc_project/logging/entry/')
 
 #check for elog entries.
 if [ -z "$entries" ]; then
diff --git a/tools/dreport.d/plugins.d/emconfig b/tools/dreport.d/plugins.d/emconfig
index 75e3d0c..5e01ca6 100644
--- a/tools/dreport.d/plugins.d/emconfig
+++ b/tools/dreport.d/plugins.d/emconfig
@@ -10,6 +10,6 @@
 file_name="em-system.json"
 
 if [ -e "/var/configuration/system.json" ]; then
-  command="cat /var/configuration/system.json"
-  add_cmd_output "$command" "$file_name" "$desc"
+    command="cat /var/configuration/system.json"
+    add_cmd_output "$command" "$file_name" "$desc"
 fi
diff --git a/tools/dreport.d/plugins.d/fanctldump b/tools/dreport.d/plugins.d/fanctldump
index 003c7c1..590b9ed 100644
--- a/tools/dreport.d/plugins.d/fanctldump
+++ b/tools/dreport.d/plugins.d/fanctldump
@@ -12,10 +12,10 @@
 # collect data only if fanctl is present
 if [ -e "/usr/bin/fanctl" ]; then
 
-  command="rm -f /tmp/fan_control_dump.json; /usr/bin/fanctl dump; \
+    command="rm -f /tmp/fan_control_dump.json; /usr/bin/fanctl dump; \
            cat /tmp/fan_control_dump.json"
 
-  add_cmd_output "$command" "$file_name" "$desc"
-  rm -f /tmp/fan_control_dump.json
+    add_cmd_output "$command" "$file_name" "$desc"
+    rm -f /tmp/fan_control_dump.json
 
 fi
diff --git a/tools/dreport.d/plugins.d/fanmondump b/tools/dreport.d/plugins.d/fanmondump
index f0906b9..0e34eef 100755
--- a/tools/dreport.d/plugins.d/fanmondump
+++ b/tools/dreport.d/plugins.d/fanmondump
@@ -7,7 +7,7 @@
 . $DREPORT_INCLUDE/functions
 
 if [ ! -e "/usr/bin/phosphor-fan-monitor" ]; then
-  exit 0
+    exit 0
 fi
 
 file_name="/tmp/fan_monitor_dump.json"
diff --git a/tools/dreport.d/plugins.d/hostlogger b/tools/dreport.d/plugins.d/hostlogger
index 1832453..506c5a3 100644
--- a/tools/dreport.d/plugins.d/hostlogger
+++ b/tools/dreport.d/plugins.d/hostlogger
@@ -10,16 +10,16 @@
 LOGS_PATH="/var/lib/obmc/hostlogs"
 
 if [[ -d ${LOGS_PATH} ]]; then
-  # Manual flush of the log buffer for all service instances
-  INSTANCES="$(systemctl list-units --type=service --state=running --full | \
+    # Manual flush of the log buffer for all service instances
+    INSTANCES="$(systemctl list-units --type=service --state=running --full | \
                awk '/hostlogger@/{print $1}')"
-  for SVC in ${INSTANCES}; do
-    log_info "Flush ${SVC}..."
-    if ! systemctl kill --signal SIGUSR1 ${SVC}; then
-      log_warning "Unable to flush ${SVC}"
-    fi
-  done
+    for SVC in ${INSTANCES}; do
+        log_info "Flush ${SVC}..."
+        if ! systemctl kill --signal SIGUSR1 ${SVC}; then
+            log_warning "Unable to flush ${SVC}"
+        fi
+    done
 
-  # Copy log directory
-  add_copy_file "${LOGS_PATH}" "${DESCRIPTION}"
+    # Copy log directory
+    add_copy_file "${LOGS_PATH}" "${DESCRIPTION}"
 fi
diff --git a/tools/dreport.d/plugins.d/inventory b/tools/dreport.d/plugins.d/inventory
index 75873b2..a9013b5 100644
--- a/tools/dreport.d/plugins.d/inventory
+++ b/tools/dreport.d/plugins.d/inventory
@@ -17,7 +17,7 @@
 
 file_name="inventory.log"
 
-if ! add_cmd_output "$command" "$file_name" "$desc"; 
+if ! add_cmd_output "$command" "$file_name" "$desc";
 then
     inventory_dir="/var/lib/phosphor-inventory-manager"
     if [ -d "$inventory_dir" ]; then
diff --git a/tools/dreport.d/plugins.d/ledgroup b/tools/dreport.d/plugins.d/ledgroup
index de7faaf..135da37 100644
--- a/tools/dreport.d/plugins.d/ledgroup
+++ b/tools/dreport.d/plugins.d/ledgroup
@@ -21,6 +21,6 @@
 then
     dir_name="/var/lib/phosphor-led-manager/"
     if [ -d "$dir_name" ]; then
-          add_copy_file "$dir_name" "$desc"
+        add_copy_file "$dir_name" "$desc"
     fi
 fi
diff --git a/tools/dreport.d/plugins.d/pldmflightrecorder b/tools/dreport.d/plugins.d/pldmflightrecorder
index 5b9b094..8e22fa6 100644
--- a/tools/dreport.d/plugins.d/pldmflightrecorder
+++ b/tools/dreport.d/plugins.d/pldmflightrecorder
@@ -10,14 +10,14 @@
 
 # collect data only if pldmd is enabled
 if [ -e "/usr/bin/pldmd" ]; then
-  command="rm -rf /tmp/pldm_flight_recorder; killall -s SIGUSR1 pldmd; \
+    command="rm -rf /tmp/pldm_flight_recorder; killall -s SIGUSR1 pldmd; \
            sleep 5; cat /tmp/pldm_flight_recorder"
 
-  file_name="pldmflightrecorder.log"
+    file_name="pldmflightrecorder.log"
 
-  add_cmd_output "$command" "$file_name" "$desc"
+    add_cmd_output "$command" "$file_name" "$desc"
 
-  rm -rf /tmp/pldm_flight_recorder
+    rm -rf /tmp/pldm_flight_recorder
 else
-  log_warning "skipping pldm flight recorder:  pldmd is not enabled"
+    log_warning "skipping pldm flight recorder:  pldmd is not enabled"
 fi
