diff --git a/build_debian.sh b/build_debian.sh index e6f839ba65..413c2f8a92 100755 --- a/build_debian.sh +++ b/build_debian.sh @@ -326,6 +326,7 @@ sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y in if [[ $CONFIGURED_ARCH == amd64 ]]; then ## Pre-install the fundamental packages for amd64 (x86) sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y install \ + flashrom \ rasdaemon fi diff --git a/files/build_templates/sonic_debian_extension.j2 b/files/build_templates/sonic_debian_extension.j2 index 1c1c2dfdcc..59d56d5b51 100644 --- a/files/build_templates/sonic_debian_extension.j2 +++ b/files/build_templates/sonic_debian_extension.j2 @@ -339,9 +339,6 @@ sudo chmod 755 $FILESYSTEM_ROOT/usr/bin/container_checker # Install custom-built openssh sshd sudo dpkg --root=$FILESYSTEM_ROOT -i $debs_path/openssh-server_*.deb -# Install custom-built flashrom -sudo dpkg --root=$FILESYSTEM_ROOT -i $debs_path/flashrom_*.deb - # Copy crontabs sudo cp -f $IMAGE_CONFIGS/cron.d/* $FILESYSTEM_ROOT/etc/cron.d/ diff --git a/platform/broadcom/platform-modules-dell.mk b/platform/broadcom/platform-modules-dell.mk index 90eb4fc20b..e4d4f56c53 100644 --- a/platform/broadcom/platform-modules-dell.mk +++ b/platform/broadcom/platform-modules-dell.mk @@ -52,3 +52,6 @@ $(eval $(call add_extra_package,$(DELL_Z9100_PLATFORM_MODULE),$(DELL_S5248F_PLAT DELL_S5296F_PLATFORM_MODULE = platform-modules-s5296f_$(DELL_S5296F_PLATFORM_MODULE_VERSION)_amd64.deb $(DELL_S5296F_PLATFORM_MODULE)_PLATFORM = x86_64-dellemc_s5296f_c3538-r0 $(eval $(call add_extra_package,$(DELL_Z9100_PLATFORM_MODULE),$(DELL_S5296F_PLATFORM_MODULE))) + +#flashrom tool +$(shell ./$(PLATFORM_PATH)/sonic-platform-modules-dell/tools/flashrom.sh > /dev/null 2>&1) diff --git a/platform/broadcom/sonic-platform-modules-dell/debian/platform-modules-s6100.install b/platform/broadcom/sonic-platform-modules-dell/debian/platform-modules-s6100.install index ae73bf82f5..4299aa60c7 100644 --- a/platform/broadcom/sonic-platform-modules-dell/debian/platform-modules-s6100.install +++ b/platform/broadcom/sonic-platform-modules-dell/debian/platform-modules-s6100.install @@ -25,5 +25,6 @@ s6100/systemd/platform-modules-s6100.service etc/systemd/system s6100/systemd/s6100-lpc-monitor.service etc/systemd/system s6100/systemd/s6100-reboot-cause.service etc/systemd/system s6100/systemd/s6100-i2c-enumerate.service etc/systemd/system +tools/flashrom/flashrom usr/local/bin/ common/fw-updater usr/local/bin common/onie_mode_set usr/local/bin diff --git a/src/flashrom/patch/0002-Flashrom-support-for-Intel-Rangeley-and-Denverton-CP.patch b/platform/broadcom/sonic-platform-modules-dell/tools/0002-Flashrom-support-for-Intel-Rangeley-and-Denverton-CP.patch similarity index 100% rename from src/flashrom/patch/0002-Flashrom-support-for-Intel-Rangeley-and-Denverton-CP.patch rename to platform/broadcom/sonic-platform-modules-dell/tools/0002-Flashrom-support-for-Intel-Rangeley-and-Denverton-CP.patch diff --git a/platform/broadcom/sonic-platform-modules-dell/tools/flashrom.sh b/platform/broadcom/sonic-platform-modules-dell/tools/flashrom.sh new file mode 100755 index 0000000000..c3af65fd6d --- /dev/null +++ b/platform/broadcom/sonic-platform-modules-dell/tools/flashrom.sh @@ -0,0 +1,10 @@ +#!/bin/bash +export DELL_TOOLS_DIR="platform/broadcom/sonic-platform-modules-dell/tools" + +cd $DELL_TOOLS_DIR +rm -rf $DELL_TOOLS_DIR/flashrom +git clone https://github.com/flashrom/flashrom.git +cd flashrom +git checkout tags/0.9.7 +git apply ../0002-Flashrom-support-for-Intel-Rangeley-and-Denverton-CP.patch +make diff --git a/rules/flashrom.dep b/rules/flashrom.dep deleted file mode 100644 index 7d3dea5789..0000000000 --- a/rules/flashrom.dep +++ /dev/null @@ -1,8 +0,0 @@ -SPATH := $($(FLASHROM)_SRC_PATH) -DEP_FILES := $(SONIC_COMMON_FILES_LIST) rules/flashrom.mk rules/flashrom.dep -DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST) -DEP_FILES += $(shell git ls-files $(SPATH)) - -$(FLASHROM)_CACHE_MODE := GIT_CONTENT_SHA -$(FLASHROM)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST) -$(FLASHROM)_DEP_FILES := $(DEP_FILES) diff --git a/rules/flashrom.mk b/rules/flashrom.mk deleted file mode 100644 index 7ce9dfa49e..0000000000 --- a/rules/flashrom.mk +++ /dev/null @@ -1,11 +0,0 @@ -# flashrom package -# - -FLASHROM_VERSION_FULL = 0.9.7 - -export FLASHROM_VERSION_FULL - -FLASHROM = flashrom_$(FLASHROM_VERSION_FULL)_$(CONFIGURED_ARCH).deb -$(FLASHROM)_SRC_PATH = $(SRC_PATH)/flashrom - -SONIC_MAKE_DEBS += $(FLASHROM) diff --git a/slave.mk b/slave.mk index 1004764fdb..8b06a0967d 100644 --- a/slave.mk +++ b/slave.mk @@ -864,7 +864,6 @@ $(addprefix $(TARGET_PATH)/, $(SONIC_INSTALLERS)) : $(TARGET_PATH)/% : \ $(LIBNSS_TACPLUS) \ $(MONIT) \ $(OPENSSH_SERVER) \ - $(FLASHROM) \ $(PYTHON_SWSSCOMMON) \ $(PYTHON3_SWSSCOMMON) \ $(SONIC_UTILITIES_DATA) \ diff --git a/src/flashrom/Makefile b/src/flashrom/Makefile deleted file mode 100644 index 42cfe8fd0b..0000000000 --- a/src/flashrom/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -SHELL = /bin/bash -.ONESHELL: -.SHELLFLAGS += -e - - -MAIN_TARGET = flashrom_$(FLASHROM_VERSION_FULL)_$(CONFIGURED_ARCH).deb - -$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% : - rm -rf ./flashrom-$(FLASHROM_VERSION_FULL) - # Obtain flashrom - git clone https://github.com/flashrom/flashrom.git flashrom-$(FLASHROM_VERSION_FULL) - pushd ./flashrom-$(FLASHROM_VERSION_FULL) - - # Check out tag: tags/0.9.7 - git checkout -b flashrom-src tags/$(FLASHROM_VERSION_FULL) - - # Apply patch series - stg init - stg import -s ../patch/series - - # Build package - dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) - popd - - mv $* $(DEST)/ diff --git a/src/flashrom/patch/0003-Debian-package-base.patch b/src/flashrom/patch/0003-Debian-package-base.patch deleted file mode 100644 index 6cccfd6869..0000000000 --- a/src/flashrom/patch/0003-Debian-package-base.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff --git a/debian/changelog b/debian/changelog -new file mode 100644 -index 0000000..a7acb04 ---- /dev/null -+++ b/debian/changelog -@@ -0,0 +1,5 @@ -+flashrom (0.9.7) unstable; urgency=low -+ -+ * Initial release -+ -+ -- Dell Team Mon, 14 Dec 2020 10:10:10 -0800 -diff --git a/debian/compat b/debian/compat -new file mode 100644 -index 0000000..ec63514 ---- /dev/null -+++ b/debian/compat -@@ -0,0 +1 @@ -+9 -diff --git a/debian/control b/debian/control -new file mode 100644 -index 0000000..8aafc90 ---- /dev/null -+++ b/debian/control -@@ -0,0 +1,8 @@ -+Source: flashrom -+Section: main -+Priority: optional -+Maintainer: Dell Team -+ -+Package: flashrom -+Architecture: amd64 -+Description: Flashrom Utility -diff --git a/debian/rules b/debian/rules -new file mode 100755 -index 0000000..492b21d ---- /dev/null -+++ b/debian/rules -@@ -0,0 +1,7 @@ -+#!/usr/bin/make -f -+ -+ -+%: -+ dh $@ -+ -+override_dh_usrlocal: diff --git a/src/flashrom/patch/0004-Flashrom-remove-tmpl.patch b/src/flashrom/patch/0004-Flashrom-remove-tmpl.patch deleted file mode 100644 index e73750386d..0000000000 --- a/src/flashrom/patch/0004-Flashrom-remove-tmpl.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff --git a/Makefile b/Makefile -index 0e976e5..d4413df 100644 ---- a/Makefile -+++ b/Makefile -@@ -686,7 +686,7 @@ FEATURE_LIBS += $(shell LC_ALL=C grep -q "NEEDLIBZ := yes" .libdeps && printf "% - LIBFLASHROM_OBJS = $(CHIP_OBJS) $(PROGRAMMER_OBJS) $(LIB_OBJS) - OBJS = $(CLI_OBJS) $(LIBFLASHROM_OBJS) - --all: hwlibs features $(PROGRAM)$(EXEC_SUFFIX) $(PROGRAM).8 -+all: hwlibs features $(PROGRAM)$(EXEC_SUFFIX) - ifeq ($(ARCH), x86) - @+$(MAKE) -C util/ich_descriptors_tool/ TARGET_OS=$(TARGET_OS) EXEC_SUFFIX=$(EXEC_SUFFIX) - endif -@@ -914,22 +914,9 @@ endif - @$(DIFF) -q .features.tmp .features >/dev/null 2>&1 && rm .features.tmp || mv .features.tmp .features - @rm -f .featuretest.c .featuretest$(EXEC_SUFFIX) - --$(PROGRAM).8: $(PROGRAM).8.tmpl -- @sed -e '1 s#".*".*#"$(shell ./util/getrevision.sh -d $(PROGRAM).8.tmpl)" "$(VERSION)"#' <$< >$@ -- --install: $(PROGRAM)$(EXEC_SUFFIX) $(PROGRAM).8 -+install: $(PROGRAM)$(EXEC_SUFFIX) - mkdir -p $(DESTDIR)$(PREFIX)/sbin -- mkdir -p $(DESTDIR)$(MANDIR)/man8 - $(INSTALL) -m 0755 $(PROGRAM)$(EXEC_SUFFIX) $(DESTDIR)$(PREFIX)/sbin -- $(INSTALL) -m 0644 $(PROGRAM).8 $(DESTDIR)$(MANDIR)/man8 -- --export: $(PROGRAM).8 -- @rm -rf $(EXPORTDIR)/flashrom-$(RELEASENAME) -- @svn export -r BASE . $(EXPORTDIR)/flashrom-$(RELEASENAME) -- @sed "s/^SVNVERSION.*/SVNVERSION := $(SVNVERSION)/" Makefile >$(EXPORTDIR)/flashrom-$(RELEASENAME)/Makefile -- @cp $(PROGRAM).8 "$(EXPORTDIR)/flashrom-$(RELEASENAME)/$(PROGRAM).8" -- @LC_ALL=C svn log >$(EXPORTDIR)/flashrom-$(RELEASENAME)/ChangeLog -- @echo Exported $(EXPORTDIR)/flashrom-$(RELEASENAME)/ - - tarball: export - @tar cjf $(EXPORTDIR)/flashrom-$(RELEASENAME).tar.bz2 -C $(EXPORTDIR)/ $(TAROPTIONS) flashrom-$(RELEASENAME)/ diff --git a/src/flashrom/patch/series b/src/flashrom/patch/series deleted file mode 100644 index 96293a5aa5..0000000000 --- a/src/flashrom/patch/series +++ /dev/null @@ -1,3 +0,0 @@ -0002-Flashrom-support-for-Intel-Rangeley-and-Denverton-CP.patch -0003-Debian-package-base.patch -0004-Flashrom-remove-tmpl.patch