Skip to contentSkip to conversation

spidev_test: new package

PATCH Superseded Gustavo Zacarias 2 participants 3 messages Oct 24, 2014

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 spidev_test: new package

---
 package/Config.in                  |  1 +
 package/spidev_test/Config.in      | 11 +++++++++++
 package/spidev_test/spidev_test.mk | 30 ++++++++++++++++++++++++++++++
 3 files changed, 42 insertions(+)
 create mode 100644 package/spidev_test/Config.in
 create mode 100644 package/spidev_test/spidev_test.mk
package/Config.in +1 -0
index b0d8a80..a5d4dc9 100644
@@ -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"
package/spidev_test/Config.in new file +11 -0
new file mode 100644
index 0000000..0fca030
@@ -0,0 +1,11 @@
+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'.
+
+	  https://www.kernel.org/doc/Documentation/spi/spidev_test.c
package/spidev_test/spidev_test.mk new file +30 -0
new file mode 100644
index 0000000..5662eb1
@@ -0,0 +1,30 @@
+################################################################################
+#
+# spidev_test
+#
+################################################################################
+
+# Newest version requires SPI_TX_QUAD/SPI_RX_QUAD to build
+# Pretty safe assumption that toolchain headers are <= runtime kernel version
+ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y)
+SPIDEV_TEST_VERSION = c2e78c34ef0bf4fa860b5fffc99c769d6ddaf52d
+else
+SPIDEV_TEST_VERSION = 925d16a209b40a3e7202a4f867991fb608834d36
+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)
+
+# Downloaded file is C source
+SPIDEV_TEST_EXTRACT_CMDS =
+
+define SPIDEV_TEST_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) -x c \
+		-o $(@D)/spidev_test $(BR2_DL_DIR)/$(SPIDEV_TEST_SOURCE)
+endef
+
+define SPIDEV_TEST_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 755 $(@D)/spidev_test \
+		$(TARGET_DIR)/usr/sbin/spidev_test
+endef
+
+$(eval $(generic-package))
Signature · 1 line
2.0.4
#1 lore raw

PATCH v2 1/1 spidev_test: new package

Hi Gustavo,

Quoted 44 lines · Gustavo Zacarias
---
 package/Config.in                  |  1 +
 package/spidev_test/Config.in      | 11 +++++++++++
 package/spidev_test/spidev_test.mk | 30 ++++++++++++++++++++++++++++++
 3 files changed, 42 insertions(+)
 create mode 100644 package/spidev_test/Config.in
 create mode 100644 package/spidev_test/spidev_test.mk
package/Config.in +1 -0
index b0d8a80..a5d4dc9 100644
@@ -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"
package/spidev_test/Config.in new file +11 -0
new file mode 100644
index 0000000..0fca030
@@ -0,0 +1,11 @@
+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'.
+
+	  https://www.kernel.org/doc/Documentation/spi/spidev_test.c
package/spidev_test/spidev_test.mk new file +0 -0
new file mode 100644
index 0000000..5662eb1

package/spidev_test/spidev_test.mk line 7

Quoted 7 lines
package/spidev_test/spidev_test.mk new file +7 -0
@@ -0,0 +1,30 @@
+################################################################################
+#
+# spidev_test
+#
+################################################################################
+
+# Newest version requires SPI_TX_QUAD/SPI_RX_QUAD to build

I'd add that SPI_TX_QUAD is also an ABI change to make the next line clearer.

package/spidev_test/spidev_test.mk line 8

Quoted 1 line
package/spidev_test/spidev_test.mk new file +1 -0
+# Pretty safe assumption that toolchain headers are <= runtime kernel version

This assumption should@least be documented in the help text, IMO.

package/spidev_test/spidev_test.mk line 12

Quoted 4 lines
package/spidev_test/spidev_test.mk new file +4 -0
+ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y)
+SPIDEV_TEST_VERSION = c2e78c34ef0bf4fa860b5fffc99c769d6ddaf52d
+else
+SPIDEV_TEST_VERSION = 925d16a209b40a3e7202a4f867991fb608834d36

Why not use kernel version tags, v3.14 and v3.15?

Quoted 8 lines
package/spidev_test/spidev_test.mk new file +8 -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)
+
+# Downloaded file is C source
+SPIDEV_TEST_EXTRACT_CMDS =
+
+define SPIDEV_TEST_BUILD_CMDS

package/spidev_test/spidev_test.mk line 30

Quoted 10 lines
package/spidev_test/spidev_test.mk new file +10 -0
+	$(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) -x c \
+		-o $(@D)/spidev_test $(BR2_DL_DIR)/$(SPIDEV_TEST_SOURCE)
+endef
+
+define SPIDEV_TEST_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 755 $(@D)/spidev_test \
+		$(TARGET_DIR)/usr/sbin/spidev_test
+endef
+
+$(eval $(generic-package))

baruch

Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
#2 lore raw

PATCH v2 1/1 spidev_test: new package

Quoted 7 lines · Baruch Siach
Quoted 1 line

+# Newest version requires SPI_TX_QUAD/SPI_RX_QUAD to build

I'd add that SPI_TX_QUAD is also an ABI change to make the next line clearer.

Quoted 1 line

+# Pretty safe assumption that toolchain headers are <= runtime kernel version

This assumption should at least be documented in the help text, IMO.

Hi Baruch.
Ok.

Quoted 1 line

Why not use kernel version tags, v3.14 and v3.15?

Force of habit, i'll switch to tags for clarity.
Regards.