From a8abc31178084ea410ca40cd41c7731e149fbec9 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Thu, 28 Jun 2018 14:35:19 +0800 Subject: intel-microcode: update to 20180425 Point to the the license from layer now that text .dat isn't supplied. And, generate cpio from binary files. Signed-off-by: Anuj Mittal --- .../microcode/files/Intel-Microcode-License | 123 +++++++++++++++++++++ recipes-core/microcode/intel-microcode_20180312.bb | 65 ----------- recipes-core/microcode/intel-microcode_20180425.bb | 68 ++++++++++++ 3 files changed, 191 insertions(+), 65 deletions(-) create mode 100644 recipes-core/microcode/files/Intel-Microcode-License delete mode 100644 recipes-core/microcode/intel-microcode_20180312.bb create mode 100644 recipes-core/microcode/intel-microcode_20180425.bb (limited to 'recipes-core') diff --git a/recipes-core/microcode/files/Intel-Microcode-License b/recipes-core/microcode/files/Intel-Microcode-License new file mode 100644 index 00000000..af5b41c2 --- /dev/null +++ b/recipes-core/microcode/files/Intel-Microcode-License @@ -0,0 +1,123 @@ +INTEL SOFTWARE LICENSE AGREEMENT + +IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING. +Do not use or load this software and any associated materials (collectively, +the "Software") until you have carefully read the following terms and +conditions. By loading or using the Software, you agree to the terms of this +Agreement. If you do not wish to so agree, do not install or use the Software. + +LICENSES: Please Note: +- If you are a network administrator, the "Site License" below shall +apply to you. +- If you are an end user, the "Single User License" shall apply to you. +- If you are an original equipment manufacturer (OEM), the "OEM License" +shall apply to you. + +SITE LICENSE. You may copy the Software onto your organization's computers +for your organization's use, and you may make a reasonable number of +back-up copies of the Software, subject to these conditions: + +1. This Software is licensed for use only in conjunction with Intel +component products. Use of the Software in conjunction with non-Intel +component products is not licensed hereunder. +2. You may not copy, modify, rent, sell, distribute or transfer any part +of the Software except as provided in this Agreement, and you agree to +prevent unauthorized copying of the Software. +3. You may not reverse engineer, decompile, or disassemble the Software. +4. You may not sublicense or permit simultaneous use of the Software by +more than one user. +5. The Software may include portions offered on terms in addition to those +set out here, as set out in a license accompanying those portions. + +SINGLE USER LICENSE. You may copy the Software onto a single computer for +your personal, noncommercial use, and you may make one back-up copy of the +Software, subject to these conditions: + +1. This Software is licensed for use only in conjunction with Intel +component products. Use of the Software in conjunction with non-Intel +component products is not licensed hereunder. +2. You may not copy, modify, rent, sell, distribute or transfer any part +of the Software except as provided in this Agreement, and you agree to +prevent unauthorized copying of the Software. +3. You may not reverse engineer, decompile, or disassemble the Software. +4. You may not sublicense or permit simultaneous use of the Software by +more than one user. +5. The Software may include portions offered on terms in addition to those +set out here, as set out in a license accompanying those portions. + +OEM LICENSE: You may reproduce and distribute the Software only as an +integral part of or incorporated in Your product or as a standalone +Software maintenance update for existing end users of Your products, +excluding any other standalone products, subject to these conditions: + +1. This Software is licensed for use only in conjunction with Intel +component products. Use of the Software in conjunction with non-Intel +component products is not licensed hereunder. +2. You may not copy, modify, rent, sell, distribute or transfer any part +of the Software except as provided in this Agreement, and you agree to +prevent unauthorized copying of the Software. +3. You may not reverse engineer, decompile, or disassemble the Software. +4. You may only distribute the Software to your customers pursuant to a +written license agreement. Such license agreement may be a "break-the- +seal" license agreement. At a minimum such license shall safeguard +Intel's ownership rights to the Software. +5. The Software may include portions offered on terms in addition to those +set out here, as set out in a license accompanying those portions. + +NO OTHER RIGHTS. No rights or licenses are granted by Intel to You, expressly +or by implication, with respect to any proprietary information or patent, +copyright, mask work, trademark, trade secret, or other intellectual property +right owned or controlled by Intel, except as expressly provided in this +Agreement. + +OWNERSHIP OF SOFTWARE AND COPYRIGHTS. Title to all copies of the Software +remains with Intel or its suppliers. The Software is copyrighted and +protected by the laws of the United States and other countries, and +international treaty provisions. You may not remove any copyright notices +from the Software. Intel may make changes to the Software, or to items +referenced therein, at any time without notice, but is not obligated to +support or update the Software. Except as otherwise expressly provided, Intel +grants no express or implied right under Intel patents, copyrights, +trademarks, or other intellectual property rights. You may transfer the +Software only if the recipient agrees to be fully bound by these terms and if +you retain no copies of the Software. + +LIMITED MEDIA WARRANTY. If the Software has been delivered by Intel on +physical media, Intel warrants the media to be free from material physical +defects for a period of ninety days after delivery by Intel. If such a defect +is found, return the media to Intel for replacement or alternate delivery of +the Software as Intel may select. + +EXCLUSION OF OTHER WARRANTIES. EXCEPT AS PROVIDED ABOVE, THE SOFTWARE IS +PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND +INCLUDING WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A +PARTICULAR PURPOSE. Intel does not warrant or assume responsibility for the +accuracy or completeness of any information, text, graphics, links or other +items contained within the Software. + +LIMITATION OF LIABILITY. IN NO EVENT SHALL INTEL OR ITS SUPPLIERS BE LIABLE +FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, LOST PROFITS, +BUSINESS INTERRUPTION, OR LOST INFORMATION) ARISING OUT OF THE USE OF OR +INABILITY TO USE THE SOFTWARE, EVEN IF INTEL HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS PROHIBIT EXCLUSION OR +LIMITATION OF LIABILITY FOR IMPLIED WARRANTIES OR CONSEQUENTIAL OR INCIDENTAL +DAMAGES, SO THE ABOVE LIMITATION MAY NOT APPLY TO YOU. YOU MAY ALSO HAVE +OTHER LEGAL RIGHTS THAT VARY FROM JURISDICTION TO JURISDICTION. + +TERMINATION OF THIS AGREEMENT. Intel may terminate this Agreement at any time +if you violate its terms. Upon termination, you will immediately destroy the +Software or return all copies of the Software to Intel. + +APPLICABLE LAWS. Claims arising under this Agreement shall be governed by the +laws of California, excluding its principles of conflict of laws and the +United Nations Convention on Contracts for the Sale of Goods. You may not +export the Software in violation of applicable export laws and regulations. +Intel is not obligated under any other agreements unless they are in writing +and signed by an authorized representative of Intel. + +GOVERNMENT RESTRICTED RIGHTS. The Software is provided with "RESTRICTED +RIGHTS." Use, duplication, or disclosure by the Government is subject to +restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its +successor. Use of the Software by the Government constitutes acknowledgment +of Intel's proprietary rights therein. Contractor or Manufacturer is Intel +2200 Mission College Blvd., Santa Clara, CA 95052. diff --git a/recipes-core/microcode/intel-microcode_20180312.bb b/recipes-core/microcode/intel-microcode_20180312.bb deleted file mode 100644 index 238d09f3..00000000 --- a/recipes-core/microcode/intel-microcode_20180312.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "Intel Processor Microcode Datafile for Linux" -HOMEPAGE = "http://www.intel.com/" -DESCRIPTION = "The microcode data file contains the latest microcode\ - definitions for all Intel processors. Intel releases microcode updates\ - to correct processor behavior as documented in the respective processor\ - specification updates. While the regular approach to getting this microcode\ - update is via a BIOS upgrade, Intel realizes that this can be an\ - administrative hassle. The Linux operating system and VMware ESX\ - products have a mechanism to update the microcode after booting.\ - For example, this file will be used by the operating system mechanism\ - if the file is placed in the /etc/firmware directory of the Linux system." - -LICENSE = "Intel-Microcode-License" -LIC_FILES_CHKSUM = "file://microcode.dat;endline=33;md5=57d3c3c310f8debda2b0ca5baba67298" - -SRC_URI = "https://downloadmirror.intel.com/27591/eng/microcode-${PV}.tgz" -SRC_URI[md5sum] = "be315cd99a7ca392a2f917ceacbe14f2" -SRC_URI[sha256sum] = "0b381face2df1b0a829dc4fa8fa93f47f39e11b1c9c22ebd44f8614657c1e779" -DEPENDS = "iucode-tool-native" -S = "${WORKDIR}" - -COMPATIBLE_HOST = "(i.86|x86_64).*-linux" -PACKAGE_ARCH = "${MACHINE_ARCH}" - -inherit deploy - -# Use any of the iucode_tool parameters to filter specific microcodes from the data file -# For further information, check the iucode-tool's manpage : http://manned.org/iucode-tool -UCODE_FILTER_PARAMETERS ?= "" - -do_compile() { - mkdir -p ${WORKDIR}/ucode/kernel/x86/microcode - ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \ - ${UCODE_FILTER_PARAMETERS} \ - --overwrite \ - --write-to=${WORKDIR}/microcode_${PV}.bin \ - ${WORKDIR}/microcode.dat - - ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \ - ${UCODE_FILTER_PARAMETERS} \ - --overwrite \ - --write-earlyfw=${WORKDIR}/microcode_${PV}.cpio \ - ${WORKDIR}/microcode.dat -} - -do_install() { - install -d ${D}${base_libdir}/firmware/intel-ucode/ - install ${WORKDIR}/microcode_${PV}.bin ${D}${base_libdir}/firmware/intel-ucode/ - cd ${D}${base_libdir}/firmware/intel-ucode/ - ln -sf microcode_${PV}.bin microcode.bin -} - -do_deploy() { - install -d ${DEPLOYDIR} - install ${S}/microcode_${PV}.cpio ${DEPLOYDIR}/ - cd ${DEPLOYDIR} - rm -f microcode.cpio - ln -sf microcode_${PV}.cpio microcode.cpio -} - -addtask deploy before do_build after do_compile - -PACKAGES = "${PN}" - -FILES_${PN} = "${base_libdir}" diff --git a/recipes-core/microcode/intel-microcode_20180425.bb b/recipes-core/microcode/intel-microcode_20180425.bb new file mode 100644 index 00000000..e864746d --- /dev/null +++ b/recipes-core/microcode/intel-microcode_20180425.bb @@ -0,0 +1,68 @@ +SUMMARY = "Intel Processor Microcode Datafile for Linux" +HOMEPAGE = "http://www.intel.com/" +DESCRIPTION = "The microcode data file contains the latest microcode\ + definitions for all Intel processors. Intel releases microcode updates\ + to correct processor behavior as documented in the respective processor\ + specification updates. While the regular approach to getting this microcode\ + update is via a BIOS upgrade, Intel realizes that this can be an\ + administrative hassle. The Linux operating system and VMware ESX\ + products have a mechanism to update the microcode after booting.\ + For example, this file will be used by the operating system mechanism\ + if the file is placed in the /etc/firmware directory of the Linux system." + +LICENSE = "Intel-Microcode-License" +LIC_FILES_CHKSUM = "file://Intel-Microcode-License;md5=9052c0dbf7250dc0bef70bd8212b0573" + +SRC_URI = "https://downloadmirror.intel.com/27776/eng/microcode-${PV}.tgz \ + file://Intel-Microcode-License \ + " + +SRC_URI[md5sum] = "99c80f9229554953a868127cda44e7e3" +SRC_URI[sha256sum] = "f0d2492f4561e2559f6c9471b231cb8262d45762c0e7cccf787be5c189b4e2d6" +DEPENDS = "iucode-tool-native" +S = "${WORKDIR}" + +COMPATIBLE_HOST = "(i.86|x86_64).*-linux" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit deploy + +# Use any of the iucode_tool parameters to filter specific microcodes from the data file +# For further information, check the iucode-tool's manpage : http://manned.org/iucode-tool +UCODE_FILTER_PARAMETERS ?= "" + +do_compile() { + rm -f ${WORKDIR}/intel-ucode/list + ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \ + ${UCODE_FILTER_PARAMETERS} \ + --overwrite \ + --write-to=${WORKDIR}/microcode_${PV}.bin \ + ${WORKDIR}/intel-ucode/* + + ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \ + ${UCODE_FILTER_PARAMETERS} \ + --overwrite \ + --write-earlyfw=${WORKDIR}/microcode_${PV}.cpio \ + ${WORKDIR}/intel-ucode/* +} + +do_install() { + install -d ${D}${base_libdir}/firmware/intel-ucode/ + install ${WORKDIR}/microcode_${PV}.bin ${D}${base_libdir}/firmware/intel-ucode/ + cd ${D}${base_libdir}/firmware/intel-ucode/ + ln -sf microcode_${PV}.bin microcode.bin +} + +do_deploy() { + install -d ${DEPLOYDIR} + install ${S}/microcode_${PV}.cpio ${DEPLOYDIR}/ + cd ${DEPLOYDIR} + rm -f microcode.cpio + ln -sf microcode_${PV}.cpio microcode.cpio +} + +addtask deploy before do_build after do_compile + +PACKAGES = "${PN}" + +FILES_${PN} = "${base_libdir}" -- cgit v1.2.3-54-g00ecf