fcoe_edd.sh makes more sense to whatever this script is really doing.

Signed-off-by: Yi Zou <[email protected]>
---

 contrib/fcoe_edd.sh  |  234 ++++++++++++++++++++++++++++++++++++++++++++++++++
 contrib/sysfs_edd.sh |  234 --------------------------------------------------
 2 files changed, 234 insertions(+), 234 deletions(-)
 create mode 100644 contrib/fcoe_edd.sh
 delete mode 100755 contrib/sysfs_edd.sh

diff --git a/contrib/fcoe_edd.sh b/contrib/fcoe_edd.sh
new file mode 100644
index 0000000..dd4c338
--- /dev/null
+++ b/contrib/fcoe_edd.sh
@@ -0,0 +1,234 @@
+#!/bin/bash
+
+# Script to read EDD information from sysfs and
+# echo the FCoE interface name and target info.
+# This is a work in progress and will be enhanced
+# with more options as we progress further.
+#
+# Author: Supreeth Venkataraman
+#        Yi Zou
+#         Intel Corporation
+#
+# Usage: fcoe_edd.sh -t for getting FCoE boot target information.
+#        fcoe_edd.sh -i for getting FCoE boot NIC name.
+#        fcoe_edd.sh -m for getting FCoE boot NIC MAC.
+#        fcoe_edd.sh -e for getting FCoE boot EDD information.
+#        fcoe_edd.sh -r for getting FCoE boot EDD interface type and path.
+#        fcoe_edd.sh -a for getting all FCoE boot information.
+#        fcoe_edd.sh -h for usage information.
+#        Optional: use -v to turn on verbose mode.
+#
+# Notes:
+# FCoE Boot Disk is identified by the following format of boot information
+# in its corresponding sysfs firmware edd entry, i.e.,
+#      /sys/firmware/edd/int13_dev??/interface
+# which is formatted as (for FCoE):
+# string format: FIBRE wwid: 8c1342b8a0001620 lun: 7f00
+# Please ref. to T13 BIOS Enhanced Disk Drive Specification v3.0 for more
+# defails on EDD.
+#
+
+SYSEDD=/sys/firmware/edd
+PREFIX="FIBRE"
+VERBOSE=
+FCOE_INF=
+FCOE_WWN=
+FCOE_LUN=
+FCOE_EDD=
+FCOE_NIC=
+FCOE_MAC=
+
+
+#
+#
+#
+LOG() {
+       if [ -n "$1" ] && [ -n "${VERBOSE}" ]; then
+               echo "LOG:$1"
+       fi
+}
+
+
+find_fcoe_boot_disk() {
+       local prefix=
+
+       if [ ! -e $SYSEDD ]; then
+               LOG "Need kernel EDD support!"
+               return 1
+       fi
+#      for disk in `find ${SYSEDD} -maxdepth 1 -name 'int13*'`
+       for disk in ${SYSEDD}/int13_*
+       do
+               LOG " checking $disk..."
+               if [ ! -e ${disk}/interface ]; then
+                       continue;
+               fi
+               LOG " checking ${disk}/interface..."
+               prefix=`awk '{printf $1}' < ${disk}/interface`
+               if [ "${PREFIX}" != "${prefix}" ]; then
+                       LOG " The FCoE Boot prefix ${prefix} is invalid!"
+                       continue;
+               fi
+               FCOE_INF=`cat ${disk}/interface`
+               LOG " found FCoE boot info. from boot rom:${FCOE_INF}..."
+
+               FCOE_WWN=`awk '{printf $3}' < ${disk}/interface`
+               if [ ${#FCOE_WWN} -ne 16 ]; then
+                       LOG " The FCoE Boot WWID ${FCOE_WWN} is invalid!"
+                       continue;
+               fi
+               FCOE_LUN=`awk '{printf $5}' < ${disk}/interface`
+               if [ -z "${#FCOE_LUN}" ]; then
+                       LOG " The FCoE Boot LUN ${FCOE_WWN} is invalid!"
+                       continue;
+               fi
+               # look for the correponding nic
+               # FIXME:
+               # 1) only supporst PCI device?
+               # 2) at initrd time, the nic name is always eth*?
+               if [ ! -e ${disk}/pci_dev ]; then
+                       LOG "Failed to locate the corresponing PCI device!"
+                       continue;
+               fi
+               if [ ! -e ${disk}/pci_dev/net ]; then
+                       LOG "Failed to detect any NIC device!"
+                       continue;
+               fi
+
+               for nic in ${disk}/pci_dev/net/*
+               do
+                       if [ -e ${nic}/address ]; then
+                               FCOE_MAC=`cat ${nic}/address`
+                               FCOE_NIC=$(basename ${nic})
+                               break;
+                       fi
+               done
+               if [ -z "${FCOE_MAC}" ] || [ -z "${FCOE_NIC}" ]; then
+                       LOG "Failed to locate the corresponing NIC device!"
+                       continue;
+               fi
+               # Found the FCoE Boot Device
+               FCOE_EDD=$(basename ${disk})
+               return 0;
+       done
+       return 1
+}
+
+get_fcoe_boot_all(){
+       echo "### FCoE Boot Information ###"
+       echo "EDD=${FCOE_EDD}"
+       echo "INF=${FCOE_INF}"
+       echo "WWN=${FCOE_WWN}"
+       echo "LUN=${FCOE_LUN}"
+       echo "NIC=${FCOE_NIC}"
+       echo "MAC=${FCOE_MAC}"
+       return 0
+}
+
+get_fcoe_boot_target() {
+       if [ -z "${FCOE_WWN}" ] || [ -z "${FCOE_LUN}" ]; then
+               LOG "No FCoE Boot Target information is found!"
+               return 1
+       fi
+       echo "WWN=${FCOE_WWN}"
+       echo "LUN=${FCOE_LUN}"
+}
+
+get_fcoe_boot_inf(){
+       if [ -z "${FCOE_INF}" ]; then
+               LOG "No FCoE Boot INF information is found!"
+               return 1
+       fi
+       echo "INF=${FCOE_INF}"
+       return 0
+}
+
+get_fcoe_boot_mac(){
+       if [ -z "${FCOE_MAC}" ]; then
+               LOG "No FCoE Boot NIC MAC information is found!"
+               return 1
+       fi
+       echo "MAC=${FCOE_MAC}"
+       return 0
+}
+
+get_fcoe_boot_ifname(){
+       if [ -z "${FCOE_NIC}" ]; then
+               LOG "No FCoE Boot NIC information is found!"
+               return 1
+       fi
+       echo "NIC=${FCOE_NIC}"
+       return 0
+}
+
+get_fcoe_boot_edd(){
+       if [ -z "${FCOE_EDD}" ]; then
+               LOG "No FCoE Boot Disk EDD information is found!"
+               return 1
+       fi
+       echo "EDD=${FCOE_EDD}"
+       return 0
+}
+
+
+# parse options
+prog=$(basename $0)
+while getopts "timeravh" OptionName; do
+    case "$OptionName" in
+        t)
+               action=get_fcoe_boot_target
+               ;;
+        i)
+               action=get_fcoe_boot_ifname
+               ;;
+        m)
+               action=get_fcoe_boot_mac
+               ;;
+        e)
+               action=get_fcoe_boot_edd
+               ;;
+        r)
+               action=get_fcoe_boot_inf
+               ;;
+       a)
+               action=get_fcoe_boot_all
+               ;;
+       v)
+               VERBOSE="yes"
+               ;;
+        h)
+               echo "Usage: ${prog} -t for getting FCoE boot target 
information."
+               echo "       ${prog} -i for getting FCoE boot NIC name."
+               echo "       ${prog} -m for getting FCoE boot NIC MAC."
+               echo "       ${prog} -e for getting FCoE boot EDD information."
+               echo "       ${prog} -r for getting FCoE boot EDD interface 
type and path."
+               echo "       ${prog} -a for getting all FCoE boot information."
+               echo "       ${prog} -h for usage information."
+               echo "       Optional: use -v to turn on verbose mode."
+               exit 0
+               ;;
+        *)
+               echo "Invalid Option. Use -h option for help."
+               exit 1
+               ;;
+    esac
+done
+if [ -z "${action}" ]; then
+       echo "Must specify at least -t, -i, -m, -e, -r, -a, or -h."
+       echo "Use -h option for help."
+       exit 1
+fi
+# Locate FCoE boot disk and nic information
+find_fcoe_boot_disk
+if [ $? -ne 0 ]; then
+       echo "No FCoE boot disk information is found in EDD!"
+       exit 1
+fi
+if [ -z "${FCOE_EDD}" ]; then
+       echo "No FCoE boot disk is found in EDD!"
+       exit 1;
+fi
+
+${action}
+
+exit $?
diff --git a/contrib/sysfs_edd.sh b/contrib/sysfs_edd.sh
deleted file mode 100755
index d710561..0000000
--- a/contrib/sysfs_edd.sh
+++ /dev/null
@@ -1,234 +0,0 @@
-#!/bin/bash
-
-# Script to read EDD information from sysfs and
-# echo the FCoE interface name and target info.
-# This is a work in progress and will be enhanced
-# with more options as we progress further.
-#
-# Author: Supreeth Venkataraman
-#        Yi Zou
-#         Intel Corporation
-#
-# Usage: sysfs_edd.sh -t for getting FCoE boot target information.
-#        sysfs_edd.sh -i for getting FCoE boot NIC name.
-#        sysfs_edd.sh -m for getting FCoE boot NIC MAC.
-#        sysfs_edd.sh -e for getting FCoE boot EDD information.
-#        sysfs_edd.sh -r for getting FCoE boot EDD interface type and path.
-#        sysfs_edd.sh -a for getting all FCoE boot information.
-#        sysfs_edd.sh -h for usage information.
-#        Optional: use -v to turn on verbose mode.
-#
-# Notes:
-# FCoE Boot Disk is identified by the following format of boot information
-# in its corresponding sysfs firmware edd entry, i.e.,
-#      /sys/firmware/edd/int13_dev??/interface
-# which is formatted as (for FCoE):
-# string format: FIBRE wwid: 8c1342b8a0001620 lun: 7f00
-# Please ref. to T13 BIOS Enhanced Disk Drive Specification v3.0 for more
-# defails on EDD.
-#
-
-SYSEDD=/sys/firmware/edd
-PREFIX="FIBRE"
-VERBOSE=
-FCOE_INF=
-FCOE_WWN=
-FCOE_LUN=
-FCOE_EDD=
-FCOE_NIC=
-FCOE_MAC=
-
-
-#
-#
-#
-LOG() {
-       if [ -n "$1" ] && [ -n "${VERBOSE}" ]; then
-               echo "LOG:$1"
-       fi
-}
-
-
-find_fcoe_boot_disk() {
-       local prefix=
-
-       if [ ! -e $SYSEDD ]; then
-               LOG "Need kernel EDD support!"
-               return 1
-       fi
-#      for disk in `find ${SYSEDD} -maxdepth 1 -name 'int13*'`
-       for disk in ${SYSEDD}/int13_*
-       do
-               LOG " checking $disk..."
-               if [ ! -e ${disk}/interface ]; then
-                       continue;
-               fi
-               LOG " checking ${disk}/interface..."
-               prefix=`awk '{printf $1}' < ${disk}/interface`
-               if [ "${PREFIX}" != "${prefix}" ]; then
-                       LOG " The FCoE Boot prefix ${FCOE_PRE} is invalid!"
-                       continue;
-               fi
-               FCOE_INF=`cat ${disk}/interface`
-               LOG " found FCoE boot info. from boot rom:${FCOE_INF}..."
-
-               FCOE_WWN=`awk '{printf $3}' < ${disk}/interface`
-               if [ ${#FCOE_WWN} -ne 16 ]; then
-                       LOG " The FCoE Boot WWID ${FCOE_WWN} is invalid!"
-                       continue;
-               fi
-               FCOE_LUN=`awk '{printf $5}' < ${disk}/interface`
-               if [ -z "${#FCOE_LUN}" ]; then
-                       LOG " The FCoE Boot LUN ${FCOE_WWN} is invalid!"
-                       continue;
-               fi
-               # look for the correponding nic
-               # FIXME:
-               # 1) only supporst PCI device?
-               # 2) at initrd time, the nic name is always eth*?
-               if [ ! -e ${disk}/pci_dev ]; then
-                       LOG "Failed to locate the corresponing PCI device!"
-                       continue;
-               fi
-               if [ ! -e ${disk}/pci_dev/net ]; then
-                       LOG "Failed to detect any NIC device!"
-                       continue;
-               fi
-
-               for nic in ${disk}/pci_dev/net/*
-               do
-                       if [ -e ${nic}/address ]; then
-                               FCOE_MAC=`cat ${nic}/address`
-                               FCOE_NIC=$(basename ${nic})
-                               break;
-                       fi
-               done
-               if [ -z "${FCOE_MAC}" ] || [ -z "${FCOE_NIC}" ]; then
-                       LOG "Failed to locate the corresponing NIC device!"
-                       continue;
-               fi
-               # Found the FCoE Boot Device
-               FCOE_EDD=$(basename ${disk})
-               return 0;
-       done
-       return 1
-}
-
-get_fcoe_boot_all(){
-       echo "### FCoE Boot Information ###"
-       echo "EDD=${FCOE_EDD}"
-       echo "INF=${FCOE_INF}"
-       echo "WWN=${FCOE_WWN}"
-       echo "LUN=${FCOE_LUN}"
-       echo "NIC=${FCOE_NIC}"
-       echo "MAC=${FCOE_MAC}"
-       return 0
-}
-
-get_fcoe_boot_target() {
-       if [ -z "${FCOE_WWN}" ] || [ -z "${FCOE_LUN}" ]; then
-               LOG "No FCoE Boot Target information is found!"
-               return 1
-       fi
-       echo "WWN=${FCOE_WWN}"
-       echo "LUN=${FCOE_LUN}"
-}
-
-get_fcoe_boot_inf(){
-       if [ -z "${FCOE_INF}" ]; then
-               LOG "No FCoE Boot INF information is found!"
-               return 1
-       fi
-       echo "INF=${FCOE_INF}"
-       return 0
-}
-
-get_fcoe_boot_mac(){
-       if [ -z "${FCOE_MAC}" ]; then
-               LOG "No FCoE Boot NIC MAC information is found!"
-               return 1
-       fi
-       echo "MAC=${FCOE_MAC}"
-       return 0
-}
-
-get_fcoe_boot_ifname(){
-       if [ -z "${FCOE_NIC}" ]; then
-               LOG "No FCoE Boot NIC information is found!"
-               return 1
-       fi
-       echo "NIC=${FCOE_NIC}"
-       return 0
-}
-
-get_fcoe_boot_edd(){
-       if [ -z "${FCOE_EDD}" ]; then
-               LOG "No FCoE Boot Disk EDD information is found!"
-               return 1
-       fi
-       echo "EDD=${FCOE_EDD}"
-       return 0
-}
-
-
-# parse options
-prog=$(basename $0)
-while getopts "timeravh" OptionName; do
-    case "$OptionName" in
-        t)
-               action=get_fcoe_boot_target
-               ;;
-        i)
-               action=get_fcoe_boot_ifname
-               ;;
-        m)
-               action=get_fcoe_boot_mac
-               ;;
-        e)
-               action=get_fcoe_boot_edd
-               ;;
-        r)
-               action=get_fcoe_boot_inf
-               ;;
-       a)
-               action=get_fcoe_boot_all
-               ;;
-       v)
-               VERBOSE="yes"
-               ;;
-        h)
-               echo "Usage: ${prog} -t for getting FCoE boot target 
information."
-               echo "       ${prog} -i for getting FCoE boot NIC name."
-               echo "       ${prog} -m for getting FCoE boot NIC MAC."
-               echo "       ${prog} -e for getting FCoE boot EDD information."
-               echo "       ${prog} -r for getting FCoE boot EDD interface 
type and path."
-               echo "       ${prog} -a for getting all FCoE boot information."
-               echo "       ${prog} -h for usage information."
-               echo "       Optional: use -v to turn on verbose mode."
-               exit 0
-               ;;
-        *)
-               echo "Invalid Option. Use -h option for help."
-               exit 1
-               ;;
-    esac
-done
-if [ -z "${action}" ]; then
-       echo "Must specify at least -t, -i, -m, -e, -r, -a, or -h."
-       echo "Use -h option for help."
-       exit 1
-fi
-# Locate FCoE boot disk and nic information
-find_fcoe_boot_disk
-if [ $? -ne 0 ]; then
-       echo "No FCoE boot disk information is found in EDD!"
-       exit 1
-fi
-if [ -z "${FCOE_EDD}" ]; then
-       echo "No FCoE boot disk is found in EDD!"
-       exit 1;
-fi
-
-${action}
-
-exit $?

_______________________________________________
devel mailing list
[email protected]
http://www.open-fcoe.org/mailman/listinfo/devel

Reply via email to