diff options
author | Ed Tanous <ed.tanous@intel.com> | 2019-03-18 23:46:22 +0300 |
---|---|---|
committer | Ed Tanous <ed.tanous@intel.com> | 2019-03-20 21:21:06 +0300 |
commit | 225376f0a37ee9b6f20626e5f377d8833ea1727f (patch) | |
tree | bc590b26d8bdd06b6459c4debaa3041207e5c2cc /meta-openbmc-mods/meta-common/recipes-core | |
parent | e5c10e334eee83873c5bc09aac722e12c802c5ff (diff) | |
download | openbmc-225376f0a37ee9b6f20626e5f377d8833ea1727f.tar.xz |
Update to internal
Signed-off-by: Ed Tanous <ed.tanous@intel.com>
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-core')
9 files changed, 145 insertions, 126 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-core/at-scale-debug/at-scale-debug.bb b/meta-openbmc-mods/meta-common/recipes-core/at-scale-debug/at-scale-debug.bb index 8d4a67ec5..de30d52b7 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/at-scale-debug/at-scale-debug.bb +++ b/meta-openbmc-mods/meta-common/recipes-core/at-scale-debug/at-scale-debug.bb @@ -13,7 +13,7 @@ do_configure[depends] += "virtual/kernel:do_shared_workdir" SRC_URI = "git://git@github.com/Intel-BMC/at-scale-debug;protocol=ssh" -SRCREV = "de77d02aefa3c9df62365e7f07224c5cf9b0eb96" +SRCREV = "c4c223bdbe5b58a7acad12dc9700365330f2df1c" S = "${WORKDIR}/git" SYSTEMD_SERVICE_${PN} += "com.intel.AtScaleDebug.service" diff --git a/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb/0001-Refine-KVM-websock-proxy.patch b/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb/0001-Refine-KVM-websock-proxy.patch deleted file mode 100644 index acbfebdee..000000000 --- a/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb/0001-Refine-KVM-websock-proxy.patch +++ /dev/null @@ -1,119 +0,0 @@ -From 430bfc33ee396e4aced0514b66703e5c58a7503d Mon Sep 17 00:00:00 2001 -From: Jae Hyun Yoo <jae.hyun.yoo@intel.com> -Date: Tue, 26 Feb 2019 15:46:07 -0800 -Subject: [PATCH] Refine KVM websock proxy - -This commit simplifies input buffer delivering logic by removing -a doWrite() call from readDone(). Input events can be delivered -through websocket's onmessage handler only and it's enough. - -Also, it fixes a suspicious weak point of commit/consume pair on -outputBuffer. - -Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@intel.com> ---- - include/kvm_websocket.hpp | 57 +++++++++++++++++++++-------------------------- - 1 file changed, 26 insertions(+), 31 deletions(-) - -diff --git a/include/kvm_websocket.hpp b/include/kvm_websocket.hpp -index aa2eaecc3205..447171b9981a 100644 ---- a/include/kvm_websocket.hpp -+++ b/include/kvm_websocket.hpp -@@ -20,53 +20,48 @@ static boost::beast::flat_static_buffer<1024U> inputBuffer; - - static crow::websocket::Connection* session = nullptr; - --static bool doingWrite = false; -+inline void doWrite(); - --inline void doWrite() -+inline void WriteDone(const boost::system::error_code& ec, -+ std::size_t bytesWritten) - { -- if (doingWrite) -+ BMCWEB_LOG_DEBUG << "Wrote " << bytesWritten << "bytes"; -+ inputBuffer.consume(bytesWritten); -+ -+ if (session == nullptr) -+ { -+ return; -+ } -+ if (ec == boost::asio::error::eof) -+ { -+ session->close("KVM socket port closed"); -+ return; -+ } -+ if (ec) - { -- BMCWEB_LOG_DEBUG << "Already writing. Bailing out"; -+ session->close("Error in reading to host port"); -+ BMCWEB_LOG_ERROR << "Error in KVM socket write " << ec; - return; - } -+ -+ doWrite(); -+} -+ -+inline void doWrite() -+{ - if (inputBuffer.size() == 0) - { - BMCWEB_LOG_DEBUG << "inputBuffer empty. Bailing out"; - return; - } - -- doingWrite = true; -- hostSocket->async_write_some( -- inputBuffer.data(), -- [](boost::beast::error_code ec, std::size_t bytes_written) { -- BMCWEB_LOG_DEBUG << "Wrote " << bytes_written << "bytes"; -- doingWrite = false; -- inputBuffer.consume(bytes_written); -- -- if (session == nullptr) -- { -- return; -- } -- if (ec == boost::asio::error::eof) -- { -- session->close("KVM socket port closed"); -- return; -- } -- if (ec) -- { -- session->close("Error in reading to host port"); -- BMCWEB_LOG_ERROR << "Error in KVM socket write " << ec; -- return; -- } -- doWrite(); -- }); -+ hostSocket->async_write_some(inputBuffer.data(), WriteDone); - } - - inline void doRead(); - - inline void readDone(const boost::system::error_code& ec, std::size_t bytesRead) - { -- outputBuffer.commit(bytesRead); - BMCWEB_LOG_DEBUG << "read done. Read " << bytesRead << " bytes"; - if (ec) - { -@@ -82,6 +77,7 @@ inline void readDone(const boost::system::error_code& ec, std::size_t bytesRead) - return; - } - -+ outputBuffer.commit(bytesRead); - boost::beast::string_view payload( - static_cast<const char*>(outputBuffer.data().data()), bytesRead); - BMCWEB_LOG_DEBUG << "Sending payload size " << payload.size(); -@@ -112,7 +108,6 @@ inline void connectHandler(const boost::system::error_code& ec) - return; - } - -- doWrite(); - doRead(); - } - --- -2.7.4 - diff --git a/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb_%.bbappend b/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb_%.bbappend index 8d5a43c51..7f07e48ea 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb_%.bbappend +++ b/meta-openbmc-mods/meta-common/recipes-core/bmcweb/bmcweb_%.bbappend @@ -6,8 +6,6 @@ GROUPADD_PARAM_${PN} = "web; redfish " FILESEXTRAPATHS_append := ":${THISDIR}/${PN}" -SRC_URI += "file://0001-Refine-KVM-websock-proxy.patch" - # Enable CPU Log and Raw PECI support EXTRA_OECMAKE += "-DBMCWEB_ENABLE_REDFISH_CPU_LOG=ON" EXTRA_OECMAKE += "-DBMCWEB_ENABLE_REDFISH_RAW_PECI=ON" diff --git a/meta-openbmc-mods/meta-common/recipes-core/cpu-log-util/cpu-log-util_git.bb b/meta-openbmc-mods/meta-common/recipes-core/cpu-log-util/cpu-log-util_git.bb index 10793689b..8419fb483 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/cpu-log-util/cpu-log-util_git.bb +++ b/meta-openbmc-mods/meta-common/recipes-core/cpu-log-util/cpu-log-util_git.bb @@ -11,7 +11,7 @@ LICENSE = "CLOSED" LIC_FILES_CHKSUM = "" SRC_URI = "git://git@github.com/Intel-BMC/at-scale-debug;protocol=ssh" -SRCREV = "de77d02aefa3c9df62365e7f07224c5cf9b0eb96" +SRCREV = "c4c223bdbe5b58a7acad12dc9700365330f2df1c" S = "${WORKDIR}/git/cpu-log-util" PACKAGES += "libpeci" diff --git a/meta-openbmc-mods/meta-common/recipes-core/fw-update/files/usb-ctrl b/meta-openbmc-mods/meta-common/recipes-core/fw-update/files/usb-ctrl new file mode 100644 index 000000000..ae9f54263 --- /dev/null +++ b/meta-openbmc-mods/meta-common/recipes-core/fw-update/files/usb-ctrl @@ -0,0 +1,136 @@ +#!/bin/sh + +setup_image() +{ + set -x + local storage="$1" + local sz_mb="$2" + # create the backing store + dd if=/dev/zero of=$storage bs=1M seek=$sz_mb count=0 2>/dev/null + # this shows up as 23FC-F676 in /dev/disk/by-uuid + local diskid=0x23FCF676 + mkdosfs -n 'OPENBMC-FW' -i $diskid -I $storage >/dev/null 2>&1 +} + +mount_image() +{ + set -x + local storage="$1" + local stormnt="$2" + mkdir -p $stormnt || exit 1 + mount -o loop -t vfat $storage $stormnt +} + +cleanup_image() +{ + set -x + local storage="$1" + local stormnt="$2" + umount -f "$stormnt" + rm -f "$storage" + rmdir "$stormnt" +} + +GADGET_BASE=/sys/kernel/config/usb_gadget + +which_dev() +{ + local in_use=$(cat $GADGET_BASE/*/UDC) + cd /sys/class/udc + for D in *; do + case "$in_use" in + *"$D"*) ;; + *) echo "$D"; return 0;; + esac + done + return 1 +} + +usb_ms_insert() +{ + local name="$1" + local storage="$2" + + if [ -d $GADGET_BASE/$name ]; then + echo "device $name already exists" >&2 + return 1 + fi + mkdir $GADGET_BASE/$name + cd $GADGET_BASE/$name + + echo 0x1d6b > idVendor # Linux Foundation + echo 0x0105 > idProduct # FunctionFS Gadget + mkdir strings/0x409 + local machineid=$(cat /etc/machine-id) + local data="OpenBMC USB mass storage gadget device serial number" + local serial=$( echo -n "${machineid}${data}${machineid}" | \ + sha256sum | cut -b 0-12 ) + echo $serial > strings/0x409/serialnumber + echo OpenBMC > strings/0x409/manufacturer + echo "OpenBMC Mass Storage" > strings/0x409/product + + mkdir configs/c.1 + mkdir functions/mass_storage.$name + echo $storage > functions/mass_storage.$name/lun.0/file + echo 0 > functions/mass_storage.$name/lun.0/removable + mkdir configs/c.1/strings/0x409 + + echo "Conf 1" > configs/c.1/strings/0x409/configuration + echo 120 > configs/c.1/MaxPower + ln -s functions/mass_storage.$name configs/c.1 + local dev=$(which_dev) + echo $dev > UDC +} + +usb_ms_eject() +{ + local name="$1" + + echo '' > $GADGET_BASE/$name/UDC + + rm -f $GADGET_BASE/$name/configs/c.1/mass_storage.$name + rmdir $GADGET_BASE/$name/configs/c.1/strings/0x409 + rmdir $GADGET_BASE/$name/configs/c.1 + rmdir $GADGET_BASE/$name/functions/mass_storage.$name + rmdir $GADGET_BASE/$name/strings/0x409 + rmdir $GADGET_BASE/$name +} + +usage() +{ + echo "Usage: $0 <action> ..." + echo " $0 setup <file> <sizeMB>" + echo " $0 insert <name> <file>" + echo " $0 eject <name>" + echo " $0 mount <file> <mnt>" + echo " $0 cleanup <file> <mnt>" + exit 1 +} + +echo "$#: $0 $@" +case "$1" in + insert) + shift + usb_ms_insert "$@" + ;; + eject) + shift + usb_ms_eject "$@" + ;; + setup) + shift + setup_image "$@" + ;; + mount) + shift + mount_image "$@" + ;; + cleanup) + shift + cleanup_image "$@" + ;; + *) + usage + ;; +esac +exit $? diff --git a/meta-openbmc-mods/meta-common/recipes-core/fw-update/intel-fw-update.bb b/meta-openbmc-mods/meta-common/recipes-core/fw-update/intel-fw-update.bb index ea39e62be..ac8e58c03 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/fw-update/intel-fw-update.bb +++ b/meta-openbmc-mods/meta-common/recipes-core/fw-update/intel-fw-update.bb @@ -6,13 +6,17 @@ PR = "r1" RDEPENDS_intel-fw-update += "mtd-utils" # wget tftp scp RDEPENDS_intel-fw-update += "busybox dropbear" +# mkfs.vfat, parted +RDEPENDS_intel-fw-update += "dosfstools parted" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://${INTELBASE}/COPYING.apache-2.0;md5=34400b68072d710fecd0a2940a0d1658" SRC_URI += "file://fwupd.sh" +SRC_URI += "file://usb-ctrl" do_install() { install -d ${D}${bindir} install -m 0755 ${WORKDIR}/fwupd.sh ${D}${bindir} + install -m 0755 ${WORKDIR}/usb-ctrl ${D}${bindir} } diff --git a/meta-openbmc-mods/meta-common/recipes-core/ipmi/intel-ipmi-oem_%.bbappend b/meta-openbmc-mods/meta-common/recipes-core/ipmi/intel-ipmi-oem_%.bbappend index a7c19f708..5526d9c6b 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/ipmi/intel-ipmi-oem_%.bbappend +++ b/meta-openbmc-mods/meta-common/recipes-core/ipmi/intel-ipmi-oem_%.bbappend @@ -1,2 +1,2 @@ SRC_URI = "git://github.com/openbmc/intel-ipmi-oem.git" -SRCREV = "fcce83df799d9580f48b7f793989c9c96bc882e0" +SRCREV = "7086a88cfe94db15233bae450b3a03d3566bca68" diff --git a/meta-openbmc-mods/meta-common/recipes-core/ipmi/ipmi-providers.bb b/meta-openbmc-mods/meta-common/recipes-core/ipmi/ipmi-providers.bb index 9e620a19c..c23da6df2 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/ipmi/ipmi-providers.bb +++ b/meta-openbmc-mods/meta-common/recipes-core/ipmi/ipmi-providers.bb @@ -2,7 +2,7 @@ SUMMARY = "Intel IPMI Providers" DESCRIPTION = "IPMI Provider Libraries" SRC_URI = "git://git@github.com/Intel-BMC/intel-ipmi-providers;protocol=ssh" -SRCREV = "3573b25576d14b3334f93bd988c6e2003fab8f90" +SRCREV = "bbb45687fc2993980ac95117d8503ee6c2358965" S = "${WORKDIR}/git" PV = "0.1+git${SRCPV}" diff --git a/meta-openbmc-mods/meta-common/recipes-core/peci-pcie/peci-pcie_git.bb b/meta-openbmc-mods/meta-common/recipes-core/peci-pcie/peci-pcie_git.bb index 91eed5a82..2e89c27c1 100644 --- a/meta-openbmc-mods/meta-common/recipes-core/peci-pcie/peci-pcie_git.bb +++ b/meta-openbmc-mods/meta-common/recipes-core/peci-pcie/peci-pcie_git.bb @@ -10,7 +10,7 @@ SRC_URI = "git://git@github.com/Intel-BMC/provingground;protocol=ssh" DEPENDS = "boost sdbusplus cpu-log-util" PV = "0.1+git${SRCPV}" -SRCREV = "3cc86d6c536b4c5ee7afb5447837b83ce8b3d149" +SRCREV = "c927781ad3ca1408cd7fb0b7cc2538ea10ded76b" S = "${WORKDIR}/git/peci_pcie" |