From 4dbeb3740b7e8a843f5a0d611dce883e9526aa35 Mon Sep 17 00:00:00 2001 From: Calin Crisan Date: Sun, 11 Oct 2015 20:38:52 +0300 Subject: [PATCH] raspberrypi2: fixed RPi.GPIO wrong base address --- package/python-rpi-gpio/bcm2836-base-address._patch | 13 +++++++++++++ package/python-rpi-gpio/python-rpi-gpio.mk | 11 +++++++++++ 2 files changed, 24 insertions(+) create mode 100644 package/python-rpi-gpio/bcm2836-base-address._patch diff --git a/package/python-rpi-gpio/bcm2836-base-address._patch b/package/python-rpi-gpio/bcm2836-base-address._patch new file mode 100644 index 0000000000..442d2580f5 --- /dev/null +++ b/package/python-rpi-gpio/bcm2836-base-address._patch @@ -0,0 +1,13 @@ +diff -uNr RPi.GPIO-0.5.11/source/c_gpio.c RPi.GPIO-0.5.11.new/source/c_gpio.c +--- RPi.GPIO-0.5.11/source/c_gpio.c 2015-02-16 00:21:57.000000000 +0200 ++++ RPi.GPIO-0.5.11.new/source/c_gpio.c 2015-10-11 20:02:47.729468438 +0300 +@@ -27,7 +27,7 @@ + #include + #include "c_gpio.h" + +-#define BCM2708_PERI_BASE_DEFAULT 0x20000000 ++#define BCM2708_PERI_BASE_DEFAULT 0x3f000000 + #define GPIO_BASE_OFFSET 0x200000 + #define FSEL_OFFSET 0 // 0x0000 + #define SET_OFFSET 7 // 0x001c / 4 + diff --git a/package/python-rpi-gpio/python-rpi-gpio.mk b/package/python-rpi-gpio/python-rpi-gpio.mk index 88707db530..7c72b78def 100644 --- a/package/python-rpi-gpio/python-rpi-gpio.mk +++ b/package/python-rpi-gpio/python-rpi-gpio.mk @@ -9,5 +9,16 @@ PYTHON_RPI_GPIO_SOURCE = RPi.GPIO-$(PYTHON_RPI_GPIO_VERSION).tar.gz PYTHON_RPI_GPIO_SITE = http://pypi.python.org/packages/source/R/RPi.GPIO PYTHON_RPI_GPIO_SETUP_TYPE = distutils +BOARD = $(shell basename $(BASE_DIR)) +PYTHON_RPI_GPIO_PKG_DIR = $(TOPDIR)/package/python-rpi-gpio + +define RPI2_BASE_ADDRESS_PATCH + cd $(@D) && patch -p1 < $(PYTHON_RPI_GPIO_PKG_DIR)/bcm2836-base-address._patch +endef + +ifeq ($(BOARD), raspberrypi2) + PYTHON_RPI_GPIO_POST_PATCH_HOOKS += RPI2_BASE_ADDRESS_PATCH +endif + $(eval $(python-package))