Update the ipmitool to a more recent commit

ipmitool is now under active development. This pulls in the latest
commit as of now.

Because of the change to a newer version of ipmitool, how it deals with
the enterprise-numbers file is different. Because the makefile just
wants to download the latest version (which would mean non-repeatable
builds), this commit manually downloads it so it is versioned.

I went through the list of companies that have CLAs with openBMC and
found them in the iana list. This mostly just means that if one of the
companies contributing to OpenBMC writes an OEM IPMI handler, ipmitool
will be able to determine what OEM it is by name. This is not an
essential thing in 99% of the cases. There won't be a need for any of
the iana numbers for any of the entities that are not writing IPMI OEM
providers.

This adds a note to the bbappend file to update the enterprise-numbers
file any time a new company joins the OpenBMC project by submitting a
CLA, assuming that they have a number on file with the IANA.

Tested: builds as expected. runs as expected from bmc console.

(From meta-phosphor rev: 0b4708bff38a85eb706f4ab4894c0aa584877633)

Change-Id: Id2cd25d693894805b79f8bd589246a135bd1490d
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
diff --git a/meta-phosphor/recipes-phosphor/ipmi/ipmitool/0001-create_pen_list-only-print-if-values-are-set.patch b/meta-phosphor/recipes-phosphor/ipmi/ipmitool/0001-create_pen_list-only-print-if-values-are-set.patch
deleted file mode 100644
index c9b955d..0000000
--- a/meta-phosphor/recipes-phosphor/ipmi/ipmitool/0001-create_pen_list-only-print-if-values-are-set.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 51f3c26190f91981e35671ac87bb716dac8a9b7f Mon Sep 17 00:00:00 2001
-From: Vernon Mauery <vernon.mauery@intel.com>
-Date: Wed, 27 Feb 2019 15:22:52 -0800
-Subject: [PATCH] create_pen_list: only print if values are set
-
-On a failed download of the PEN list, the create_pen_list script
-improperly printed an invalid entry of { , "" } causing the build to
-fail. The last line print must check that it has something to print or
-it will print the wrong thing.
-
-Partially resolves ipmitool/ipmitool#11
-
-Signed-off-by: Vernon Mauery <vernon.mauery@intel.com>
----
- lib/create_pen_list | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/lib/create_pen_list b/lib/create_pen_list
-index e2b44d2..81864ad 100755
---- a/lib/create_pen_list
-+++ b/lib/create_pen_list
-@@ -67,7 +67,9 @@ parse_pen_list() {
-       }
- 
-       END {
--          print "{ " PEN ", \"" ENTERPRISE "\" },"
-+          if(PEN) {
-+            print "{ " PEN ", \"" ENTERPRISE "\" },"
-+          }
-       }'
- }
- 
--- 
-2.17.1
-
diff --git a/meta-phosphor/recipes-phosphor/ipmi/ipmitool/enterprise-numbers b/meta-phosphor/recipes-phosphor/ipmi/ipmitool/enterprise-numbers
new file mode 100644
index 0000000..74842b5
--- /dev/null
+++ b/meta-phosphor/recipes-phosphor/ipmi/ipmitool/enterprise-numbers
@@ -0,0 +1,113 @@
+PRIVATE ENTERPRISE NUMBERS
+
+(last updated 2020-03-05)
+
+SMI Network Management Private Enterprise Codes:
+
+Prefix: iso.org.dod.internet.private.enterprise (1.3.6.1.4.1)
+
+This file is http://www.iana.org/assignments/enterprise-numbers
+This file has been reduced to entities signing CLAs with OpenBMC
+https://drive.google.com/drive/folders/1Ooi0RdTcaOWF1DWFJUAJDdN7tRKde7Nl
+
+Decimal
+| Organization
+| | Contact
+| | | Email
+| | | |
+0
+  Reserved
+    Internet Assigned Numbers Authority
+      iana&iana.org
+2
+  IBM (https://w3.ibm.com/standards )
+    Glenn Daly
+      gdaly&us.ibm.com
+343
+  Intel Corporation
+    Adam Kaminski
+      adam.kaminski&intel.com
+674
+  Dell Inc.
+    David L. Douglas
+      david_l_douglas&dell.com
+1694
+  HCL Technologies Limited
+    Ms. Bindu Dandapani
+      bindud&hcl.in
+2487
+  Phoenix Technologies Ltd.
+    Ian Anderson
+      ian_anderson&phoenix.com
+4128
+  ARM Ltd.
+    Jon Brawn
+      jbrawn&arm.com
+6569
+  INVENTEC CORPORATION
+    JH CHYAN
+      chyan.jh&inventec.com
+7244
+  Quanta Computer Inc.
+    Strong Chen
+      @strong.chen&quantatw.com
+8554
+  Departement Elektrotechnik, ETH Zuerich
+    Simon Moser
+      smoser&ee.ethz.ch
+11129
+  Google, Inc.
+    Ben Laurie
+      benl&google.com
+11183
+  Mitac International Corp.
+    P.C. Wang
+      p.c.wang&mic.com.tw
+19046
+  Lenovo Enterprise Business Group
+    Joe Bolan
+      jbolan&lenovo.com
+20974
+  American Megatrends, Inc
+    Kenny Chiang
+      kennychiang&ami.com.tw
+33049
+  Mellanox Technologies LTD
+    Sagi Rotem
+      sagir&mellanox.co.il
+40092
+  Wiwynn Corporation
+    Zong Bing, Wu
+      bing_wu&wiwynn.com
+40981
+  Facebook, Inc.
+    Tim Tickel
+      twt&fb.com
+45065
+  Insyde
+    Y.C. Lin 
+      yc.lin&insyde.com
+48482
+  Linaro Ltd
+    Dave Pigott
+      dave.pigott&linaro.org
+48512
+  Inspur Group Co.,Ltd.
+    Chunpeng Mao
+      Maochp&inspur.com
+49150
+  Vertiv Co
+    John Bogdan
+      john.bogdan&vertivco.com
+49769
+  YADRO
+    Support
+      snmp&yadro.com
+51974
+  Raptor Computing Systems, LLC
+    Support Department
+      support&raptorcs.com
+52538
+  Ampere Computing
+    AJ Shah
+      aj&amperecomputing.com
diff --git a/meta-phosphor/recipes-phosphor/ipmi/ipmitool_%.bbappend b/meta-phosphor/recipes-phosphor/ipmi/ipmitool_%.bbappend
index d52f330..8f390f5 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/ipmitool_%.bbappend
+++ b/meta-phosphor/recipes-phosphor/ipmi/ipmitool_%.bbappend
@@ -3,13 +3,29 @@
 DEPENDS += "systemd"
 
 SRC_URI = "git://github.com/ipmitool/ipmitool.git;protocol=https"
-SRCREV = "d818c2ff85c011be29c8d3047e516a5e032a1923"
+SRCREV = "c3939dac2c060651361fc71516806f9ab8c38901"
 
-# this patch has been submitted to ipmitool upstream and is in review
+# TODO: when a new company joins the OpenBMC project by signing
+#       a CLA, if they have an enterprise number on file with the
+#       IANA, the versioned file, $PWD/ipmitool/enterprise-numbers
+#       needs to be updated to add their entry. The canonical
+#       version of the file is locatede here:
+#       https://www.iana.org/assignments/enterprise-numbers
+#
+#       This file is manually downloaded so it can be versioned
+#       instead of having the makefile download it during do_compile
 SRC_URI += " \
-    file://0001-create_pen_list-only-print-if-values-are-set.patch \
+    file://enterprise-numbers \
     "
 
+# make sure that the enterprise-numbers file gets installed in the root FS
+FILES_${PN} += "/usr/share/misc/enterprise-numbers"
+do_compile_prepend() {
+    # copy the SRC_URI version of enterprise-numbers
+    # to the build dir to prevent a fetch
+    cp "${WORKDIR}/enterprise-numbers" "${WORKDIR}/build/enterprise-numbers"
+}
+
 S = "${WORKDIR}/git"
 LIC_FILES_CHKSUM = "file://${S}/COPYING;md5=9aa91e13d644326bf281924212862184"