diff --git a/package/Config.in b/package/Config.in index 84e7bd2669..e5686f6524 100644 --- a/package/Config.in +++ b/package/Config.in @@ -85,6 +85,7 @@ endif source "package/ramsmp/Config.in" source "package/ramspeed/Config.in" source "package/rt-tests/Config.in" + source "package/spidev_test/Config.in" source "package/strace/Config.in" source "package/stress/Config.in" source "package/sysprof/Config.in" diff --git a/package/spidev_test/Config.in b/package/spidev_test/Config.in new file mode 100644 index 0000000000..0d8214cc29 --- /dev/null +++ b/package/spidev_test/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_SPIDEV_TEST + bool "spidev_test" + help + SPI testing utility (using spidev driver). + + This package builds and installs the userspace 'spidev_test' + command. It is up to the user to ensure that the kernel + configuration has all suitable options enabled to allow a + proper operation of 'spidev_test'. + + The version used is based on your toolchain headers version, + if it's older than 3.15 then 3.0 is used, otherwise 3.15 + is used. + This means you won't have quad-pumped SPI support if your + toolchain is too old. + + https://www.kernel.org/doc/Documentation/spi/spidev_test.c diff --git a/package/spidev_test/spidev_test.mk b/package/spidev_test/spidev_test.mk new file mode 100644 index 0000000000..646372f2f5 --- /dev/null +++ b/package/spidev_test/spidev_test.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# spidev_test +# +################################################################################ + +# v3.15+ requires SPI_TX_QUAD/SPI_RX_QUAD to build +# Normally kernel headers can't be newer than kernel so switch based on that. +# If you need quad-pumped spi support you need to upgrade your toolchain. +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y) +SPIDEV_TEST_VERSION = v3.15 +else +SPIDEV_TEST_VERSION = v3.0 +endif +SPIDEV_TEST_SITE = http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/Documentation/spi +SPIDEV_TEST_SOURCE = spidev_test.c?id=$(SPIDEV_TEST_VERSION) +SPIDEV_TEST_LICENSE = GPLv2 + +define SPIDEV_TEST_EXTRACT_CMDS + cp $(BR2_DL_DIR)/$(SPIDEV_TEST_SOURCE) $(@D)/spidev_test.c +endef + +define SPIDEV_TEST_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) \ + -o $(@D)/spidev_test $(@D)/spidev_test.c +endef + +define SPIDEV_TEST_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/spidev_test \ + $(TARGET_DIR)/usr/sbin/spidev_test +endef + +$(eval $(generic-package))