diff options
Diffstat (limited to 'package/flashrom')
-rw-r--r-- | package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch | 41 | ||||
-rw-r--r-- | package/flashrom/Config.in | 25 | ||||
-rw-r--r-- | package/flashrom/flashrom.mk | 36 |
3 files changed, 88 insertions, 14 deletions
diff --git a/package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch b/package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch new file mode 100644 index 0000000000..06eb9256e4 --- /dev/null +++ b/package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch @@ -0,0 +1,41 @@ +From a9a03cc6ba71825bfae0d64e1888f33c77345bc3 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 17 Mar 2018 23:08:29 -0700 +Subject: [PATCH] platform: Add riscv to known platforms + +Change-Id: I724a99e2493fcbf71c2fc2d9f6a1ad607c737087 +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Reviewed-on: https://review.coreboot.org/25260 +Tested-by: build bot (Jenkins) <no-reply@coreboot.org> +Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> +Reviewed-by: David Hendricks <david.hendricks@gmail.com> +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Retrieved from: +https://github.com/flashrom/flashrom/commit/a9a03cc6ba71825bfae0d64e1888f33c77345bc3] +--- + platform.h | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/platform.h b/platform.h +index e3b7674ae..65fe85881 100644 +--- a/platform.h ++++ b/platform.h +@@ -69,6 +69,9 @@ + #elif defined (__m68k__) + #define __FLASHROM_ARCH__ "m68k" + #define IS_M68K 1 ++#elif defined (__riscv) ++ #define __FLASHROM_ARCH__ "riscv" ++ #define IS_RISCV 1 + #elif defined (__sh__) + #define __FLASHROM_ARCH__ "sh" + #define IS_SH 1 +@@ -77,7 +80,7 @@ + #define IS_S390 1 + #endif + +-#if !(IS_X86 || IS_MIPS || IS_PPC || IS_ARM || IS_SPARC || IS_ALPHA || IS_HPPA || IS_M68K || IS_SH || IS_S390) ++#if !(IS_X86 || IS_MIPS || IS_PPC || IS_ARM || IS_SPARC || IS_ALPHA || IS_HPPA || IS_M68K || IS_RISCV || IS_SH || IS_S390) + #error Unknown architecture + #endif + diff --git a/package/flashrom/Config.in b/package/flashrom/Config.in index e7844a0a62..c333c29730 100644 --- a/package/flashrom/Config.in +++ b/package/flashrom/Config.in @@ -1,13 +1,18 @@ +config BR2_PACKAGE_FLASHROM_ARCH_SUPPORTS + bool + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_arm || BR2_armeb + default y if BR2_i386 || BR2_x86_64 + default y if BR2_m68k + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_riscv + default y if BR2_sh + default y if BR2_sparc || BR2_sparc64 + config BR2_PACKAGE_FLASHROM bool "flashrom" - depends on BR2_i386 || BR2_x86_64 - depends on BR2_TOOLCHAIN_HAS_THREADS # libusb - select BR2_PACKAGE_PCIUTILS - select BR2_PACKAGE_LIBUSB - select BR2_PACKAGE_LIBUSB_COMPAT - select BR2_PACKAGE_LIBFTDI - # dmidecode is only a runtime dependency - select BR2_PACKAGE_DMIDECODE + depends on BR2_PACKAGE_FLASHROM_ARCH_SUPPORTS help flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash @@ -16,7 +21,3 @@ config BR2_PACKAGE_FLASHROM programmer devices. http://flashrom.org/ - -comment "flashrom needs a toolchain w/ threads" - depends on BR2_i386 || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/flashrom/flashrom.mk b/package/flashrom/flashrom.mk index 70f47b5a04..733ad7318d 100644 --- a/package/flashrom/flashrom.mk +++ b/package/flashrom/flashrom.mk @@ -7,13 +7,45 @@ FLASHROM_VERSION = 1.0 FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2 FLASHROM_SITE = https://download.flashrom.org/releases -FLASHROM_DEPENDENCIES = pciutils libusb libusb-compat libftdi host-pkgconf FLASHROM_LICENSE = GPL-2.0+ FLASHROM_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_LIBFTDI),y) +FLASHROM_DEPENDENCIES += host-pkgconf libftdi +FLASHROM_MAKE_OPTS += \ + CONFIG_FT2232_SPI=yes \ + CONFIG_USBBLASTER_SPI=yes +else +FLASHROM_MAKE_OPTS += \ + CONFIG_FT2232_SPI=no \ + CONFIG_USBBLASTER_SPI=no +endif + +ifeq ($(BR2_PACKAGE_LIBUSB),y) +FLASHROM_DEPENDENCIES += host-pkgconf libusb +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=yes +else +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no +endif + +ifeq ($(BR2_PACKAGE_LIBUSB_COMPAT),y) +FLASHROM_DEPENDENCIES += host-pkgconf libusb-compat +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=yes +else +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no +endif + +ifeq ($(BR2_PACKAGE_PCIUTILS),y) +FLASHROM_DEPENDENCIES += pciutils +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBPCI_PROGRAMMERS=yes +else +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBPCI_PROGRAMMERS=no +endif + define FLASHROM_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS) -DHAVE_STRNLEN" -C $(@D) + CFLAGS="$(TARGET_CFLAGS) -DHAVE_STRNLEN" \ + $(FLASHROM_MAKE_OPTS) -C $(@D) endef define FLASHROM_INSTALL_TARGET_CMDS |