[yocto] [meta-raspberrypi][PATCH] wiringpi: uprev to 2.44

Andrea Galbusera gizero at gmail.com
Mon Apr 3 13:07:27 PDT 2017


This upgrade is required to solve the following runtime hardware detection
issue when calling wiringPiSetup() on the Pi3:

  Unable to determine hardware version. I see: Hardware   : BCM2835
  ,
  - expecting BCM2708 or BCM2709.

This was triggered by the recent kernel upgrade to 4.9 that introduced
"BCM2835" as the hardware signature in /proc/cpuinfo.

Patches reworked as follow:
* 0001-Add-initial-cross-compile-support.patch: rebase to current upstream
* 0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch: drop since is now
upstream

Signed-off-by: Andrea Galbusera <gizero at gmail.com>
---
 .../0001-Add-initial-cross-compile-support.patch   | 96 +++++++++++-----------
 ...de-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch | 58 -------------
 recipes-devtools/wiringPi/wiringpi_git.bb          |  5 +-
 3 files changed, 51 insertions(+), 108 deletions(-)
 delete mode 100644 recipes-devtools/wiringPi/wiringpi/0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch

diff --git a/recipes-devtools/wiringPi/files/0001-Add-initial-cross-compile-support.patch b/recipes-devtools/wiringPi/files/0001-Add-initial-cross-compile-support.patch
index 603422c..a081b8d 100644
--- a/recipes-devtools/wiringPi/files/0001-Add-initial-cross-compile-support.patch
+++ b/recipes-devtools/wiringPi/files/0001-Add-initial-cross-compile-support.patch
@@ -1,21 +1,26 @@
-From 6d85e6cc3ab97c3f060e5e0a8e3f1945a14c86ba Mon Sep 17 00:00:00 2001
-From: Gianfranco Costamagna <gianfranco.costamagna at abinsula.com>
-Date: Mon, 12 Oct 2015 12:15:51 +0200
-Subject: [PATCH] Add initial cross compile support (rebase from Petter Mabäcker <petter at technux.se> version)
+From 4ed727aa9e528f130fdc8798df771037a1f22fc9 Mon Sep 17 00:00:00 2001
+From: Andrea Galbusera <gizero at gmail.com>
+Date: Mon, 3 Apr 2017 14:48:14 +0200
+Subject: [PATCH] =?UTF-8?q?Add=20initial=20cross=20compile=20support=20(re?=
+ =?UTF-8?q?base=20from=20Petter=20Mab=C3=A4cker=20<petter at technux.se>=20ve?=
+ =?UTF-8?q?rsion)?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
 
 ---
- devLib/Makefile             |   54 ++++++++++++++++++++++++-------------------
- examples/Gertboard/Makefile |   22 +++++++++++-------
- examples/Makefile           |   22 +++++++++++-------
- examples/PiFace/Makefile    |   22 +++++++++++-------
- examples/PiGlow/Makefile    |    4 ++--
- examples/q2w/Makefile       |    4 ++--
- gpio/Makefile               |   29 ++++++++++++-----------
- wiringPi/Makefile           |   50 +++++++++++++++++++++------------------
- 8 files changed, 119 insertions(+), 88 deletions(-)
+ devLib/Makefile             | 54 +++++++++++++++++++++++++--------------------
+ examples/Gertboard/Makefile | 20 +++++++++++------
+ examples/Makefile           | 20 +++++++++++------
+ examples/PiFace/Makefile    | 20 +++++++++++------
+ examples/PiGlow/Makefile    |  4 ++--
+ examples/q2w/Makefile       |  4 ++--
+ gpio/Makefile               | 29 ++++++++++++------------
+ wiringPi/Makefile           | 50 +++++++++++++++++++++++------------------
+ 8 files changed, 116 insertions(+), 85 deletions(-)
 
 diff --git a/devLib/Makefile b/devLib/Makefile
-index 0fb0033..cbea759 100644
+index cf665d6..040c03a 100644
 --- a/devLib/Makefile
 +++ b/devLib/Makefile
 @@ -31,15 +31,19 @@ ifneq ($V,1)
@@ -46,7 +51,7 @@ index 0fb0033..cbea759 100644
  
  LIBS    =
  
-@@ -66,16 +70,16 @@ $(STATIC):	$(OBJ)
+@@ -68,16 +72,16 @@ $(STATIC):	$(OBJ)
  
  $(DYNAMIC):	$(OBJ)
  	$Q echo "[Link (Dynamic)]"
@@ -66,7 +71,7 @@ index 0fb0033..cbea759 100644
  
  .PHONY:	tags
  tags:	$(SRC)
-@@ -86,22 +90,22 @@ tags:	$(SRC)
+@@ -88,22 +92,22 @@ tags:	$(SRC)
  .PHONY:	install
  install:	$(DYNAMIC)
  	$Q echo "[Install Headers]"
@@ -99,7 +104,7 @@ index 0fb0033..cbea759 100644
  
  .PHONY:	install-deb
  install-deb:	$(DYNAMIC)
-@@ -116,9 +120,11 @@ install-deb:	$(DYNAMIC)
+@@ -118,9 +122,11 @@ install-deb:	$(DYNAMIC)
  .PHONY:	uninstall
  uninstall:
  	$Q echo "[UnInstall]"
@@ -127,12 +132,11 @@ index 1939ad6..98d1415 100644
 -CC	= gcc
 -INCLUDE	= -I/usr/local/include
 -CFLAGS	= $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
--
--LDFLAGS	= -L/usr/local/lib
--LDLIBS    = -lwiringPi -lwiringPiDev -lpthread -lm
 +DESTDIR?=/usr
 +PREFIX?=/local
-+
+ 
+-LDFLAGS	= -L/usr/local/lib
+-LDLIBS    = -lwiringPi -lwiringPiDev -lpthread -lm
 +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
 +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
 +
@@ -148,7 +152,7 @@ index 1939ad6..98d1415 100644
  # Should not alter anything below this line
  ###############################################################################
 diff --git a/examples/Makefile b/examples/Makefile
-index e6b9b71..931b167 100644
+index 6d87885..8623816 100644
 --- a/examples/Makefile
 +++ b/examples/Makefile
 @@ -26,14 +26,20 @@ ifneq ($V,1)
@@ -160,12 +164,11 @@ index e6b9b71..931b167 100644
 -CC	= gcc
 -INCLUDE	= -I/usr/local/include
 -CFLAGS	= $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
--
--LDFLAGS	= -L/usr/local/lib
--LDLIBS    = -lwiringPi -lwiringPiDev -lpthread -lm
 +DESTDIR?=/usr
 +PREFIX?=/local
-+
+ 
+-LDFLAGS	= -L/usr/local/lib
+-LDLIBS    = -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt
 +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
 +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
 +
@@ -176,12 +179,12 @@ index e6b9b71..931b167 100644
 +CFLAGS	?= $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
 +
 +LDFLAGS	?= -L$(LIB_DIR)
-+LDLIBS    ?= -lwiringPi -lwiringPiDev -lpthread -lm
++LDLIBS    ?= -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt
  
  # Should not alter anything below this line
  ###############################################################################
 diff --git a/examples/PiFace/Makefile b/examples/PiFace/Makefile
-index 4685adc..cfaf902 100644
+index f937c14..ad030b3 100644
 --- a/examples/PiFace/Makefile
 +++ b/examples/PiFace/Makefile
 @@ -26,14 +26,20 @@ ifneq ($V,1)
@@ -193,12 +196,11 @@ index 4685adc..cfaf902 100644
 -CC	= gcc
 -INCLUDE	= -I/usr/local/include
 -CFLAGS	= $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
--
--LDFLAGS	= -L/usr/local/lib
--LDLIBS    = -lwiringPi -lwiringPiDev -lpthread -lm
 +DESTDIR?=/usr
 +PREFIX?=/local
-+
+ 
+-LDFLAGS	= -L/usr/local/lib
+-LDLIBS    = -lwiringPi -lwiringPiDev -lpthread -lm
 +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
 +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
 +
@@ -214,7 +216,7 @@ index 4685adc..cfaf902 100644
  # Should not alter anything below this line
  ###############################################################################
 diff --git a/examples/PiGlow/Makefile b/examples/PiGlow/Makefile
-index acd4818..dabd64e 100644
+index f182db7..d1ea74f 100644
 --- a/examples/PiGlow/Makefile
 +++ b/examples/PiGlow/Makefile
 @@ -29,10 +29,10 @@ endif
@@ -231,7 +233,7 @@ index acd4818..dabd64e 100644
  
  # Should not alter anything below this line
 diff --git a/examples/q2w/Makefile b/examples/q2w/Makefile
-index 6f50fa0..c5e9f6e 100644
+index 8f773bf..14aa6e4 100644
 --- a/examples/q2w/Makefile
 +++ b/examples/q2w/Makefile
 @@ -29,10 +29,10 @@ endif
@@ -248,7 +250,7 @@ index 6f50fa0..c5e9f6e 100644
  
  ###############################################################################
 diff --git a/gpio/Makefile b/gpio/Makefile
-index 7dcd090..83ec454 100644
+index f41a005..22753ee 100644
 --- a/gpio/Makefile
 +++ b/gpio/Makefile
 @@ -30,13 +30,17 @@ ifneq ($V,1)
@@ -259,7 +261,7 @@ index 7dcd090..83ec454 100644
 -DEBUG	= -O2
 -CC	= gcc
 -INCLUDE	= -I$(DESTDIR)$(PREFIX)/include
--CFLAGS	= $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
+-CFLAGS	= $(DEBUG) -Wall -Wextra $(INCLUDE) -Winline -pipe
 +INCLUDE_DIR?=$(DESTDIR)$(PREFIX)/include
 +LIB_DIR?=$(DESTDIR)$(PREFIX)/lib
 +BIN_DIR?=$(DESTDIR)$(PREFIX)/bin
@@ -269,10 +271,10 @@ index 7dcd090..83ec454 100644
 +DEBUG	?= -O2
 +CC	?= gcc
 +INCLUDE	?= -I$(INCLUDE_DIR)
-+CFLAGS	?= $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
++CFLAGS	?= $(DEBUG) -Wall -Wextra $(INCLUDE) -Winline -pipe
 +
 +LDFLAGS	?= -L$(LIB_DIR)
- LIBS    = -lwiringPi -lwiringPiDev -lpthread
+ LIBS    = -lwiringPi -lwiringPiDev -lpthread -lrt -lm -lcrypt
  
  # May not need to  alter anything below this line
 @@ -72,13 +76,10 @@ tags:	$(SRC)
@@ -293,7 +295,7 @@ index 7dcd090..83ec454 100644
  
  .PHONY:	install-deb
  install-deb:	gpio
-@@ -89,7 +90,7 @@ install-deb:	gpio
+@@ -91,7 +92,7 @@ install-deb:	gpio
  .PHONY:	uninstall
  uninstall:
  	$Q echo "[UnInstall]"
@@ -303,7 +305,7 @@ index 7dcd090..83ec454 100644
  
  .PHONY:	depend
 diff --git a/wiringPi/Makefile b/wiringPi/Makefile
-index 6bbcc5d..5355b74 100644
+index e1868b9..e39f75a 100644
 --- a/wiringPi/Makefile
 +++ b/wiringPi/Makefile
 @@ -25,19 +25,23 @@ VERSION=$(shell cat ../VERSION)
@@ -334,14 +336,14 @@ index 6bbcc5d..5355b74 100644
 +CC	?= gcc
 +INCLUDE	?= -I.
  DEFS	= -D_GNU_SOURCE
- CFLAGS	= $(DEBUG) $(DEFS) -Wformat=2 -Wall -Winline $(INCLUDE) -pipe -fPIC
+ CFLAGS	= $(DEBUG) $(DEFS) -Wformat=2 -Wall -Wextra -Winline $(INCLUDE) -pipe -fPIC
  
-@@ -89,17 +93,17 @@ $(STATIC):	$(OBJ)
+@@ -78,17 +82,17 @@ $(STATIC):	$(OBJ)
  
  $(DYNAMIC):	$(OBJ)
  	$Q echo "[Link (Dynamic)]"
--	$Q $(CC) -shared -Wl,-soname,libwiringPi.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPi.so.$(VERSION) -lpthread $(OBJ)
-+	$Q $(CC) $(LDFLAGS) -shared -Wl,-soname,$(BASE_NAME).so.$(DYN_VERS_MAJ) -o $(BASE_NAME).so -lpthread $(OBJ)
+-	$Q $(CC) -shared -Wl,-soname,libwiringPi.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPi.so.$(VERSION) $(LIBS) $(OBJ)
++	$Q $(CC) $(LDFLAGS) -shared -Wl,-soname,$(BASE_NAME).so.$(DYN_VERS_MAJ) -o $(BASE_NAME).so $(LIBS) $(OBJ)
  
  .c.o:
  	$Q echo [Compile] $<
@@ -357,7 +359,7 @@ index 6bbcc5d..5355b74 100644
  
  .PHONY:	tags
  tags:	$(SRC)
-@@ -110,22 +114,22 @@ tags:	$(SRC)
+@@ -99,22 +103,22 @@ tags:	$(SRC)
  .PHONY:	install
  install:	$(DYNAMIC)
  	$Q echo "[Install Headers]"
@@ -390,7 +392,7 @@ index 6bbcc5d..5355b74 100644
  
  .PHONY:	install-deb
  install-deb:	$(DYNAMIC)
-@@ -140,9 +144,11 @@ install-deb:	$(DYNAMIC)
+@@ -129,9 +133,11 @@ install-deb:	$(DYNAMIC)
  .PHONY:	uninstall
  uninstall:
  	$Q echo "[UnInstall]"
@@ -406,5 +408,5 @@ index 6bbcc5d..5355b74 100644
  
  .PHONY:	depend
 -- 
-2.1.4
+2.7.4
 
diff --git a/recipes-devtools/wiringPi/wiringpi/0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch b/recipes-devtools/wiringPi/wiringpi/0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch
deleted file mode 100644
index 5de5853..0000000
--- a/recipes-devtools/wiringPi/wiringpi/0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 7f65eb37a82a6d9b095d9c8f262ad9dd205acd03 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Sat, 30 Jan 2016 16:57:38 -0800
-Subject: [PATCH] include <asm/ioctl.h> directly for _IOC_SIZEBITS
-
-Fixes errors like
-| wiringPiSPI.c: In function 'wiringPiSPIDataRW':
-| wiringPiSPI.c:89:35: error: '_IOC_SIZEBITS' undeclared (first use in
-this function)
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
-Upstream-Status: Submitted
-
- wiringPi/wiringPi.c    | 1 +
- wiringPi/wiringPiI2C.c | 1 +
- wiringPi/wiringPiSPI.c | 1 +
- 3 files changed, 3 insertions(+)
-
-diff --git a/wiringPi/wiringPi.c b/wiringPi/wiringPi.c
-index 32e5100..cb5db9d 100644
---- a/wiringPi/wiringPi.c
-+++ b/wiringPi/wiringPi.c
-@@ -64,6 +64,7 @@
- #include <time.h>
- #include <fcntl.h>
- #include <pthread.h>
-+#include <asm/ioctl.h>
- #include <sys/time.h>
- #include <sys/mman.h>
- #include <sys/stat.h>
-diff --git a/wiringPi/wiringPiI2C.c b/wiringPi/wiringPiI2C.c
-index c787bce..efdf53c 100644
---- a/wiringPi/wiringPiI2C.c
-+++ b/wiringPi/wiringPiI2C.c
-@@ -52,6 +52,7 @@
- #include <string.h>
- #include <fcntl.h>
- #include <sys/ioctl.h>
-+#include <asm/ioctl.h>
- 
- #include "wiringPi.h"
- #include "wiringPiI2C.h"
-diff --git a/wiringPi/wiringPiSPI.c b/wiringPi/wiringPiSPI.c
-index 453df31..ae3c7d9 100644
---- a/wiringPi/wiringPiSPI.c
-+++ b/wiringPi/wiringPiSPI.c
-@@ -27,6 +27,7 @@
- #include <fcntl.h>
- #include <errno.h>
- #include <string.h>
-+#include <asm/ioctl.h>
- #include <sys/ioctl.h>
- #include <linux/spi/spidev.h>
- 
--- 
-2.7.0
-
diff --git a/recipes-devtools/wiringPi/wiringpi_git.bb b/recipes-devtools/wiringPi/wiringpi_git.bb
index c337b19..7953a55 100644
--- a/recipes-devtools/wiringPi/wiringpi_git.bb
+++ b/recipes-devtools/wiringPi/wiringpi_git.bb
@@ -4,14 +4,13 @@ SECTION = "devel/libs"
 LICENSE = "LGPLv3+"
 LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02"
 
-# tag 2.32
-SRCREV = "b0a60c3302973ca1878d149d61f2f612c8f27fac"
+# tag 2.44
+SRCREV = "96344ff7125182989f98d3be8d111952a8f74e15"
 
 S = "${WORKDIR}/git"
 
 SRC_URI = "git://git.drogon.net/wiringPi \
            file://0001-Add-initial-cross-compile-support.patch \
-           file://0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch \
            "
 
 COMPATIBLE_MACHINE = "raspberrypi"
-- 
2.7.4




More information about the yocto mailing list