diff --git a/packages/audio/flac/package.mk b/packages/audio/flac/package.mk
index d234e78f36..749275de5d 100644
--- a/packages/audio/flac/package.mk
+++ b/packages/audio/flac/package.mk
@@ -20,8 +20,8 @@ PKG_NAME="flac"
PKG_VERSION="1.3.1"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="LGPL"
-PKG_SITE="http://flac.sourceforge.net/"
+PKG_LICENSE="GPLv2"
+PKG_SITE="https://xiph.org/flac/"
PKG_URL="http://downloads.xiph.org/releases/flac/$PKG_NAME-$PKG_VERSION.tar.xz"
PKG_DEPENDS_TARGET="toolchain libogg"
PKG_PRIORITY="optional"
diff --git a/packages/audio/libcdio/package.mk b/packages/audio/libcdio/package.mk
index 7f467073c2..aa7eb4c66c 100644
--- a/packages/audio/libcdio/package.mk
+++ b/packages/audio/libcdio/package.mk
@@ -17,12 +17,12 @@
################################################################################
PKG_NAME="libcdio"
-PKG_VERSION="0.92"
+PKG_VERSION="0.93"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://www.gnu.org/software/libcdio/"
-PKG_URL="http://ftp.gnu.org/gnu/libcdio/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_LICENSE="GPLv3"
+PKG_SITE="https://www.gnu.org/software/libcdio/"
+PKG_URL="https://ftp.gnu.org/gnu/libcdio/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_PRIORITY="optional"
PKG_SECTION="audio"
diff --git a/packages/audio/libogg/package.mk b/packages/audio/libogg/package.mk
index 0122b05b94..65bbb9fce2 100644
--- a/packages/audio/libogg/package.mk
+++ b/packages/audio/libogg/package.mk
@@ -17,11 +17,11 @@
################################################################################
PKG_NAME="libogg"
-PKG_VERSION="1.3.1"
+PKG_VERSION="1.3.2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="BSD"
-PKG_SITE="http://www.xiph.org/ogg/"
+PKG_SITE="https://www.xiph.org/ogg/"
PKG_URL="http://downloads.xiph.org/releases/ogg/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_PRIORITY="optional"
diff --git a/packages/audio/libopenmpt/package.mk b/packages/audio/libopenmpt/package.mk
index cd24ff66ad..09aa71e2d0 100644
--- a/packages/audio/libopenmpt/package.mk
+++ b/packages/audio/libopenmpt/package.mk
@@ -17,12 +17,12 @@
################################################################################
PKG_NAME="libopenmpt"
-PKG_VERSION="0.2.4764"
+PKG_VERSION="0.2.5598"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="GPL"
+PKG_LICENSE="BSD"
PKG_SITE="http://lib.openmpt.org/libopenmpt/"
-PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_URL="http://buildbot.openmpt.org/builds/auto/src/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_PRIORITY="optional"
PKG_SECTION="audio"
diff --git a/packages/databases/sqlite/package.mk b/packages/databases/sqlite/package.mk
index b29805058e..044496f7f1 100644
--- a/packages/databases/sqlite/package.mk
+++ b/packages/databases/sqlite/package.mk
@@ -21,8 +21,8 @@ PKG_VERSION="autoconf-3081101"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="PublicDomain"
-PKG_SITE="http://www.sqlite.org/"
-PKG_URL="http://sqlite.org/2015/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_SITE="https://www.sqlite.org/"
+PKG_URL="https://www.sqlite.org/2015/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_PRIORITY="optional"
PKG_SECTION="database"
diff --git a/packages/devel/cmake/package.mk b/packages/devel/cmake/package.mk
index 301795e146..bfa0736bc5 100644
--- a/packages/devel/cmake/package.mk
+++ b/packages/devel/cmake/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="cmake"
-PKG_VERSION="3.3.1"
+PKG_VERSION="3.3.2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="BSD"
diff --git a/packages/devel/gettext/package.mk b/packages/devel/gettext/package.mk
index 169fd95976..30b59e8f6e 100644
--- a/packages/devel/gettext/package.mk
+++ b/packages/devel/gettext/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="gettext"
-PKG_VERSION="0.19.5.1"
+PKG_VERSION="0.19.6"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
diff --git a/packages/devel/glibc/package.mk b/packages/devel/glibc/package.mk
index 4f8f4ade35..ad35377400 100644
--- a/packages/devel/glibc/package.mk
+++ b/packages/devel/glibc/package.mk
@@ -169,6 +169,7 @@ makeinstall_init() {
cp -PR $ROOT/$PKG_BUILD/.$TARGET_NAME/elf/ld*.so* $INSTALL/lib
cp $ROOT/$PKG_BUILD/.$TARGET_NAME/libc.so.6 $INSTALL/lib
cp $ROOT/$PKG_BUILD/.$TARGET_NAME/nptl/libpthread.so.0 $INSTALL/lib
+ cp -PR $ROOT/$PKG_BUILD/.$TARGET_NAME/rt/librt.so* $INSTALL/lib
if [ "$TARGET_ARCH" = "arm" -a "$TARGET_FLOAT" = "hard" ]; then
ln -sf ld.so $INSTALL/lib/ld-linux.so.3
diff --git a/packages/devel/libffi/package.mk b/packages/devel/libffi/package.mk
index c7d0a88134..8ac70f3155 100644
--- a/packages/devel/libffi/package.mk
+++ b/packages/devel/libffi/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="libffi"
-PKG_VERSION="3.1"
+PKG_VERSION="3.2.1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
diff --git a/packages/graphics/bcm2835-driver/package.mk b/packages/graphics/bcm2835-driver/package.mk
index 946d872744..df5cc52110 100644
--- a/packages/graphics/bcm2835-driver/package.mk
+++ b/packages/graphics/bcm2835-driver/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="bcm2835-driver"
-PKG_VERSION="fc95251"
+PKG_VERSION="9a21e6a"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="nonfree"
diff --git a/packages/graphics/giflib/package.mk b/packages/graphics/giflib/package.mk
index c9608d999f..902006390e 100644
--- a/packages/graphics/giflib/package.mk
+++ b/packages/graphics/giflib/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="giflib"
-PKG_VERSION="5.0.5"
+PKG_VERSION="5.1.1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="OSS"
diff --git a/packages/graphics/libdrm/package.mk b/packages/graphics/libdrm/package.mk
index 9cf96585f2..41b2ca54f6 100644
--- a/packages/graphics/libdrm/package.mk
+++ b/packages/graphics/libdrm/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="libdrm"
-PKG_VERSION="2.4.64"
+PKG_VERSION="2.4.65"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
diff --git a/packages/graphics/mesa/package.mk b/packages/graphics/mesa/package.mk
index e67802d87d..9077c680f9 100644
--- a/packages/graphics/mesa/package.mk
+++ b/packages/graphics/mesa/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="mesa"
-PKG_VERSION="10.6.5"
+PKG_VERSION="10.6.8"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="OSS"
diff --git a/packages/linux/package.mk b/packages/linux/package.mk
index a5fb472314..c881bf0f8b 100644
--- a/packages/linux/package.mk
+++ b/packages/linux/package.mk
@@ -40,7 +40,7 @@ case "$LINUX" in
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET imx6-status-led imx6-soc-fan"
;;
*)
- PKG_VERSION="4.1.6"
+ PKG_VERSION="4.1.7"
PKG_URL="http://www.kernel.org/pub/linux/kernel/v4.x/$PKG_NAME-$PKG_VERSION.tar.xz"
;;
esac
diff --git a/packages/linux/patches/4.1.6/linux-003-no_dev_console.patch b/packages/linux/patches/4.1.7/linux-003-no_dev_console.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-003-no_dev_console.patch
rename to packages/linux/patches/4.1.7/linux-003-no_dev_console.patch
diff --git a/packages/linux/patches/4.1.6/linux-051-ouya_controller_support.patch b/packages/linux/patches/4.1.7/linux-051-ouya_controller_support.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-051-ouya_controller_support.patch
rename to packages/linux/patches/4.1.7/linux-051-ouya_controller_support.patch
diff --git a/packages/linux/patches/4.1.6/linux-052-XBOX_remote_support.patch b/packages/linux/patches/4.1.7/linux-052-XBOX_remote_support.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-052-XBOX_remote_support.patch
rename to packages/linux/patches/4.1.7/linux-052-XBOX_remote_support.patch
diff --git a/packages/linux/patches/4.1.6/linux-053-spinelplus-remote-0.2.patch b/packages/linux/patches/4.1.7/linux-053-spinelplus-remote-0.2.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-053-spinelplus-remote-0.2.patch
rename to packages/linux/patches/4.1.7/linux-053-spinelplus-remote-0.2.patch
diff --git a/packages/linux/patches/4.1.6/linux-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3.6.114c13.patch b/packages/linux/patches/4.1.7/linux-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3.6.114c13.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3.6.114c13.patch
rename to packages/linux/patches/4.1.7/linux-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3.6.114c13.patch
diff --git a/packages/linux/patches/4.1.6/linux-056-add_Adaptec_eHome_Infrared_Receiver.patch b/packages/linux/patches/4.1.7/linux-056-add_Adaptec_eHome_Infrared_Receiver.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-056-add_Adaptec_eHome_Infrared_Receiver.patch
rename to packages/linux/patches/4.1.7/linux-056-add_Adaptec_eHome_Infrared_Receiver.patch
diff --git a/packages/linux/patches/4.1.6/linux-057-Removed-MCE-customer-code-restriction-in-rc6-decode.patch b/packages/linux/patches/4.1.7/linux-057-Removed-MCE-customer-code-restriction-in-rc6-decode.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-057-Removed-MCE-customer-code-restriction-in-rc6-decode.patch
rename to packages/linux/patches/4.1.7/linux-057-Removed-MCE-customer-code-restriction-in-rc6-decode.patch
diff --git a/packages/linux/patches/4.1.6/linux-057-add_SMK_Manufacturing_Inc_Infrared_Receiver.patch b/packages/linux/patches/4.1.7/linux-057-add_SMK_Manufacturing_Inc_Infrared_Receiver.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-057-add_SMK_Manufacturing_Inc_Infrared_Receiver.patch
rename to packages/linux/patches/4.1.7/linux-057-add_SMK_Manufacturing_Inc_Infrared_Receiver.patch
diff --git a/packages/linux/patches/4.1.6/linux-058.05-hid_sony-add_autorepeat_for_PS3_remotes.patch b/packages/linux/patches/4.1.7/linux-058.05-hid_sony-add_autorepeat_for_PS3_remotes.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-058.05-hid_sony-add_autorepeat_for_PS3_remotes.patch
rename to packages/linux/patches/4.1.7/linux-058.05-hid_sony-add_autorepeat_for_PS3_remotes.patch
diff --git a/packages/linux/patches/4.1.6/linux-062-imon_pad_ignore_diagonal.patch b/packages/linux/patches/4.1.7/linux-062-imon_pad_ignore_diagonal.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-062-imon_pad_ignore_diagonal.patch
rename to packages/linux/patches/4.1.7/linux-062-imon_pad_ignore_diagonal.patch
diff --git a/packages/linux/patches/4.1.6/linux-063-xpad-fix_xbox360_wireless.patch b/packages/linux/patches/4.1.7/linux-063-xpad-fix_xbox360_wireless.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-063-xpad-fix_xbox360_wireless.patch
rename to packages/linux/patches/4.1.7/linux-063-xpad-fix_xbox360_wireless.patch
diff --git a/packages/linux/patches/4.1.6/linux-203-stb0899_enable_low_symbol_rate.patch b/packages/linux/patches/4.1.7/linux-203-stb0899_enable_low_symbol_rate.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-203-stb0899_enable_low_symbol_rate.patch
rename to packages/linux/patches/4.1.7/linux-203-stb0899_enable_low_symbol_rate.patch
diff --git a/packages/linux/patches/4.1.6/linux-212-mantis_stb0899_faster_lock.patch b/packages/linux/patches/4.1.7/linux-212-mantis_stb0899_faster_lock.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-212-mantis_stb0899_faster_lock.patch
rename to packages/linux/patches/4.1.7/linux-212-mantis_stb0899_faster_lock.patch
diff --git a/packages/linux/patches/4.1.6/linux-221-ngene-octopus.patch b/packages/linux/patches/4.1.7/linux-221-ngene-octopus.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-221-ngene-octopus.patch
rename to packages/linux/patches/4.1.7/linux-221-ngene-octopus.patch
diff --git a/packages/linux/patches/4.1.6/linux-222-stb0899_signal_quality.patch b/packages/linux/patches/4.1.7/linux-222-stb0899_signal_quality.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-222-stb0899_signal_quality.patch
rename to packages/linux/patches/4.1.7/linux-222-stb0899_signal_quality.patch
diff --git a/packages/linux/patches/4.1.6/linux-223-Fix-video-artifacts-with-tt-3600-s2-usb.patch b/packages/linux/patches/4.1.7/linux-223-Fix-video-artifacts-with-tt-3600-s2-usb.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-223-Fix-video-artifacts-with-tt-3600-s2-usb.patch
rename to packages/linux/patches/4.1.7/linux-223-Fix-video-artifacts-with-tt-3600-s2-usb.patch
diff --git a/packages/linux/patches/4.1.6/linux-224-STK1160-addFramescaling.patch b/packages/linux/patches/4.1.7/linux-224-STK1160-addFramescaling.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-224-STK1160-addFramescaling.patch
rename to packages/linux/patches/4.1.7/linux-224-STK1160-addFramescaling.patch
diff --git a/packages/linux/patches/4.1.6/linux-227-ds3000-invalid-symbol-rate.patch b/packages/linux/patches/4.1.7/linux-227-ds3000-invalid-symbol-rate.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-227-ds3000-invalid-symbol-rate.patch
rename to packages/linux/patches/4.1.7/linux-227-ds3000-invalid-symbol-rate.patch
diff --git a/packages/linux/patches/4.1.6/linux-228-fix-tt-s2-4600.patch b/packages/linux/patches/4.1.7/linux-228-fix-tt-s2-4600.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-228-fix-tt-s2-4600.patch
rename to packages/linux/patches/4.1.7/linux-228-fix-tt-s2-4600.patch
diff --git a/packages/linux/patches/4.1.6/linux-229-hauppauge-hvr-2205-and-2255.patch b/packages/linux/patches/4.1.7/linux-229-hauppauge-hvr-2205-and-2255.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-229-hauppauge-hvr-2205-and-2255.patch
rename to packages/linux/patches/4.1.7/linux-229-hauppauge-hvr-2205-and-2255.patch
diff --git a/packages/linux/patches/4.1.7/linux-230-elgato-eyetv-sat-v3.patch b/packages/linux/patches/4.1.7/linux-230-elgato-eyetv-sat-v3.patch
new file mode 100644
index 0000000000..2056a250f5
--- /dev/null
+++ b/packages/linux/patches/4.1.7/linux-230-elgato-eyetv-sat-v3.patch
@@ -0,0 +1,50 @@
+diff --git a/drivers/media/usb/dvb-usb/az6027.c b/drivers/media/usb/dvb-usb/az6027.c
+index 92e47d6..2e71136 100644
+--- a/drivers/media/usb/dvb-usb/az6027.c
++++ b/drivers/media/usb/dvb-usb/az6027.c
+@@ -1090,6 +1090,7 @@ static struct usb_device_id az6027_usb_table[] = {
+ { USB_DEVICE(USB_VID_TECHNISAT, USB_PID_TECHNISAT_USB2_HDCI_V2) },
+ { USB_DEVICE(USB_VID_ELGATO, USB_PID_ELGATO_EYETV_SAT) },
+ { USB_DEVICE(USB_VID_ELGATO, USB_PID_ELGATO_EYETV_SAT_V2) },
++ { USB_DEVICE(USB_VID_ELGATO, USB_PID_ELGATO_EYETV_SAT_V3) },
+ { },
+ };
+
+@@ -1138,7 +1139,7 @@ static struct dvb_usb_device_properties az6027_properties = {
+
+ .i2c_algo = &az6027_i2c_algo,
+
+- .num_device_descs = 7,
++ .num_device_descs = 8,
+ .devices = {
+ {
+ .name = "AZUREWAVE DVB-S/S2 USB2.0 (AZ6027)",
+@@ -1168,6 +1169,10 @@ static struct dvb_usb_device_properties az6027_properties = {
+ .name = "Elgato EyeTV Sat",
+ .cold_ids = { &az6027_usb_table[6], NULL },
+ .warm_ids = { NULL },
++ }, {
++ .name = "Elgato EyeTV Sat",
++ .cold_ids = { &az6027_usb_table[7], NULL },
++ .warm_ids = { NULL },
+ },
+ { NULL },
+ }
+
+warning: LF will be replaced by CRLF in az6027.c.
+The file will have its original line endings in your working directory.
+diff --git a/drivers/media/dvb-core/dvb-usb-ids.h b/drivers/media/dvb-core/dvb-usb-ids.h
+index c117fb3..7552f38 100644
+--- a/drivers/media/dvb-core/dvb-usb-ids.h
++++ b/drivers/media/dvb-core/dvb-usb-ids.h
+@@ -365,6 +365,7 @@
+ #define USB_PID_ELGATO_EYETV_DTT_Dlx 0x0020
+ #define USB_PID_ELGATO_EYETV_SAT 0x002a
+ #define USB_PID_ELGATO_EYETV_SAT_V2 0x0025
++#define USB_PID_ELGATO_EYETV_SAT_V3 0x0036
+ #define USB_PID_DVB_T_USB_STICK_HIGH_SPEED_COLD 0x5000
+ #define USB_PID_DVB_T_USB_STICK_HIGH_SPEED_WARM 0x5001
+ #define USB_PID_FRIIO_WHITE 0x0001
+
+warning: LF will be replaced by CRLF in dvb-usb-ids.h.
+The file will have its original line endings in your working directory.
diff --git a/packages/linux/patches/4.1.6/linux-706-Sitecom-N300.patch b/packages/linux/patches/4.1.7/linux-706-Sitecom-N300.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-706-Sitecom-N300.patch
rename to packages/linux/patches/4.1.7/linux-706-Sitecom-N300.patch
diff --git a/packages/linux/patches/4.1.6/linux-950-saa716x_PCIe_interface_chipset.patch b/packages/linux/patches/4.1.7/linux-950-saa716x_PCIe_interface_chipset.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-950-saa716x_PCIe_interface_chipset.patch
rename to packages/linux/patches/4.1.7/linux-950-saa716x_PCIe_interface_chipset.patch
diff --git a/packages/linux/patches/4.1.6/linux-990.06-hda-Avoid-outputting-HDMI-audio-before-prepare-.patch b/packages/linux/patches/4.1.7/linux-990.06-hda-Avoid-outputting-HDMI-audio-before-prepare-.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-990.06-hda-Avoid-outputting-HDMI-audio-before-prepare-.patch
rename to packages/linux/patches/4.1.7/linux-990.06-hda-Avoid-outputting-HDMI-audio-before-prepare-.patch
diff --git a/packages/linux/patches/4.1.6/linux-995-CX24120-13Z_frontend.patch b/packages/linux/patches/4.1.7/linux-995-CX24120-13Z_frontend.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-995-CX24120-13Z_frontend.patch
rename to packages/linux/patches/4.1.7/linux-995-CX24120-13Z_frontend.patch
diff --git a/packages/linux/patches/4.1.6/linux-999-i915-use-legacy-turbo.patch b/packages/linux/patches/4.1.7/linux-999-i915-use-legacy-turbo.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-999-i915-use-legacy-turbo.patch
rename to packages/linux/patches/4.1.7/linux-999-i915-use-legacy-turbo.patch
diff --git a/packages/linux/patches/4.1.6/linux-999.02-0001-pm-disable-async-suspend-resume-by-default.patch b/packages/linux/patches/4.1.7/linux-999.02-0001-pm-disable-async-suspend-resume-by-default.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-999.02-0001-pm-disable-async-suspend-resume-by-default.patch
rename to packages/linux/patches/4.1.7/linux-999.02-0001-pm-disable-async-suspend-resume-by-default.patch
diff --git a/packages/linux/patches/4.1.6/linux-999.05-eMMC-Don-t-initialize-partitions-on-RPMB-flagged-are.patch b/packages/linux/patches/4.1.7/linux-999.05-eMMC-Don-t-initialize-partitions-on-RPMB-flagged-are.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-999.05-eMMC-Don-t-initialize-partitions-on-RPMB-flagged-are.patch
rename to packages/linux/patches/4.1.7/linux-999.05-eMMC-Don-t-initialize-partitions-on-RPMB-flagged-are.patch
diff --git a/packages/linux/patches/4.1.6/linux-999.20-mt7601u-support.patch b/packages/linux/patches/4.1.7/linux-999.20-mt7601u-support.patch
similarity index 100%
rename from packages/linux/patches/4.1.6/linux-999.20-mt7601u-support.patch
rename to packages/linux/patches/4.1.7/linux-999.20-mt7601u-support.patch
diff --git a/packages/multimedia/SDL2/package.mk b/packages/multimedia/SDL2/package.mk
index 9674b765b9..c982935d6f 100644
--- a/packages/multimedia/SDL2/package.mk
+++ b/packages/multimedia/SDL2/package.mk
@@ -21,8 +21,8 @@ PKG_VERSION="2.0.3"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
-PKG_SITE="http://www.libsdl.org/"
-PKG_URL="http://www.libsdl.org/release/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_SITE="https://www.libsdl.org/"
+PKG_URL="https://www.libsdl.org/release/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain yasm:host alsa-lib systemd dbus"
PKG_PRIORITY="optional"
PKG_SECTION="multimedia"
diff --git a/packages/multimedia/ffmpeg/package.mk b/packages/multimedia/ffmpeg/package.mk
index 511c777736..f7943f5391 100644
--- a/packages/multimedia/ffmpeg/package.mk
+++ b/packages/multimedia/ffmpeg/package.mk
@@ -20,9 +20,9 @@ PKG_NAME="ffmpeg"
PKG_VERSION="2.6.4"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="LGPL"
-PKG_SITE="http://ffmpeg.org"
-PKG_URL="https://www.ffmpeg.org/releases/${PKG_NAME}-${PKG_VERSION}.tar.gz"
+PKG_LICENSE="LGPLv2.1+"
+PKG_SITE="https://ffmpeg.org"
+PKG_URL="https://ffmpeg.org/releases/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_TARGET="toolchain yasm:host zlib bzip2 libvorbis libressl"
PKG_PRIORITY="optional"
PKG_SECTION="multimedia"
diff --git a/packages/multimedia/libva-intel-driver/package.mk b/packages/multimedia/libva-intel-driver/package.mk
index 432127a9c0..e3e1cb029b 100644
--- a/packages/multimedia/libva-intel-driver/package.mk
+++ b/packages/multimedia/libva-intel-driver/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="libva-intel-driver"
-PKG_VERSION="1.6.0"
+PKG_VERSION="1.6.1"
PKG_REV="1"
PKG_ARCH="x86_64"
PKG_LICENSE="GPL"
diff --git a/packages/multimedia/libva/package.mk b/packages/multimedia/libva/package.mk
index 2b355912fa..f93e1feb6e 100644
--- a/packages/multimedia/libva/package.mk
+++ b/packages/multimedia/libva/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="libva"
-PKG_VERSION="1.6.0"
+PKG_VERSION="1.6.1"
PKG_REV="1"
PKG_ARCH="x86_64"
PKG_LICENSE="GPL"
diff --git a/packages/multimedia/libvdpau/package.mk b/packages/multimedia/libvdpau/package.mk
index a346c0ea5b..6d47a52011 100644
--- a/packages/multimedia/libvdpau/package.mk
+++ b/packages/multimedia/libvdpau/package.mk
@@ -20,9 +20,9 @@ PKG_NAME="libvdpau"
PKG_VERSION="1.1.1"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://freedesktop.org/wiki/Software/VDPAU"
-PKG_URL="http://people.freedesktop.org/~aplattner/vdpau/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_LICENSE="MIT"
+PKG_SITE="https://wiki.freedesktop.org/www/Software/VDPAU/"
+PKG_URL="https://secure.freedesktop.org/~aplattner/vdpau/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain libX11 dri2proto libXext"
PKG_PRIORITY="optional"
PKG_SECTION="multimedia"
diff --git a/packages/python/system/pyasn1-modules/package.mk b/packages/python/system/pyasn1-modules/package.mk
deleted file mode 100644
index 22b463b519..0000000000
--- a/packages/python/system/pyasn1-modules/package.mk
+++ /dev/null
@@ -1,49 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="pyasn1-modules"
-PKG_VERSION="0.0.1a"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="BSD"
-PKG_SITE="http://sourceforge.net/projects/pyasn1/"
-PKG_URL="$SOURCEFORGE_SRC/pyasn1/pyasn1-modules/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host pyasn1"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/system"
-PKG_SHORTDESC="pyasn1-modules: a collection of protocols modules written in ASN.1 language."
-PKG_LONGDESC="pyasn1-modules is a collection of protocols modules written in ASN.1 language."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-}
-
-post_makeinstall_target() {
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
-}
diff --git a/packages/python/system/pyasn1/package.mk b/packages/python/system/pyasn1/package.mk
deleted file mode 100644
index 313813bae7..0000000000
--- a/packages/python/system/pyasn1/package.mk
+++ /dev/null
@@ -1,49 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="pyasn1"
-PKG_VERSION="0.0.13b"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="BSD"
-PKG_SITE="http://sourceforge.net/projects/pyasn1/"
-PKG_URL="$SOURCEFORGE_SRC/pyasn1/pyasn1-devel/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/system"
-PKG_SHORTDESC="pyasn1: ASN.1 types and codecs"
-PKG_LONGDESC="pyasn1: ASN.1 types and codecs."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-}
-
-post_makeinstall_target() {
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
-}
diff --git a/packages/python/web/PyYAML/package.mk b/packages/python/web/PyYAML/package.mk
deleted file mode 100644
index 28b39ac853..0000000000
--- a/packages/python/web/PyYAML/package.mk
+++ /dev/null
@@ -1,49 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="PyYAML"
-PKG_VERSION="3.10"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="OSS"
-PKG_SITE="http://pyyaml.org/"
-PKG_URL="http://pyyaml.org/download/pyyaml/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host yaml"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="PyYAML: a next generation YAML parser and emitter for Python."
-PKG_LONGDESC="PyYAML is the next generation YAML parser and emitter for Python."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-}
-
-post_makeinstall_target() {
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
-}
diff --git a/packages/python/web/PyYAML/patches/PyYAML-3.10-setuptools.patch b/packages/python/web/PyYAML/patches/PyYAML-3.10-setuptools.patch
deleted file mode 100644
index eb2ebfe276..0000000000
--- a/packages/python/web/PyYAML/patches/PyYAML-3.10-setuptools.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -Naur PyYAML-3.10/setup.py PyYAML-3.10.patch/setup.py
---- PyYAML-3.10/setup.py 2011-05-30 05:31:04.000000000 +0200
-+++ PyYAML-3.10.patch/setup.py 2011-07-17 17:49:50.360528344 +0200
-@@ -62,9 +62,10 @@
- import sys, os.path
-
- from distutils import log
-+from setuptools import setup
- from distutils.core import setup, Command
- from distutils.core import Distribution as _Distribution
--from distutils.core import Extension as _Extension
-+from setuptools import Extension as _Extension
- from distutils.dir_util import mkpath
- from distutils.command.build_ext import build_ext as _build_ext
- from distutils.command.bdist_rpm import bdist_rpm as _bdist_rpm
diff --git a/packages/python/web/TwistedConch/package.mk b/packages/python/web/TwistedConch/package.mk
deleted file mode 100644
index c08175a1cd..0000000000
--- a/packages/python/web/TwistedConch/package.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="TwistedConch"
-PKG_VERSION="11.0.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="MIT"
-PKG_SITE="http://twistedmatrix.com/"
-PKG_URL="http://twistedmatrix.com/Releases/Conch/11.0/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host TwistedCore pyasn1 pycrypto"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="TwistedConch: an SSHv2 implementation written in Python"
-PKG_LONGDESC="TwistedConch is an SSHv2 implementation written in Python. SSH is a protocol designed to allow remote access to shells and commands, but it is generic enough to allow everything from TCP forwarding to generic filesystem access. Since conch is written in Python, it interfaces well with other Python projects, such as Imagination. Conch also includes a implementations of the telnet and vt102 protocols, as well as support for rudimentary line editing behaviors. A new implementation of Twisted's Manhole application is also included, featuring server-side input history and interactive syntax coloring."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-
-# install to toolchain because its needed for other twisted modules
- python setup.py install --prefix $ROOT/$TOOLCHAIN
-}
-
-post_makeinstall_target() {
- rm -rf $INSTALL/usr/bin
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
- rm -rf $INSTALL/usr/lib/python*/site-packages/twisted/conch/test
-}
diff --git a/packages/python/web/TwistedCore/package.mk b/packages/python/web/TwistedCore/package.mk
deleted file mode 100644
index 644ace44e6..0000000000
--- a/packages/python/web/TwistedCore/package.mk
+++ /dev/null
@@ -1,56 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="TwistedCore"
-PKG_VERSION="11.0.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="MIT"
-PKG_SITE="http://twistedmatrix.com/"
-PKG_URL="http://twistedmatrix.com/Releases/Core/11.0/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="TwistedCore: An event-based networking framework for Internet applications"
-PKG_LONGDESC="Twisted is an event-based framework for Internet applications. It includes a Web server, an SMTP/POP3 server, a telnet server, an SSH server, an IRC server, a DNS server, a generic client/server pair for remote object access (Perspective Broker), and APIs for creating new protocols. It supports integration with GTK+, GTK+ 2, Qt, Tkinter, wxPython, Mac OS X (PyObjC) and Win32 event loops. It also supports TCP, SSL and TLS, UDP, Unix sockets, multicast, and serial ports. Supported protocols include HTTP, FTP, SMTP, POP3, IMAP, TOC, OSCAR (AIM and ICQ), SSH, DNS, IRC, NNTP, Jabber, SOCKSv4, Telnet, SIP (for VoIP), and XML-RPC and SOAP using external packages. Most protocols are supported as both servers and clients."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-
-# install to toolchain because its needed for other twisted modules
- python setup.py install --prefix $ROOT/$TOOLCHAIN
-}
-
-post_makeinstall_target() {
- rm -rf $INSTALL/usr/bin
- mkdir -p $INSTALL/usr/bin
- cp bin/twistd $INSTALL/usr/bin
-
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
-}
diff --git a/packages/python/web/TwistedCore/patches/TwistedCore-11.0.0-setuptools.patch b/packages/python/web/TwistedCore/patches/TwistedCore-11.0.0-setuptools.patch
deleted file mode 100644
index e5b89f06c6..0000000000
--- a/packages/python/web/TwistedCore/patches/TwistedCore-11.0.0-setuptools.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur TwistedCore-10.1.0/twisted/python/dist.py TwistedCore-10.1.0.patch/twisted/python/dist.py
---- TwistedCore-10.1.0/twisted/python/dist.py 2009-04-14 14:03:09.000000000 +0200
-+++ TwistedCore-10.1.0.patch/twisted/python/dist.py 2010-10-19 00:46:32.896878949 +0200
-@@ -10,7 +10,7 @@
- from distutils.command import build_scripts, install_data, build_ext, build_py
- from distutils.errors import CompileError
- from distutils import core
--from distutils.core import Extension
-+from setuptools import Extension
-
- twisted_subprojects = ["conch", "lore", "mail", "names",
- "news", "pair", "runner", "web", "web2",
diff --git a/packages/python/web/TwistedNames/package.mk b/packages/python/web/TwistedNames/package.mk
deleted file mode 100644
index 03db3e2578..0000000000
--- a/packages/python/web/TwistedNames/package.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="TwistedNames"
-PKG_VERSION="11.0.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="MIT"
-PKG_SITE="http://twistedmatrix.com/"
-PKG_URL="http://twistedmatrix.com/Releases/Names/11.0/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host TwistedCore"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="TwistedNames: Name resolution part of Twisted framework"
-PKG_LONGDESC="Twisted is an event-based framework for Internet applications. It includes a Web server, an SMTP/POP3 server, a telnet server, an SSH server, an IRC server, a DNS server, a generic client/server pair for remote object access (Perspective Broker), and APIs for creating new protocols. It supports integration with GTK+, GTK+ 2, Qt, Tkinter, wxPython, Mac OS X (PyObjC) and Win32 event loops. It also supports TCP, SSL and TLS, UDP, Unix sockets, multicast, and serial ports. Supported protocols include HTTP, FTP, SMTP, POP3, IMAP, TOC, OSCAR (AIM and ICQ), SSH, DNS, IRC, NNTP, Jabber, SOCKSv4, Telnet, SIP (for VoIP), and XML-RPC and SOAP using external packages. Most protocols are supported as both servers and clients."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-
-# install to toolchain because its needed for other twisted modules
- python setup.py install --prefix $ROOT/$TOOLCHAIN
-}
-
-post_makeinstall_target() {
- rm -rf $INSTALL/usr/bin
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
- rm -rf $INSTALL/usr/lib/python*/site-packages/twisted/names/test
-}
diff --git a/packages/python/web/TwistedWeb/package.mk b/packages/python/web/TwistedWeb/package.mk
deleted file mode 100644
index 979b0b6f70..0000000000
--- a/packages/python/web/TwistedWeb/package.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="TwistedWeb"
-PKG_VERSION="11.0.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="MIT"
-PKG_SITE="http://twistedmatrix.com/"
-PKG_URL="http://twistedmatrix.com/Releases/Web/11.0/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host TwistedCore"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="TwistedWeb: An event-based networking framework for Internet applications"
-PKG_LONGDESC="Twisted is an event-based framework for Internet applications. It includes a Web server, an SMTP/POP3 server, a telnet server, an SSH server, an IRC server, a DNS server, a generic client/server pair for remote object access (Perspective Broker), and APIs for creating new protocols. It supports integration with GTK+, GTK+ 2, Qt, Tkinter, wxPython, Mac OS X (PyObjC) and Win32 event loops. It also supports TCP, SSL and TLS, UDP, Unix sockets, multicast, and serial ports. Supported protocols include HTTP, FTP, SMTP, POP3, IMAP, TOC, OSCAR (AIM and ICQ), SSH, DNS, IRC, NNTP, Jabber, SOCKSv4, Telnet, SIP (for VoIP), and XML-RPC and SOAP using external packages. Most protocols are supported as both servers and clients."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-
-# install to toolchain because its needed for other twisted modules
- python setup.py install --prefix $ROOT/$TOOLCHAIN
-}
-
-post_makeinstall_target() {
- rm -rf $INSTALL/usr/bin
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
- rm -rf $INSTALL/usr/lib/python*/site-packages/twisted/web/test
-}
diff --git a/packages/python/web/TwistedWords/package.mk b/packages/python/web/TwistedWords/package.mk
deleted file mode 100644
index ad484bf5f9..0000000000
--- a/packages/python/web/TwistedWords/package.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="TwistedWords"
-PKG_VERSION="11.0.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="MIT"
-PKG_SITE="http://twistedmatrix.com/"
-PKG_URL="http://twistedmatrix.com/Releases/Words/11.0/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host TwistedCore"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="TwistedWords: An event-based networking framework for Internet applications"
-PKG_LONGDESC="Twisted is an event-based framework for Internet applications. It includes a Web server, an SMTP/POP3 server, a telnet server, an SSH server, an IRC server, a DNS server, a generic client/server pair for remote object access (Perspective Broker), and APIs for creating new protocols. It supports integration with GTK+, GTK+ 2, Qt, Tkinter, wxPython, Mac OS X (PyObjC) and Win32 event loops. It also supports TCP, SSL and TLS, UDP, Unix sockets, multicast, and serial ports. Supported protocols include HTTP, FTP, SMTP, POP3, IMAP, TOC, OSCAR (AIM and ICQ), SSH, DNS, IRC, NNTP, Jabber, SOCKSv4, Telnet, SIP (for VoIP), and XML-RPC and SOAP using external packages. Most protocols are supported as both servers and clients."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-
-# install to toolchain because its needed for other twisted modules
- python setup.py install --prefix $ROOT/$TOOLCHAIN
-}
-
-post_makeinstall_target() {
- rm -rf $INSTALL/usr/bin
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
- rm -rf $INSTALL/usr/lib/python*/site-packages/twisted/words/test
-}
diff --git a/packages/python/web/wokkel/package.mk b/packages/python/web/wokkel/package.mk
deleted file mode 100644
index e5f73fbf01..0000000000
--- a/packages/python/web/wokkel/package.mk
+++ /dev/null
@@ -1,50 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="wokkel"
-PKG_VERSION="0.6.3"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="free"
-PKG_SITE="http://wokkel.ik.nu/"
-PKG_URL="http://wokkel.ik.nu/releases/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host TwistedWords"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="wokkel: Wokkel is a Python module for experimenting with future enhancements to TwistedWords"
-PKG_LONGDESC="Wokkel is collection of enhancements on top of the Twisted networking framework, written in Python. It mostly provides a testing ground for enhancements to the Jabber/XMPP protocol implementation as found in Twisted Words, that are meant to eventually move there."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-}
-
-post_makeinstall_target() {
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
- rm -rf $INSTALL/usr/lib/python*/site-packages/wokkel/test
-}
diff --git a/packages/python/web/zope.interface/package.mk b/packages/python/web/zope.interface/package.mk
deleted file mode 100644
index bb8ab82c61..0000000000
--- a/packages/python/web/zope.interface/package.mk
+++ /dev/null
@@ -1,52 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="zope.interface"
-PKG_VERSION="3.3.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="OSS"
-PKG_SITE="http://zope.org/Products/ZopeInterface/"
-PKG_URL="http://www.zope.org/Products/ZopeInterface/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python distutilscross:host"
-PKG_PRIORITY="optional"
-PKG_SECTION="python/web"
-PKG_SHORTDESC="zopeinterface: zope.interface package from Zope 3"
-PKG_LONGDESC="This is a separate distribution of the zope.interface package used in Zope 3, along with the packages it depends on."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
-
-pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
-}
-
-make_target() {
- python setup.py build --cross-compile
-}
-
-makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
-
-# install to toolchain because its needed for other twisted modules
- python setup.py install --prefix $ROOT/$TOOLCHAIN
-}
-
-post_makeinstall_target() {
- find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
-}
diff --git a/packages/security/libgcrypt/package.mk b/packages/security/libgcrypt/package.mk
index 97a19ff444..018462fe83 100644
--- a/packages/security/libgcrypt/package.mk
+++ b/packages/security/libgcrypt/package.mk
@@ -20,9 +20,9 @@ PKG_NAME="libgcrypt"
PKG_VERSION="1.6.3"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://www.gnupg.org/"
-PKG_URL="ftp://ftp.gnupg.org/gcrypt/libgcrypt/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_LICENSE="GPLv2"
+PKG_SITE="https://www.gnupg.org/"
+PKG_URL="https://www.gnupg.org/ftp/gcrypt/libgcrypt/$PKG_NAME-$PKG_VERSION.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libgpg-error"
PKG_PRIORITY="optional"
PKG_SECTION="security"
diff --git a/packages/security/libgpg-error/package.mk b/packages/security/libgpg-error/package.mk
index 749f206f25..20e22aca72 100644
--- a/packages/security/libgpg-error/package.mk
+++ b/packages/security/libgpg-error/package.mk
@@ -17,12 +17,12 @@
################################################################################
PKG_NAME="libgpg-error"
-PKG_VERSION="1.18"
+PKG_VERSION="1.20"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://www.gnupg.org/"
-PKG_URL="ftp://ftp.gnupg.org/gcrypt/libgpg-error/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_LICENSE="GPLv2"
+PKG_SITE="https://www.gnupg.org"
+PKG_URL="https://www.gnupg.org/ftp/gcrypt/libgpg-error/$PKG_NAME-$PKG_VERSION.tar.bz2"
PKG_DEPENDS_TARGET="toolchain"
PKG_PRIORITY="optional"
PKG_SECTION="security"
diff --git a/packages/security/libgpg-error/patches/libgpg-error-avoid-breakage-with-gcc-5.patch b/packages/security/libgpg-error/patches/libgpg-error-avoid-breakage-with-gcc-5.patch
deleted file mode 100644
index ebde259b5c..0000000000
--- a/packages/security/libgpg-error/patches/libgpg-error-avoid-breakage-with-gcc-5.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 91da4f5dbbc9d93975ef9753652a4e71719f9f27 Mon Sep 17 00:00:00 2001
-From: Daniel Kahn Gillmor
-Date: Mon, 16 Mar 2015 13:26:00 -0400
-Subject: [LIBGPG-ERROR PATCH] avoid breakage with gcc 5
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
- * src/Makefile.am: add -P to the C preprocessor when building
- mkerrcodes.h, to avoid a noisy intermediate pipeline.
-
---
-
-With gcc 5 without this patch, we see many errors like the following:
-
-gcc -I. -I. -o mkerrcodes ./mkerrcodes.c
-In file included from ./mkerrcodes.c:26:0:
-./mkerrcodes.h:9:5: error: expected expression before ‘,’ token
- { , "GPG_ERR_E2BIG" },
- ^
-./mkerrcodes.h:10:5: error: expected expression before ‘,’ token
- { , "GPG_ERR_EACCES" },
- ^
-
-This patch cleans up the generated mkerrcodes.h by making the
-intermediate stage clean for all the versions of gcc i tested (4.x and
-5).
-
-Debian-Bug-Id: 777374
-Signed-Off-By: Daniel Kahn Gillmor
----
- src/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 99c2c53..f847a80 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -213,7 +213,7 @@ code-to-errno.h: Makefile mkerrnos.awk errnos.in
- # It is correct to use $(CPP). We want the host's idea of the error codes.
- mkerrcodes.h: Makefile mkerrcodes.awk $(gpg_extra_headers)
- $(AWK) -f $(srcdir)/mkerrcodes1.awk $(srcdir)/errnos.in >_$@
-- $(CPP) $(CPPFLAGS) $(extra_cppflags) _$@ | grep GPG_ERR_ | \
-+ $(CPP) $(CPPFLAGS) $(extra_cppflags) -P _$@ | grep GPG_ERR_ | \
- $(AWK) -f $(srcdir)/mkerrcodes.awk >$@
- -rm _$@
-
---
-2.1.4
-
diff --git a/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service b/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service
index b21e53c947..c88407a688 100644
--- a/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service
+++ b/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service
@@ -1,6 +1,5 @@
[Unit]
Description=i.MX6 SoC fan monitor service
-ConditionPathExists=/var/run/system_type_matrix
[Service]
ExecStart=/usr/bin/imx6-soc-fan-monitor
diff --git a/packages/sysutils/util-linux/package.mk b/packages/sysutils/util-linux/package.mk
index f7822b3680..1620f64c44 100644
--- a/packages/sysutils/util-linux/package.mk
+++ b/packages/sysutils/util-linux/package.mk
@@ -17,11 +17,11 @@
################################################################################
PKG_NAME="util-linux"
-PKG_VERSION="2.26.2"
+PKG_VERSION="2.27"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
-PKG_URL="http://www.kernel.org/pub/linux/utils/util-linux/v2.26/$PKG_NAME-$PKG_VERSION.tar.xz"
+PKG_URL="http://www.kernel.org/pub/linux/utils/util-linux/v2.27/$PKG_NAME-$PKG_VERSION.tar.xz"
PKG_DEPENDS_TARGET="toolchain"
PKG_DEPENDS_INIT="toolchain"
PKG_PRIORITY="optional"
@@ -32,105 +32,74 @@ PKG_LONGDESC="The util-linux package contains a large variety of low-level syste
PKG_IS_ADDON="no"
PKG_AUTORECONF="yes"
-PKG_CONFIGURE_OPTS_TARGET="--disable-gtk-doc \
- --disable-nls \
- --disable-rpath \
- --enable-tls \
+UTILLINUX_CONFIG_DEFAULT="--disable-gtk-doc \
+ --disable-nls \
+ --disable-rpath \
+ --enable-tls \
+ --disable-all-programs \
+ --enable-chsh-only-listed \
+ --enable-libmount-force-mountinfo \
+ --disable-bash-completion \
+ --disable-colors-default \
+ --disable-pylibmount \
+ --disable-pg-bell \
+ --disable-use-tty-group \
+ --disable-makeinstall-chown \
+ --disable-makeinstall-setuid \
+ --with-gnu-ld \
+ --without-selinux \
+ --without-audit \
+ --without-udev \
+ --without-ncurses \
+ --without-readline \
+ --without-slang \
+ --without-termcap \
+ --without-tinfo \
+ --without-utempter \
+ --without-util \
+ --without-libz \
+ --without-user \
+ --without-systemd \
+ --without-smack \
+ --without-python \
+ --without-systemdsystemunitdir"
+
+PKG_CONFIGURE_OPTS_TARGET="$UTILLINUX_CONFIG_DEFAULT \
--enable-libuuid \
--enable-libblkid \
--enable-libmount \
--enable-libsmartcols \
- --disable-mount \
--enable-losetup \
--enable-fsck \
- --disable-partx \
- --enable-uuidd \
- --disable-mountpoint \
- --disable-fallocate \
- --disable-unshare \
- --disable-nsenter \
- --disable-setpriv \
- --disable-eject \
- --disable-agetty \
- --disable-cramfs \
- --disable-bfs \
- --disable-minix \
- --disable-fdformat \
- --disable-hwclock \
- --disable-wdctl \
- --disable-switch-root \
- --disable-pivot-root \
- --enable-tunelp \
- --disable-kill \
- --enable-deprecated-last \
- --disable-last \
- --disable-utmpdump \
- --disable-line \
- --disable-mesg \
- --disable-raw \
- --disable-rename \
- --disable-reset \
- --disable-vipw \
- --disable-newgrp \
- --disable-chfn-chsh \
- --enable-chsh-only-listed \
- --disable-login \
- --disable-login-chown-vcs \
- --disable-login-stat-mail \
- --disable-nologin \
- --disable-sulogin \
- --disable-su \
- --disable-runuser \
- --disable-ul \
- --disable-more \
- --disable-pg \
- --disable-setterm \
- --disable-schedutils \
- --disable-wall \
- --disable-write \
- --disable-bash-completion \
- --disable-pylibmount \
- --disable-pg-bell \
- --disable-use-tty-group \
- --disable-makeinstall-chown \
- --disable-makeinstall-setuid \
- --with-gnu-ld \
- --without-selinux \
- --without-audit \
- --without-udev \
- --without-ncurses \
- --without-slang \
- --without-utempter \
- --without-python \
- --without-systemdsystemunitdir"
+ --enable-blkid"
-PKG_CONFIGURE_OPTS_HOST="$PKG_CONFIGURE_OPTS_TARGET \
- --enable-static \
- --disable-shared"
+if [ "$SWAP_SUPPORT" = "yes" ]; then
+ PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET --enable-swapon"
+fi
-PKG_CONFIGURE_OPTS_INIT="$PKG_CONFIGURE_OPTS_TARGET \
- --prefix=/ \
+PKG_CONFIGURE_OPTS_HOST="--enable-static \
+ --disable-shared \
+ $UTILLINUX_CONFIG_DEFAULT \
+ --enable-uuidgen \
+ --enable-libuuid"
+
+PKG_CONFIGURE_OPTS_INIT="--prefix=/ \
--bindir=/bin \
--sbindir=/sbin \
--sysconfdir=/etc \
--libexecdir=/lib \
--localstatedir=/var \
- --enable-static --disable-shared"
+ $UTILLINUX_CONFIG_DEFAULT \
+ --enable-libblkid \
+ --enable-libmount \
+ --enable-fsck"
+
+if [ "$INITRAMFS_PARTED_SUPPORT" = "yes" ]; then
+ PKG_CONFIGURE_OPTS_INIT="$PKG_CONFIGURE_OPTS_INIT --enable-mkfs --enable-libuuid"
+fi
post_makeinstall_target() {
- rm -rf $INSTALL/usr/bin
- rm -rf $INSTALL/usr/sbin
- rm -rf $INSTALL/usr/share
-
- mkdir -p $INSTALL/usr/sbin
- cp .libs/blkid $INSTALL/usr/sbin
- cp .libs/fsck $INSTALL/usr/sbin
- cp .libs/losetup $INSTALL/usr/sbin
-
if [ "$SWAP_SUPPORT" = "yes" ]; then
- cp .libs/swapon $INSTALL/usr/sbin
- cp .libs/swapoff $INSTALL/usr/sbin
-
mkdir -p $INSTALL/usr/lib/openelec
cp -PR $PKG_DIR/scripts/mount-swap $INSTALL/usr/lib/openelec
@@ -142,24 +111,6 @@ post_makeinstall_target() {
fi
}
-post_makeinstall_init() {
- rm -rf $INSTALL/bin
- rm -rf $INSTALL/sbin
-
- if [ $INITRAMFS_PARTED_SUPPORT = "yes" ]; then
- # install libuuid and libblkid here, needed by 'parted'
- rm -rf $INSTALL/lib/libmount.so*
-
- mkdir -p $INSTALL/sbin
- cp mkfs $INSTALL/sbin
- else
- rm -rf $INSTALL/lib
- fi
-
- mkdir -p $INSTALL/sbin
- cp fsck $INSTALL/sbin
-}
-
post_install () {
if [ "$SWAP_SUPPORT" = "yes" ]; then
enable_service swap.service
diff --git a/packages/sysutils/util-linux/patches/util-linux-blkid_swapon_mkfs_uuidgen.patch b/packages/sysutils/util-linux/patches/util-linux-blkid_swapon_mkfs_uuidgen.patch
new file mode 100644
index 0000000000..7504670e15
--- /dev/null
+++ b/packages/sysutils/util-linux/patches/util-linux-blkid_swapon_mkfs_uuidgen.patch
@@ -0,0 +1,57 @@
+diff -Naur util-linux-2.27/configure.ac util-linux-2.27.patch/configure.ac
+--- util-linux-2.27/configure.ac 2015-09-07 09:59:25.000000000 +0200
++++ util-linux-2.27.patch/configure.ac 2015-09-12 10:35:53.576532786 +0200
+@@ -1051,11 +1051,19 @@
+ AM_CONDITIONAL([BUILD_UUIDD], [test "x$build_uuidd" = xyes])
+
+
+-UL_BUILD_INIT([uuidgen], [check])
++AC_ARG_ENABLE([uuidgen],
++ AS_HELP_STRING([--disable-uuidgen], [do not build uuidgen]),
++ [], [UL_DEFAULT_ENABLE([uuidgen], [check])]
++)
++UL_BUILD_INIT([uuidgen]])
+ UL_REQUIRES_BUILD([uuidgen], [libuuid])
+ AM_CONDITIONAL([BUILD_UUIDGEN], [test "x$build_uuidgen" = xyes])
+
+-UL_BUILD_INIT([blkid], [check])
++AC_ARG_ENABLE([blkid],
++ AS_HELP_STRING([--disable-blkid], [do not build blkid(8)]),
++ [], [UL_DEFAULT_ENABLE([blkid], [check])]
++)
++UL_BUILD_INIT([blkid])
+ UL_REQUIRES_BUILD([blkid], [libblkid])
+ AM_CONDITIONAL([BUILD_BLKID], [test "x$build_blkid" = xyes])
+
+@@ -1242,21 +1250,26 @@
+ UL_REQUIRES_HAVE([hwclock], [io, linuxdummy], [ioperm iopl function or Linux])
+ AM_CONDITIONAL([BUILD_HWCLOCK], [test "x$build_hwclock" = xyes])
+
+-
+-UL_BUILD_INIT([mkfs], [yes])
++AC_ARG_ENABLE([mkfs],
++ AS_HELP_STRING([--disable-mkfs], [do not build mkfs(8)]),
++ [], [UL_DEFAULT_ENABLE([mkfs], [check])]
++)
++UL_BUILD_INIT([mkfs])
+ AM_CONDITIONAL([BUILD_MKFS], [test "x$build_mkfs" = xyes])
+
+ UL_BUILD_INIT([isosize], [yes])
+ AM_CONDITIONAL([BUILD_ISOSIZE], [test "x$build_isosize" = xyes])
+
+-
+ UL_BUILD_INIT([fstrim], [check])
+ UL_REQUIRES_LINUX([fstrim])
+ UL_REQUIRES_BUILD([fstrim], [libmount])
+ AM_CONDITIONAL([BUILD_FSTRIM], [test "x$build_fstrim" = xyes])
+
+-
+-UL_BUILD_INIT([swapon], [check])
++AC_ARG_ENABLE([swapon],
++ AS_HELP_STRING([--disable-swapon], [do not build swapon(8) and swapoff(8)]),
++ [], [UL_DEFAULT_ENABLE([swapon], [check])]
++)
++UL_BUILD_INIT([swapon])
+ UL_REQUIRES_LINUX([swapon])
+ UL_REQUIRES_BUILD([swapon], [libblkid])
+ UL_REQUIRES_BUILD([swapon], [libmount])
diff --git a/packages/textproc/jsoncpp/package.mk b/packages/textproc/jsoncpp/package.mk
index 37449f8f67..1dc5fdb954 100644
--- a/packages/textproc/jsoncpp/package.mk
+++ b/packages/textproc/jsoncpp/package.mk
@@ -22,7 +22,7 @@ PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.kodi.tv"
-PKG_URL="http://garr.dl.sourceforge.net/project/jsoncpp/jsoncpp/0.5.0/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_URL="http://sources.openelec.tv/mirror/jsoncpp/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_PRIORITY="optional"
PKG_SECTION="multimedia"
diff --git a/packages/tools/bcm2835-bootloader/package.mk b/packages/tools/bcm2835-bootloader/package.mk
index 3486ae94f7..6373f66cfc 100644
--- a/packages/tools/bcm2835-bootloader/package.mk
+++ b/packages/tools/bcm2835-bootloader/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="bcm2835-bootloader"
-PKG_VERSION="fc95251"
+PKG_VERSION="9a21e6a"
PKG_REV="1"
PKG_ARCH="arm"
PKG_LICENSE="nonfree"
diff --git a/packages/virtual/x11/package.mk b/packages/virtual/x11/package.mk
index 18e3322681..31d9eeeef5 100644
--- a/packages/virtual/x11/package.mk
+++ b/packages/virtual/x11/package.mk
@@ -47,8 +47,14 @@ if [ -n "$WINDOWMANAGER" -a "$WINDOWMANAGER" != "none" ]; then
fi
get_graphicdrivers
-# Drivers
+
+# Drivers
+if [ -n "$LIBINPUT" ]; then
+ PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET xf86-input-libinput"
+else
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET xf86-input-evdev"
- for drv in $XORG_DRIVERS; do
- PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET xf86-video-$drv"
- done
+fi
+
+for drv in $XORG_DRIVERS; do
+ PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET xf86-video-$drv"
+done
diff --git a/packages/wayland/libinput/package.mk b/packages/wayland/libinput/package.mk
index 3a70f9f1f6..3ab9baeb36 100644
--- a/packages/wayland/libinput/package.mk
+++ b/packages/wayland/libinput/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="libinput"
-PKG_VERSION="0.21.0"
+PKG_VERSION="1.0.1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
diff --git a/packages/web/libmicrohttpd/package.mk b/packages/web/libmicrohttpd/package.mk
index 45db84983c..612d1d91bc 100644
--- a/packages/web/libmicrohttpd/package.mk
+++ b/packages/web/libmicrohttpd/package.mk
@@ -17,12 +17,12 @@
################################################################################
PKG_NAME="libmicrohttpd"
-PKG_VERSION="0.9.42"
+PKG_VERSION="0.9.43"
PKG_REV="1"
PKG_ARCH="any"
-PKG_LICENSE="LGPL"
-PKG_SITE="http://www.gnu.org/software/libmicrohttpd/"
-PKG_URL="ftp://ftp.gnu.org/gnu/libmicrohttpd/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_LICENSE="LGPLv2.1"
+PKG_SITE="https://www.gnu.org/software/libmicrohttpd/"
+PKG_URL="https://ftp.gnu.org/gnu/libmicrohttpd/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain libgcrypt"
PKG_PRIORITY="optional"
PKG_SECTION="web"
diff --git a/packages/web/yaml/package.mk b/packages/web/yaml/package.mk
deleted file mode 100644
index 65f8aeb6dc..0000000000
--- a/packages/web/yaml/package.mk
+++ /dev/null
@@ -1,33 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="yaml"
-PKG_VERSION="0.1.4"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="OSS"
-PKG_SITE="http://pyyaml.org"
-PKG_URL="http://pyyaml.org/download/libyaml/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain"
-PKG_PRIORITY="optional"
-PKG_SECTION="web"
-PKG_SHORTDESC="yaml: a next generation YAML parser and emitter."
-PKG_LONGDESC="yaml is the next generation YAML parser and emitter."
-
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="yes"
diff --git a/packages/x11/lib/libxcb/package.mk b/packages/x11/lib/libxcb/package.mk
index 9d14738685..9b1e3a1d2e 100644
--- a/packages/x11/lib/libxcb/package.mk
+++ b/packages/x11/lib/libxcb/package.mk
@@ -17,7 +17,7 @@
################################################################################
PKG_NAME="libxcb"
-PKG_VERSION="1.11"
+PKG_VERSION="1.11.1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="OSS"
diff --git a/projects/RPi/filesystem/usr/lib/systemd/system/serial-console.service b/projects/RPi/filesystem/usr/lib/systemd/system/serial-console.service
new file mode 100644
index 0000000000..d70e3df75f
--- /dev/null
+++ b/projects/RPi/filesystem/usr/lib/systemd/system/serial-console.service
@@ -0,0 +1,21 @@
+[Unit]
+Description=Debug Shell on /dev/console
+DefaultDependencies=no
+ConditionKernelCommandLine=console
+
+[Service]
+WorkingDirectory=/storage
+ExecStart=/bin/sh -c '. /etc/profile; exec /bin/sh'
+Restart=always
+RestartSec=0
+StandardInput=tty
+TTYPath=/dev/console
+TTYReset=yes
+TTYVHangup=yes
+KillMode=process
+IgnoreSIGPIPE=no
+# bash ignores SIGTERM
+KillSignal=SIGHUP
+
+[Install]
+WantedBy=sysinit.target
diff --git a/projects/RPi/linux/linux.arm.conf b/projects/RPi/linux/linux.arm.conf
index ca3129fb8b..30dad992dc 100644
--- a/projects/RPi/linux/linux.arm.conf
+++ b/projects/RPi/linux/linux.arm.conf
@@ -1386,6 +1386,7 @@ CONFIG_BCM_VC_CMA=y
CONFIG_BCM2708_VCMEM=y
CONFIG_BCM_VCIO=y
CONFIG_BCM_VC_SM=y
+CONFIG_BCM2835_DEVGPIOMEM=m
# CONFIG_XILLYBUS is not set
#
@@ -2382,6 +2383,7 @@ CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP=m
CONFIG_SND_BCM2708_SOC_RPI_DAC=m
CONFIG_SND_BCM2708_SOC_RPI_PROTO=m
CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m
+CONFIG_SND_BCM2708_SOC_RASPIDAC3=m
# CONFIG_SND_DESIGNWARE_I2S is not set
#
@@ -2466,7 +2468,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8903 is not set
# CONFIG_SND_SOC_WM8962 is not set
# CONFIG_SND_SOC_WM8978 is not set
-# CONFIG_SND_SOC_TPA6130A2 is not set
+CONFIG_SND_SOC_TPA6130A2=m
# CONFIG_SND_SIMPLE_CARD is not set
# CONFIG_SOUND_PRIME is not set
CONFIG_AC97_BUS=m
diff --git a/projects/RPi/options b/projects/RPi/options
index d96d7e40a2..b5a925ea59 100644
--- a/projects/RPi/options
+++ b/projects/RPi/options
@@ -149,3 +149,8 @@
# Space separated list is supported,
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
ADDITIONAL_DRIVERS="$ADDITIONAL_DRIVERS"
+
+ # set up serial console when building a development image
+ if [ "$DEVEL_VERSION" = "devel" ] ; then
+ EXTRA_CMDLINE="console=ttyAMA0,115200"
+ fi
diff --git a/projects/RPi/patches/linux/linux-01-RPi_support.patch b/projects/RPi/patches/linux/linux-01-RPi_support.patch
index 888195510c..8bef3a7273 100644
--- a/projects/RPi/patches/linux/linux-01-RPi_support.patch
+++ b/projects/RPi/patches/linux/linux-01-RPi_support.patch
@@ -1,7 +1,7 @@
-From 63b738ea521e2a159ecef0509b605121a18998bb Mon Sep 17 00:00:00 2001
+From bc7d015ceaa36adc088675b0cdd3a7df05dfd9ed Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Sun, 12 May 2013 12:24:19 +0100
-Subject: [PATCH 001/162] Main bcm2708/bcm2709 linux port
+Subject: [PATCH 001/184] Main bcm2708/bcm2709 linux port
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -6908,10 +6908,10 @@ index 06d890a..30d96e8 100644
ENTRY(cpu_v6_dcache_clean_area)
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
-index 3d1054f..7615bbf 100644
+index 7911f14..dc287c0 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
-@@ -456,6 +456,7 @@ __v7_setup:
+@@ -460,6 +460,7 @@ __v7_setup_cont:
orr r0, r0, r6 @ set them
THUMB( orr r0, r0, #1 << 30 ) @ Thumb exceptions
ret lr @ return to head.S:__ret
@@ -7002,10 +7002,10 @@ index b5bedae..b0258e8 100644
mmc_pm_flag_t pm_caps; /* supported pm features */
-From 4b5a7293901e67cc3c674ba6f3677a0862d0b3f8 Mon Sep 17 00:00:00 2001
+From 52397f48b515f888ad61b3bfb16fea22e5b83cad Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 8 Oct 2014 18:50:05 +0100
-Subject: [PATCH 002/162] Add bcm2708_gpio driver
+Subject: [PATCH 002/184] Add bcm2708_gpio driver
Signed-off-by: popcornmix
@@ -7635,10 +7635,10 @@ index 0000000..fb69624
+
+#endif
-From eca451f7751e025cc7017f2c654fd6763cfa4ce0 Mon Sep 17 00:00:00 2001
+From 4e831e4d013b83364e41b463cf77c7acf4b454b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 1 May 2015 19:11:03 +0200
-Subject: [PATCH 003/162] mailbox: bcm2708: Add bcm2708-vcio
+Subject: [PATCH 003/184] mailbox: bcm2708: Add bcm2708-vcio
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -8269,10 +8269,10 @@ index 0000000..cc284ed
+
+#endif
-From f8878549c65e145ef2930571af6bd565da69e49c Mon Sep 17 00:00:00 2001
+From 7429b1db539759f0586f7e12c9332915477faf86 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 1 May 2013 19:46:17 +0100
-Subject: [PATCH 004/162] Add dwc_otg driver
+Subject: [PATCH 004/184] Add dwc_otg driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -69546,10 +69546,10 @@ index 0000000..cdc9963
+test_main();
+0;
-From b991965e5113586428c0bb167cea50ef04157ff5 Mon Sep 17 00:00:00 2001
+From fbad81377923fa23914e15a8bab283b79293618f Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 1 May 2013 19:54:32 +0100
-Subject: [PATCH 005/162] bcm2708 watchdog driver
+Subject: [PATCH 005/184] bcm2708 watchdog driver
Signed-off-by: popcornmix
---
@@ -69986,10 +69986,10 @@ index 0000000..8a27d68
+MODULE_ALIAS_MISCDEV(TEMP_MINOR);
+MODULE_LICENSE("GPL");
-From 0f74e77f6b74f7d67bad5e6d4a3da96c25d163f9 Mon Sep 17 00:00:00 2001
+From 59bf8fe3c21caf11d56af182811b7f954c5ac1fb Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 17 Jun 2015 17:06:34 +0100
-Subject: [PATCH 006/162] bcm2708 framebuffer driver
+Subject: [PATCH 006/184] bcm2708 framebuffer driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -73428,10 +73428,10 @@ index 3c14e43..7626beb6a 100644
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0
-From 46ac294df1388e4670e62a89b001fd41d0c17c07 Mon Sep 17 00:00:00 2001
+From 8533ef2eaa41d422d0fb87b60f6f3378b29a5b64 Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 22 Nov 2013 14:22:53 +0100
-Subject: [PATCH 007/162] dmaengine: Add support for BCM2708
+Subject: [PATCH 007/184] dmaengine: Add support for BCM2708
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -75199,10 +75199,10 @@ index 0000000..2310e34
+
+#endif /* _PLAT_BCM2708_DMA_H */
-From 1477c7775b68f85a9226ea044b52a7f76a82537f Mon Sep 17 00:00:00 2001
+From d1f7e6f8f55a509533ac7468aa2bcb7608bfc1bb Mon Sep 17 00:00:00 2001
From: gellert
Date: Fri, 15 Aug 2014 16:35:06 +0100
-Subject: [PATCH 008/162] MMC: added alternative MMC driver
+Subject: [PATCH 008/184] MMC: added alternative MMC driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -77018,10 +77018,10 @@ index 0000000..b7c4883
+MODULE_LICENSE("GPL v2");
+MODULE_AUTHOR("Gellert Weisz");
-From a546777dbd17651f5da9f7baba4f15070bf09cf6 Mon Sep 17 00:00:00 2001
+From b66971c49c262d192b95882baa1d331f2863e6a8 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 25 Mar 2015 17:49:47 +0000
-Subject: [PATCH 009/162] Adding bcm2835-sdhost driver, and an overlay to
+Subject: [PATCH 009/184] Adding bcm2835-sdhost driver, and an overlay to
enable it
BCM2835 has two SD card interfaces. This driver uses the other one.
@@ -78791,10 +78791,10 @@ index 0000000..eef8a24
+MODULE_LICENSE("GPL v2");
+MODULE_AUTHOR("Phil Elwell");
-From 3f77139f143882d7cf9b6c8e633ff50f282810f0 Mon Sep 17 00:00:00 2001
+From b6f82e619a4f4cb01f5916daea7e2dd9d3bbd743 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 3 Jul 2013 00:31:47 +0100
-Subject: [PATCH 010/162] cma: Add vc_cma driver to enable use of CMA
+Subject: [PATCH 010/184] cma: Add vc_cma driver to enable use of CMA
Signed-off-by: popcornmix
@@ -80119,10 +80119,10 @@ index 0000000..5325832
+
+#endif /* VC_CMA_H */
-From 7372cf60649d3a149f69923310c0278d72baccac Mon Sep 17 00:00:00 2001
+From 2a35225a6b978ed75d0ddb8137fbc63b8ef54a91 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Mon, 26 Mar 2012 22:15:50 +0100
-Subject: [PATCH 011/162] bcm2708: alsa sound driver
+Subject: [PATCH 011/184] bcm2708: alsa sound driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -82964,10 +82964,10 @@ index 0000000..af3e6eb
+
+#endif // _VC_AUDIO_DEFS_H_
-From e544b75469dca2426a2b56bb7c095351ca63ae29 Mon Sep 17 00:00:00 2001
+From dfbd0d5b4ac667a5bba7dd9cfae952c1560e6e3a Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 2 Jul 2013 23:42:01 +0100
-Subject: [PATCH 012/162] bcm2708 vchiq driver
+Subject: [PATCH 012/184] bcm2708 vchiq driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -96221,10 +96221,10 @@ index 0000000..b6bfa21
+ return vchiq_build_time;
+}
-From 6f44338ed5bacbbfbbe907bd704b676296570b92 Mon Sep 17 00:00:00 2001
+From 272ac55666b71fbf9071d39d40a8fe9a7019b31e Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 17 Jun 2015 16:07:06 +0100
-Subject: [PATCH 013/162] vc_mem: Add vc_mem driver
+Subject: [PATCH 013/184] vc_mem: Add vc_mem driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -97230,10 +97230,10 @@ index 0000000..20a4753
+
+#endif /* _VC_MEM_H */
-From 9d253178cc48543cd74c0d45528c30320bc86279 Mon Sep 17 00:00:00 2001
+From face5c60abadb506a565165e62898c31285daf6f Mon Sep 17 00:00:00 2001
From: Tim Gover
Date: Tue, 22 Jul 2014 15:41:04 +0100
-Subject: [PATCH 014/162] vcsm: VideoCore shared memory service for BCM2835
+Subject: [PATCH 014/184] vcsm: VideoCore shared memory service for BCM2835
Add experimental support for the VideoCore shared memory service.
This allows user processes to allocate memory from VideoCore's
@@ -101643,10 +101643,10 @@ index 0000000..0bfb42e
+MODULE_DESCRIPTION("VideoCore SharedMemory Driver");
+MODULE_LICENSE("GPL v2");
-From ba6e8ac7034a030ceac2310ce359f25755328b39 Mon Sep 17 00:00:00 2001
+From c359129bff7af01a9c405b65c23f337e0860fd4b Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 3 Jul 2013 00:51:55 +0100
-Subject: [PATCH 015/162] Add hwrng (hardware random number generator) driver
+Subject: [PATCH 015/184] Add hwrng (hardware random number generator) driver
---
drivers/char/hw_random/Kconfig | 13 +++-
@@ -101823,10 +101823,10 @@ index 0000000..340f004
+MODULE_DESCRIPTION("BCM2708 H/W Random Number Generator (RNG) driver");
+MODULE_LICENSE("GPL and additional rights");
-From 52633f1996a2aa8ba50f4e88cee330aacc50af5f Mon Sep 17 00:00:00 2001
+From 8999a27eaf7185af1543fbabc7b1125ed4d100d7 Mon Sep 17 00:00:00 2001
From: Aron Szabo
Date: Sat, 16 Jun 2012 12:15:55 +0200
-Subject: [PATCH 016/162] lirc: added support for RaspberryPi GPIO
+Subject: [PATCH 016/184] lirc: added support for RaspberryPi GPIO
lirc_rpi: Use read_current_timer to determine transmitter delay. Thanks to jjmz and others
See: https://github.com/raspberrypi/linux/issues/525
@@ -102679,10 +102679,10 @@ index 0000000..24563ec
+module_param(debug, bool, S_IRUGO | S_IWUSR);
+MODULE_PARM_DESC(debug, "Enable debugging messages");
-From d7169bd6f84e792920039373af9c66bf9018ca90 Mon Sep 17 00:00:00 2001
+From f11d95b418dbf7cbe56a115b38cf4f92ac3ad449 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 3 Jul 2013 00:49:20 +0100
-Subject: [PATCH 017/162] Add cpufreq driver
+Subject: [PATCH 017/184] Add cpufreq driver
Signed-off-by: popcornmix
---
@@ -102955,10 +102955,10 @@ index 0000000..6735da9
+module_init(bcm2835_cpufreq_module_init);
+module_exit(bcm2835_cpufreq_module_exit);
-From 04cc0b3f109587704270af2dc9f62793465cd5df Mon Sep 17 00:00:00 2001
+From 64161aa8d6162ad77539322657cfbebb0501afe7 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 26 Mar 2013 19:24:24 +0000
-Subject: [PATCH 018/162] Added hwmon/thermal driver for reporting core
+Subject: [PATCH 018/184] Added hwmon/thermal driver for reporting core
temperature. Thanks Dorian
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -103255,10 +103255,10 @@ index 0000000..3bc80f1
+
+module_platform_driver(bcm2835_thermal_driver);
-From 8376f6b64eadfbee3c91ed3ca68ad1246beb9cd6 Mon Sep 17 00:00:00 2001
+From 0829e2506b76ae45cd2b10cf87b9eb482038b1ea Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 17 Jun 2015 15:41:33 +0100
-Subject: [PATCH 019/162] Add Chris Boot's spi driver.
+Subject: [PATCH 019/184] Add Chris Boot's spi driver.
spi: bcm2708: add device tree support
@@ -104170,10 +104170,10 @@ index 0000000..041b5e2
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:" DRV_NAME);
-From afb4f9980eff882d591c98e6686914ccb948bd2c Mon Sep 17 00:00:00 2001
+From 1f7bcb7ddfa9650775d711f80f2e560bafaec33e Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 17 Jun 2015 15:44:08 +0100
-Subject: [PATCH 020/162] Add Chris Boot's i2c driver
+Subject: [PATCH 020/184] Add Chris Boot's i2c driver
i2c-bcm2708: fixed baudrate
@@ -104974,10 +104974,10 @@ index 0000000..8773203
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:" DRV_NAME);
-From c67e04753eab1139459e693fbbb42ff5820ef7ad Mon Sep 17 00:00:00 2001
+From 0be494d1b3e0a66d2a0429097e31eb5f8bd8fa7a Mon Sep 17 00:00:00 2001
From: Vincent Sanders
Date: Wed, 30 Jan 2013 12:45:18 +0000
-Subject: [PATCH 021/162] bcm2835: add v4l2 camera device
+Subject: [PATCH 021/184] bcm2835: add v4l2 camera device
- Supports raw YUV capture, preview, JPEG and H264.
- Uses videobuf2 for data transfer, using dma_buf.
@@ -112304,10 +112304,10 @@ index 0000000..9d1d11e
+
+#endif /* MMAL_VCHIQ_H */
-From 95de9bd5d72a4c046799ce025a203d078254223c Mon Sep 17 00:00:00 2001
+From e00c0af8fa949c4a76e6ff3b58c51fff83957933 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 23 Jan 2015 14:48:55 +0000
-Subject: [PATCH 022/162] scripts/dtc: Update to upstream version with overlay
+Subject: [PATCH 022/184] scripts/dtc: Update to upstream version with overlay
patches
---
@@ -117520,10 +117520,10 @@ index 54d4e904..d644002 100644
-#define DTC_VERSION "DTC 1.4.0-dirty"
+#define DTC_VERSION "DTC 1.4.1-g36c70742"
-From 162273d9683af43ee8ae584f1bcd20ebb9c9bf7c Mon Sep 17 00:00:00 2001
+From 5a3fb4b186514770f97fc5f4a75cbd82ab12a762 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 11 May 2015 09:00:42 +0100
-Subject: [PATCH 023/162] scripts: Add mkknlimg and knlinfo scripts from tools
+Subject: [PATCH 023/184] scripts: Add mkknlimg and knlinfo scripts from tools
repo
The Raspberry Pi firmware looks for a trailer on the kernel image to
@@ -118008,10 +118008,10 @@ index 0000000..3dff948
+ return (($val eq 'y') || ($val eq '1'));
+}
-From 6e4ae2ae95216ee3d9c14ee0d9ce62b83f7e6f3b Mon Sep 17 00:00:00 2001
+From c368aad99d0aaf23d962631c7ede7c64cb7df083 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 5 Dec 2014 17:26:26 +0000
-Subject: [PATCH 024/162] fdt: Add support for the CONFIG_CMDLINE_EXTEND option
+Subject: [PATCH 024/184] fdt: Add support for the CONFIG_CMDLINE_EXTEND option
---
drivers/of/fdt.c | 29 ++++++++++++++++++++++++-----
@@ -118066,10 +118066,10 @@ index cde35c5d01..dd7fbfe 100644
pr_debug("Command line is: %s\n", (char*)data);
-From 11c0faab54b6bcd84dff496de3b6e35dc2f7d7c2 Mon Sep 17 00:00:00 2001
+From bc87493bc445a355c39d8a27aae1f23667fb7497 Mon Sep 17 00:00:00 2001
From: notro
Date: Wed, 9 Jul 2014 14:46:08 +0200
-Subject: [PATCH 025/162] BCM2708: Add core Device Tree support
+Subject: [PATCH 025/184] BCM2708: Add core Device Tree support
Add the bare minimum needed to boot BCM2708 from a Device Tree.
@@ -121946,10 +121946,10 @@ index 0000000..66a98f6
+ };
+};
-From b971282c62798d20d971aa59ac410d163cdfe8bf Mon Sep 17 00:00:00 2001
+From 1874c77dceab6b0805da4a330a46d2b2d6dc1afd Mon Sep 17 00:00:00 2001
From: Siarhei Siamashka
Date: Mon, 17 Jun 2013 13:32:11 +0300
-Subject: [PATCH 026/162] fbdev: add FBIOCOPYAREA ioctl
+Subject: [PATCH 026/184] fbdev: add FBIOCOPYAREA ioctl
Based on the patch authored by Ali Gholami Rudi at
https://lkml.org/lkml/2009/7/13/153
@@ -122042,10 +122042,10 @@ index fb795c3..fa72af0 100644
#define FB_TYPE_PACKED_PIXELS 0 /* Packed Pixels */
#define FB_TYPE_PLANES 1 /* Non interleaved planes */
-From 2151dc8f57fbe0ab2ad577912bb530a02fb5b3ba Mon Sep 17 00:00:00 2001
+From 63c5fbdc6e2770243abb05c5ee78c74c80c8f9d3 Mon Sep 17 00:00:00 2001
From: Harm Hanemaaijer
Date: Thu, 20 Jun 2013 20:21:39 +0200
-Subject: [PATCH 029/162] Speed up console framebuffer imageblit function
+Subject: [PATCH 029/184] Speed up console framebuffer imageblit function
Especially on platforms with a slower CPU but a relatively high
framebuffer fill bandwidth, like current ARM devices, the existing
@@ -122254,10 +122254,10 @@ index a2bb276..436494f 100644
start_index, pitch_index);
} else
-From 446d54e6fa7b5ff354bebad2e8713feec094a25c Mon Sep 17 00:00:00 2001
+From f870ef6cde2474f86c12f0bc4d0c3f773e5f85ef Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 26 Mar 2013 17:26:38 +0000
-Subject: [PATCH 030/162] Allow mac address to be set in smsc95xx
+Subject: [PATCH 030/184] Allow mac address to be set in smsc95xx
Signed-off-by: popcornmix
---
@@ -122348,10 +122348,10 @@ index 26423ad..e29a323 100644
if (smsc95xx_read_eeprom(dev, EEPROM_MAC_OFFSET, ETH_ALEN,
dev->net->dev_addr) == 0) {
-From f085809bff204c0dbfe613ab84db505b69dc4a84 Mon Sep 17 00:00:00 2001
+From ef1520a1e31048375d37fdd2bd5f5a1d199b0b3e Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 8 May 2013 11:46:50 +0100
-Subject: [PATCH 031/162] enabling the realtime clock 1-wire chip DS1307 and
+Subject: [PATCH 031/184] enabling the realtime clock 1-wire chip DS1307 and
1-wire on GPIO4 (as a module)
1-wire: Add support for configuring pin for w1-gpio kernel module
@@ -122749,10 +122749,10 @@ index d58594a..feae942 100644
unsigned int ext_pullup_enable_pin;
unsigned int pullup_duration;
-From 6b9dbab245f2f6ab626907f0a949b578553b71f7 Mon Sep 17 00:00:00 2001
+From 235c37961456b4c334680ed4c25c5a96ab00abda Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 18 Dec 2013 22:16:19 +0000
-Subject: [PATCH 033/162] config: Enable CONFIG_MEMCG, but leave it disabled
+Subject: [PATCH 033/184] config: Enable CONFIG_MEMCG, but leave it disabled
(due to memory cost). Enable with cgroup_enable=memory.
---
@@ -122807,10 +122807,10 @@ index a04225d..a2ef8af 100644
/**
-From 93ef33e355c635521a6108616087fa0da4b60568 Mon Sep 17 00:00:00 2001
+From 913dab2ce61697ccf445a510795adcf8a52c66da Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 22 Nov 2013 14:33:38 +0100
-Subject: [PATCH 034/162] ASoC: Add support for BCM2708
+Subject: [PATCH 034/184] ASoC: Add support for BCM2708
This driver adds support for digital audio (I2S)
for the BCM2708 SoC that is used by the
@@ -123953,10 +123953,10 @@ index 0000000..6fdcbc1
+
+#endif
-From 4d971964566bacadd703f9fb1a443c64c28eee23 Mon Sep 17 00:00:00 2001
+From e502c438fcd082ccf630a4d509588fda0905ac52 Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 22 Nov 2013 14:59:51 +0100
-Subject: [PATCH 035/162] ASoC: Add support for PCM5102A codec
+Subject: [PATCH 035/184] ASoC: Add support for PCM5102A codec
Some definitions to support the PCM5102A codec
by Texas Instruments.
@@ -124081,10 +124081,10 @@ index 0000000..126f1e9
+MODULE_AUTHOR("Florian Meier ");
+MODULE_LICENSE("GPL v2");
-From bde596cb66bc3992a9a3cee42e68104ab66a18ff Mon Sep 17 00:00:00 2001
+From 335030fdfe2302fa65d841e1b450d1b1741b11cf Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 22 Nov 2013 19:04:54 +0100
-Subject: [PATCH 036/162] BCM2708: Add I2S support to board file
+Subject: [PATCH 036/184] BCM2708: Add I2S support to board file
Adds the required initializations for I2S
to the board file of mach-bcm2708.
@@ -124173,10 +124173,10 @@ index a3b65dc..a515992 100644
for (i = 0; i <= 1; i++) {
void __iomem *base;
-From 6d65c67c4eb121760f236e54545a1c2d685e92b8 Mon Sep 17 00:00:00 2001
+From b7c72ec1c00a776d4e47eaf7e584c6fbdf99876c Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 22 Nov 2013 19:19:08 +0100
-Subject: [PATCH 037/162] ASoC: Add support for HifiBerry DAC
+Subject: [PATCH 037/184] ASoC: Add support for HifiBerry DAC
This adds a machine driver for the HifiBerry DAC.
It is a sound card that can
@@ -124325,10 +124325,10 @@ index 0000000..4b70b45
+MODULE_DESCRIPTION("ASoC Driver for HifiBerry DAC");
+MODULE_LICENSE("GPL v2");
-From 05616851fffbdedda80af077597a31e8d5925fc3 Mon Sep 17 00:00:00 2001
+From 74faf52e4cd92d9b20ee66c7139b4bbaa041b103 Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 22 Nov 2013 19:21:34 +0100
-Subject: [PATCH 038/162] BCM2708: Add HifiBerry DAC to board file
+Subject: [PATCH 038/184] BCM2708: Add HifiBerry DAC to board file
This adds the initalization of the HifiBerry DAC
to the mach-bcm2708 board file.
@@ -124376,10 +124376,10 @@ index 01f2de7..1d9b788 100644
for (i = 0; i < ARRAY_SIZE(amba_devs); i++) {
struct amba_device *d = amba_devs[i];
-From 819e10b72679216925752642cfce72b3c8a79d1d Mon Sep 17 00:00:00 2001
+From 86435cf0c576f7cec47ee95722502c94fc61f181 Mon Sep 17 00:00:00 2001
From: Florian Meier
Date: Fri, 6 Dec 2013 20:50:28 +0100
-Subject: [PATCH 039/162] ASoC: BCM2708: Add support for RPi-DAC
+Subject: [PATCH 039/184] ASoC: BCM2708: Add support for RPi-DAC
This adds a machine driver for the RPi-DAC.
@@ -124674,10 +124674,10 @@ index 0000000..b4eaa44
+MODULE_AUTHOR("Florian Meier ");
+MODULE_LICENSE("GPL v2");
-From 8b0ecf0764b0de2e947d871b2e418a09aead205c Mon Sep 17 00:00:00 2001
+From 2e2e77e106ca29d0bafa7e0b2d69375f472fcf15 Mon Sep 17 00:00:00 2001
From: Daniel Matuschek
Date: Wed, 15 Jan 2014 21:41:23 +0100
-Subject: [PATCH 040/162] ASoC: wm8804: Implement MCLK configuration options,
+Subject: [PATCH 040/184] ASoC: wm8804: Implement MCLK configuration options,
add 32bit support WM8804 can run with PLL frequencies of 256xfs and 128xfs
for most sample rates. At 192kHz only 128xfs is supported. The existing
driver selects 128xfs automatically for some lower samples rates. By using an
@@ -124717,10 +124717,10 @@ index 1e403f6..d4efa85 100644
#define WM8804_RATES (SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \
SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_64000 | \
-From 6b4b396c00c6fe944b70174cb776adedc67cb456 Mon Sep 17 00:00:00 2001
+From a67cb15ccb58a4156c5a01e3fe0ad1e6b1a599aa Mon Sep 17 00:00:00 2001
From: Daniel Matuschek
Date: Wed, 15 Jan 2014 21:42:08 +0100
-Subject: [PATCH 041/162] ASoC: BCM:Add support for HiFiBerry Digi. Driver is
+Subject: [PATCH 041/184] ASoC: BCM:Add support for HiFiBerry Digi. Driver is
based on the patched WM8804 driver.
Signed-off-by: Daniel Matuschek
@@ -124985,10 +124985,10 @@ index 0000000..92e9e46
+MODULE_DESCRIPTION("ASoC Driver for HifiBerry Digi");
+MODULE_LICENSE("GPL v2");
-From 1eb3c950fcff8c770e4080d697415126e10790ab Mon Sep 17 00:00:00 2001
+From 1a9fc6343d77113ca453ee67243581a044a6a636 Mon Sep 17 00:00:00 2001
From: Daniel Matuschek
Date: Thu, 16 Jan 2014 07:26:08 +0100
-Subject: [PATCH 042/162] BCM2708: Added support for HiFiBerry Digi board Board
+Subject: [PATCH 042/184] BCM2708: Added support for HiFiBerry Digi board Board
initalization by I2C
Signed-off-by: Daniel Matuschek
@@ -125035,10 +125035,10 @@ index 6d53beb..a062d7f 100644
bcm_register_device_dt(&snd_rpi_dac_device);
bcm_register_device_dt(&snd_pcm1794a_codec_device);
-From 661cb2299f55c008af56199dc1aeb54329c1f254 Mon Sep 17 00:00:00 2001
+From 798b0abaaa050086db1269ef60e16f14f5d81f3a Mon Sep 17 00:00:00 2001
From: Daniel Matuschek
Date: Thu, 16 Jan 2014 07:36:35 +0100
-Subject: [PATCH 043/162] ASoC: wm8804: Set idle_bias_off to false Idle bias
+Subject: [PATCH 043/184] ASoC: wm8804: Set idle_bias_off to false Idle bias
has been change to remove warning on driver startup
Signed-off-by: Daniel Matuschek
@@ -125060,10 +125060,10 @@ index d4efa85..f3f26a2 100644
.dapm_widgets = wm8804_dapm_widgets,
.num_dapm_widgets = ARRAY_SIZE(wm8804_dapm_widgets),
-From b1e71e2d853e5ac8bbca50657dac172931c79c23 Mon Sep 17 00:00:00 2001
+From 4459cf8e37437ea463683b47c7ade1234d23576e Mon Sep 17 00:00:00 2001
From: Gordon Garrity
Date: Sat, 8 Mar 2014 16:56:57 +0000
-Subject: [PATCH 044/162] Add IQaudIO Sound Card support for Raspberry Pi
+Subject: [PATCH 044/184] Add IQaudIO Sound Card support for Raspberry Pi
Set a limit of 0dB on Digital Volume Control
@@ -125271,10 +125271,10 @@ index 0000000..aff7377
+MODULE_DESCRIPTION("ASoC Driver for IQAudio DAC");
+MODULE_LICENSE("GPL v2");
-From 30f56ce767df188beee46f05360352ce21f4013c Mon Sep 17 00:00:00 2001
+From 51bee497636d074c655c3a43023de3bdf7d91acd Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 18 Jun 2014 13:42:01 +0100
-Subject: [PATCH 045/162] vmstat: Workaround for issue where dirty page count
+Subject: [PATCH 045/184] vmstat: Workaround for issue where dirty page count
goes negative
See:
@@ -125301,10 +125301,10 @@ index 82e7db7..f87d16d 100644
static inline void __inc_zone_page_state(struct page *page,
-From 866ebc9c8208d9fc5e2925b57b19e05597f59535 Mon Sep 17 00:00:00 2001
+From bd40c05a978de0af53014919088688d79be28f0c Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Mon, 14 Jul 2014 22:02:09 +0100
-Subject: [PATCH 046/162] hid: Reduce default mouse polling interval to 60Hz
+Subject: [PATCH 046/184] hid: Reduce default mouse polling interval to 60Hz
Reduces overhead when using X
---
@@ -125340,10 +125340,10 @@ index bfbe1be..a738b25 100644
ret = -ENOMEM;
if (usb_endpoint_dir_in(endpoint)) {
-From cb3ad0970f6aa845e371419814328779f439906e Mon Sep 17 00:00:00 2001
+From bb5991f459cc07182237b7fce76f7badf8a05056 Mon Sep 17 00:00:00 2001
From: Daniel Matuschek
Date: Mon, 4 Aug 2014 10:06:56 +0200
-Subject: [PATCH 047/162] Added support for HiFiBerry DAC+
+Subject: [PATCH 047/184] Added support for HiFiBerry DAC+
The driver is based on the HiFiBerry DAC driver. However HiFiBerry DAC+ uses
a different codec chip (PCM5122), therefore a new driver is necessary.
@@ -125554,10 +125554,10 @@ index 0000000..c63387b
+MODULE_DESCRIPTION("ASoC Driver for HiFiBerry DAC+");
+MODULE_LICENSE("GPL v2");
-From 84b9d85375cbc33751a5d7bfaa37fad89c4a1580 Mon Sep 17 00:00:00 2001
+From 6f59fa3f213e8f4c1e86c7bdb5b4621153e0968d Mon Sep 17 00:00:00 2001
From: Daniel Matuschek
Date: Mon, 4 Aug 2014 11:09:58 +0200
-Subject: [PATCH 048/162] Added driver for HiFiBerry Amp amplifier add-on board
+Subject: [PATCH 048/184] Added driver for HiFiBerry Amp amplifier add-on board
The driver contains a low-level hardware driver for the TAS5713 and the
drivers for the Raspberry Pi I2S subsystem.
@@ -126426,10 +126426,10 @@ index 0000000..8f019e0
+
+#endif /* _TAS5713_H */
-From 6e9a21a0409722191171e96f6c8297d9ccb1b62a Mon Sep 17 00:00:00 2001
+From 450553c3330e2f5b190cbdb561a0140ba3831af6 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 13 Apr 2015 19:14:18 +0100
-Subject: [PATCH 049/162] bcm2708: Allow option card devices to be configured
+Subject: [PATCH 049/184] bcm2708: Allow option card devices to be configured
via DT
If the kernel is built with Device Tree support, and if a DT blob
@@ -126454,10 +126454,10 @@ index 03fa1cb..c816526 100644
static struct platform_driver bcm2835_i2s_driver = {
.probe = bcm2835_i2s_probe,
-From 53be0a63c8212baac6b8c3f19276163c5cb8abe2 Mon Sep 17 00:00:00 2001
+From 11037211a5e9c0063842ab8e6c66bb27de44883c Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Mon, 13 Apr 2015 18:45:39 +0100
-Subject: [PATCH 050/162] Adding Device Tree support for some RPi audio cards
+Subject: [PATCH 050/184] Adding Device Tree support for some RPi audio cards
---
arch/arm/mach-bcm2709/bcm2709.c | 143 ++++++++++++++++++++++++++++++++++++++
@@ -126820,10 +126820,10 @@ index 126f1e9..7c6598e 100644
};
-From 6ce245e7dce51837a2a80510d9b489b2f3bceb69 Mon Sep 17 00:00:00 2001
+From feb1cc5051d14d50af22f923fb5c4540792d8cd5 Mon Sep 17 00:00:00 2001
From: Timo Kokkonen
Date: Wed, 29 Oct 2014 23:30:30 -0700
-Subject: [PATCH 051/162] Added support to reserve/enable a GPIO pin to be used
+Subject: [PATCH 051/184] Added support to reserve/enable a GPIO pin to be used
from pps-gpio module (LinuxPPS). Enable PPS modules in default config for
RPi.
@@ -126959,10 +126959,10 @@ index 57e1f3d..721559b 100644
+module_param(pps_gpio_pin, int, 0644);
+MODULE_PARM_DESC(pps_gpio_pin, "Set GPIO pin to reserve for PPS");
-From 5925f5c740d44a3244a3258af74b33a57d92e215 Mon Sep 17 00:00:00 2001
+From 59e0365feeea7499c0c4d1ceff5ca41fed4ef1bc Mon Sep 17 00:00:00 2001
From: Ryan Coe
Date: Sat, 31 Jan 2015 18:25:49 -0700
-Subject: [PATCH 052/162] Update ds1307 driver for device-tree support
+Subject: [PATCH 052/184] Update ds1307 driver for device-tree support
Signed-off-by: Ryan Coe
---
@@ -126989,10 +126989,10 @@ index 4ffabb3..c6789a7 100644
.driver = {
.name = "rtc-ds1307",
-From 0d9d5d44991ac2b679a9f201f156aa1103183b76 Mon Sep 17 00:00:00 2001
+From 482c49893aaac62f57fa40b6f9edebd408820b79 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 6 Feb 2015 13:50:57 +0000
-Subject: [PATCH 053/162] BCM270x_DT: Add pwr_led, and the required "input"
+Subject: [PATCH 053/184] BCM270x_DT: Add pwr_led, and the required "input"
trigger
The "input" trigger makes the associated GPIO an input. This is to support
@@ -127103,10 +127103,10 @@ index 0000000..2ca2b98
+MODULE_DESCRIPTION("Set LED GPIO to Input \"trigger\"");
+MODULE_LICENSE("GPL");
-From 8112604da472b3bd30f58dd75f85e5a2397ad8ac Mon Sep 17 00:00:00 2001
+From 9590c4e749ca71df812a8d9bd5eece4346f058fc Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Fri, 20 Jun 2014 17:19:27 +0100
-Subject: [PATCH 054/162] bcm2709: Simplify and strip down IRQ handler
+Subject: [PATCH 054/184] bcm2709: Simplify and strip down IRQ handler
---
arch/arm/include/asm/entry-macro-multi.S | 2 +
@@ -127325,10 +127325,10 @@ index d08591b..08d184c 100644
+1: get_irqnr_and_base r0, r2, r6, lr
+ .endm
-From 94208834e11d59d251cbd8154df29a19a6cd2769 Mon Sep 17 00:00:00 2001
+From a216c02ac5863401ae356b2acf713e65ec2219f1 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Thu, 12 Feb 2015 11:17:53 +0000
-Subject: [PATCH 055/162] Fix LED "input" trigger implementation for 3.19
+Subject: [PATCH 055/184] Fix LED "input" trigger implementation for 3.19
---
drivers/leds/leds-gpio.c | 10 +++++++++-
@@ -127415,10 +127415,10 @@ index 9a2b000..60accc5 100644
/* Set LED brightness level */
/* Must not sleep, use a workqueue if needed */
-From cbfcea83366bfaa9e51e56d05e3fbe75c9b6ea5b Mon Sep 17 00:00:00 2001
+From 6cf3b859717b84122aa78dca571787c56733d6a8 Mon Sep 17 00:00:00 2001
From: notro
Date: Thu, 10 Jul 2014 13:59:47 +0200
-Subject: [PATCH 056/162] pinctrl-bcm2835: Set base to 0 give expected gpio
+Subject: [PATCH 056/184] pinctrl-bcm2835: Set base to 0 give expected gpio
numbering
Signed-off-by: Noralf Tronnes
@@ -127440,10 +127440,10 @@ index 8d908e3..7a1900d 100644
.can_sleep = false,
};
-From 1363a3e8879ca0ebeb98ff6ce2d092ae512989bd Mon Sep 17 00:00:00 2001
+From 21f644aed21c73b9723a75a747f0faf42674131e Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 4 Feb 2015 10:02:24 +0000
-Subject: [PATCH 057/162] pinctrl-bcm2835: bcm2835_gpio_direction_output must
+Subject: [PATCH 057/184] pinctrl-bcm2835: bcm2835_gpio_direction_output must
set the value
---
@@ -127471,10 +127471,10 @@ index 7a1900d..62f85aa 100644
static void bcm2835_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
-From d4eb5ac769e7e8c9bc23d44e8db10d2fe983375a Mon Sep 17 00:00:00 2001
+From b8404e667d8682395bc3bfcc9110f8fcd73f8b81 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 24 Feb 2015 13:40:50 +0000
-Subject: [PATCH 058/162] pinctrl-bcm2835: Fix interrupt handling for GPIOs
+Subject: [PATCH 058/184] pinctrl-bcm2835: Fix interrupt handling for GPIOs
28-31 and 46-53
Contrary to the documentation, the BCM2835 GPIO controller actually has
@@ -127620,10 +127620,10 @@ index 62f85aa..c7cf266 100644
},
};
-From 327847a04d35f47edaaef9b8ade918f7f7527492 Mon Sep 17 00:00:00 2001
+From 68072d1daec97449eecf6955dc3430f6b8b8d60e Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Thu, 26 Feb 2015 09:58:22 +0000
-Subject: [PATCH 059/162] pinctrl-bcm2835: Only request the interrupts listed
+Subject: [PATCH 059/184] pinctrl-bcm2835: Only request the interrupts listed
in the DTB
Although the GPIO controller can generate three interrupts (four counting
@@ -127650,10 +127650,10 @@ index c7cf266..986779a 100644
pc->irq_data[i].irqgroup = i;
-From 94b91ce3acba3c350664b3d9dcfba9e53d431437 Mon Sep 17 00:00:00 2001
+From 0d70a95f8103110191c97ca8d4d19407c707c1a5 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 27 Feb 2015 15:10:24 +0000
-Subject: [PATCH 060/162] enc28j60: Add device tree compatible string and an
+Subject: [PATCH 060/184] enc28j60: Add device tree compatible string and an
overlay
---
@@ -127687,10 +127687,10 @@ index b1b5f66..c6b6e1a 100644
.probe = enc28j60_probe,
.remove = enc28j60_remove,
-From 34c6e5a325cdedf9277559ecb40fd5bcc99989f0 Mon Sep 17 00:00:00 2001
+From a0f1d5f050c95dcde0eb503ce0612892c5f15ac7 Mon Sep 17 00:00:00 2001
From: Waldemar Brodkorb
Date: Wed, 25 Mar 2015 09:26:17 +0100
-Subject: [PATCH 061/162] Add driver for rpi-proto
+Subject: [PATCH 061/184] Add driver for rpi-proto
Forward port of 3.10.x driver from https://github.com/koalo
We are using a custom board and would like to use rpi 3.18.x
@@ -127905,10 +127905,10 @@ index 0000000..c6e45a0
+MODULE_DESCRIPTION("ASoC Driver for Raspberry Pi connected to PROTO board (WM8731)");
+MODULE_LICENSE("GPL");
-From 4779a91b7064c2b46383e3e7b911459a8c941e98 Mon Sep 17 00:00:00 2001
+From 818086dcc405fe6ead7fd0dbf15e8dc80d7a9286 Mon Sep 17 00:00:00 2001
From: Clive Messer
Date: Thu, 2 Apr 2015 12:22:55 +0100
-Subject: [PATCH 062/162] Add Device Tree support for RPi-DAC.
+Subject: [PATCH 062/184] Add Device Tree support for RPi-DAC.
---
sound/soc/bcm/rpi-dac.c | 21 +++++++++++++++++++++
@@ -127983,10 +127983,10 @@ index b4eaa44..afe1b41 100644
};
-From 5311db6a4627009d0ff8e3aea810bc454a277c7b Mon Sep 17 00:00:00 2001
+From 00fc3532672cd1626453f564d33144b6845e86b8 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Mon, 13 Apr 2015 17:16:29 +0100
-Subject: [PATCH 063/162] config: Add default configs
+Subject: [PATCH 063/184] config: Add default configs
---
arch/arm/configs/bcm2709_defconfig | 1204 ++++++++++++++++++++++++++++++++++++
@@ -130411,10 +130411,10 @@ index 0000000..6a41231
+CONFIG_CRC_ITU_T=y
+CONFIG_LIBCRC32C=y
-From 3f4696abe0930f17e6cdf8cccbc4ae0246035233 Mon Sep 17 00:00:00 2001
+From 2cb806ce2289c605ed171074fd9b72847bac0ec9 Mon Sep 17 00:00:00 2001
From: Steve Glendinning
Date: Thu, 19 Feb 2015 18:47:12 +0000
-Subject: [PATCH 064/162] smsx95xx: fix crimes against truesize
+Subject: [PATCH 064/184] smsx95xx: fix crimes against truesize
smsc95xx is adjusting truesize when it shouldn't, and following a recent patch from Eric this is now triggering warnings.
@@ -130449,10 +130449,10 @@ index e29a323..aff63dc
usbnet_skb_return(dev, ax_skb);
}
-From 56f171703257a83bb857c755891207168db7be05 Mon Sep 17 00:00:00 2001
+From 7fd399f9583dc5f88f15a6c19e3d91696d45ee6f Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Fri, 17 Apr 2015 16:58:45 +0100
-Subject: [PATCH 065/162] smsc95xx: Disable turbo mode by default
+Subject: [PATCH 065/184] smsc95xx: Disable turbo mode by default
---
drivers/net/usb/smsc95xx.c | 2 +-
@@ -130472,10 +130472,10 @@ index aff63dc..08a8a8c 100755
MODULE_PARM_DESC(turbo_mode, "Enable multiple frames per Rx transaction");
-From cdc8a06c6bc601bb3112fde4254068531ee1dd24 Mon Sep 17 00:00:00 2001
+From 30ee1f5b151b91c2df6f0206add7e39e7f503ca0 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 17 Apr 2015 19:30:22 +0100
-Subject: [PATCH 066/162] Add blk_pos parameter to mmc multi_io_quirk callback
+Subject: [PATCH 066/184] Add blk_pos parameter to mmc multi_io_quirk callback
---
drivers/mmc/card/block.c | 1 +
@@ -130558,10 +130558,10 @@ index b0258e8..d3cdad9 100644
struct mmc_card;
-From 57641db5c552d86d1205ee87eaea41689ade2b4b Mon Sep 17 00:00:00 2001
+From e16b2fa757a4ea5b1d11a870b905a774421a73fa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Wed, 29 Apr 2015 17:24:02 +0200
-Subject: [PATCH 067/162] bcm2835: bcm2835_defconfig
+Subject: [PATCH 067/184] bcm2835: bcm2835_defconfig
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -131891,10 +131891,10 @@ index 31cb073..2e8a95a 100644
# CONFIG_XZ_DEC_ARM is not set
# CONFIG_XZ_DEC_ARMTHUMB is not set
-From e6a566619f5ac7575cc248e209786fe73598237d Mon Sep 17 00:00:00 2001
+From b934d0040c1e6cfc9921a68c48f064d63f642055 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 1 May 2015 23:00:15 +0200
-Subject: [PATCH 068/162] BCM270x_DT: Add mailbox bcm2708-vcio
+Subject: [PATCH 068/184] BCM270x_DT: Add mailbox bcm2708-vcio
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -131935,10 +131935,10 @@ index 721559b..4a00561 100644
#ifdef CONFIG_BCM2708_GPIO
bcm_register_device_dt(&bcm2708_gpio_device);
-From 86174403ecaafa1b5cbb83d942bd2f49888fd573 Mon Sep 17 00:00:00 2001
+From 418832e4df7a8218f1b09f72304c3c6cf2b51234 Mon Sep 17 00:00:00 2001
From: Gordon Hollingworth
Date: Tue, 12 May 2015 14:47:56 +0100
-Subject: [PATCH 069/162] rpi-ft5406: Add touchscreen driver for pi LCD display
+Subject: [PATCH 069/184] rpi-ft5406: Add touchscreen driver for pi LCD display
---
drivers/input/touchscreen/Kconfig | 7 +
@@ -132255,10 +132255,10 @@ index cc284ed..d3ea839 100644
VCMSG_SET_CURSOR_STATE = 0x00008011,
};
-From f9ba6dc9f6e84b84124b81064aea3b1e49ed8d45 Mon Sep 17 00:00:00 2001
+From 67f08cf63765e86662a352a8fb557d9e4faa97c3 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 13 Oct 2014 11:47:53 +0100
-Subject: [PATCH 070/162] Improve __copy_to_user and __copy_from_user
+Subject: [PATCH 070/184] Improve __copy_to_user and __copy_from_user
performance
Provide a __copy_from_user that uses memcpy. On BCM2708, use
@@ -133783,10 +133783,10 @@ index 3e58d71..0622891 100644
static unsigned long noinline
__clear_user_memset(void __user *addr, unsigned long n)
-From 6ecc8a2de77836ecceef1f602050e7b7b4a2ae47 Mon Sep 17 00:00:00 2001
+From 0efe8388b6c12c59896db65f13c181d95987fb7c Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 27 May 2015 17:22:15 +0100
-Subject: [PATCH 071/162] bcm2835-audio: Create the platform device if the DT
+Subject: [PATCH 071/184] bcm2835-audio: Create the platform device if the DT
node is disabled
For backwards compatibility, allow the built-in ALSA driver to be enabled
@@ -133840,10 +133840,10 @@ index 4a00561..dec8043 100644
bcm_register_device_dt(&bcm2708_spi_device);
-From efa7fca2b37a8be44163a59ccc216b1700ede261 Mon Sep 17 00:00:00 2001
+From 3a007cbf03ab806c16be135da50f9115425dff36 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Wed, 3 Jun 2015 12:26:13 +0200
-Subject: [PATCH 072/162] ARM: bcm2835: Set Serial number and Revision
+Subject: [PATCH 072/184] ARM: bcm2835: Set Serial number and Revision
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -133902,10 +133902,10 @@ index 70f2f39..f7fdacd 100644
static const char * const bcm2835_compat[] = {
-From 866447c3daebb40a3d22513f0f38066688a81004 Mon Sep 17 00:00:00 2001
+From 56b59b9109aade207c33d7d9fece724d89edb0e7 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 16 Jun 2015 17:47:27 +0100
-Subject: [PATCH 073/162] platform: Add force_core command line setting to boot
+Subject: [PATCH 073/184] platform: Add force_core command line setting to boot
from a different core number
---
@@ -133976,10 +133976,10 @@ index dec8043..fe71c50 100644
module_param(serial, uint, 0644);
module_param(uart_clock, uint, 0644);
-From 336a44792af95c280cdb327e72ddd9fee7e1d682 Mon Sep 17 00:00:00 2001
+From 3d3b2dae4acf7b1ef7e6e33dfa3421add05af5a2 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Thu, 18 Jun 2015 17:46:17 +0100
-Subject: [PATCH 074/162] mach-bcm270x: Enable the building of pinctrl-bcm2835
+Subject: [PATCH 074/184] mach-bcm270x: Enable the building of pinctrl-bcm2835
---
drivers/pinctrl/Makefile | 1 +
@@ -133998,10 +133998,10 @@ index 6eadf04..9119513 100644
obj-$(CONFIG_ARCH_BERLIN) += berlin/
obj-y += freescale/
-From 02cf873c725ac8ada17bce9e849b81df4d21b074 Mon Sep 17 00:00:00 2001
+From 59de23cd60ae9def330db5eb018cecd113c47525 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 19 Jun 2015 16:41:39 +0100
-Subject: [PATCH 075/162] BCM270X_DT: Document the i2s-mmap overlay
+Subject: [PATCH 075/184] BCM270X_DT: Document the i2s-mmap overlay
---
arch/arm/boot/dts/overlays/README | 6 ++++++
@@ -134025,10 +134025,10 @@ index 3e08f98..7fa6d33 100644
Info: Configures the IQaudio DAC audio card
Load: dtoverlay=iqaudio-dac
-From 0b19c37e24d25c8882b48e6ea9e8f284c4ed34d4 Mon Sep 17 00:00:00 2001
+From 529b778be78beef39f873c952e3e2f47b32cfffa Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 17 Jun 2015 11:36:53 +0100
-Subject: [PATCH 076/162] bcm2835-sdhost: Improve error handling and recovery
+Subject: [PATCH 076/184] bcm2835-sdhost: Improve error handling and recovery
1) Expose the hw_reset method to the MMC framework, removing many
internal calls by the driver.
@@ -135120,10 +135120,10 @@ index eef8a24..6277e43 100644
if (host->allow_dma) {
-From ff187ec8ab4341163658c457e83c9f45f55e24ca Mon Sep 17 00:00:00 2001
+From 3f34f98a2708c28689e290b115b35d3714215069 Mon Sep 17 00:00:00 2001
From: Eric Anholt
Date: Thu, 4 Jun 2015 13:11:46 -0700
-Subject: [PATCH 077/162] ARM: bcm2835: Add the Raspberry Pi firmware driver
+Subject: [PATCH 077/184] ARM: bcm2835: Add the Raspberry Pi firmware driver
This gives us a function for making mailbox property channel requests
of the firmware, which is most notable in that it will let us get and
@@ -135557,10 +135557,10 @@ index 0000000..9d9efb7
+ void *data, size_t tag_size);
+struct rpi_firmware *rpi_firmware_get(struct device_node *firmware_node);
-From d4de234cfda7513927a197b95a2226bc1c28abc4 Mon Sep 17 00:00:00 2001
+From 8cad06720e98df848427e6335567887f7040a6b8 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Sun, 22 Mar 2015 13:33:23 +0000
-Subject: [PATCH 078/162] config: Enable ZSMALLOC, ZRAM and PGTABLE_MAPPING
+Subject: [PATCH 078/184] config: Enable ZSMALLOC, ZRAM and PGTABLE_MAPPING
---
arch/arm/configs/bcm2709_defconfig | 4 ++++
@@ -135612,10 +135612,10 @@ index 6a41231..cacde14 100644
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_DRBD=m
-From b2af418b8c06cbb1a2b7f8622ec55caab7880e96 Mon Sep 17 00:00:00 2001
+From 2561ea7629a48c6876bcb049912b4145914189a7 Mon Sep 17 00:00:00 2001
From: Gordon Hollingworth
Date: Mon, 22 Jun 2015 16:27:07 +0100
-Subject: [PATCH 079/162] Add rpi-ft5406 overlay Add rpi-ft5406 driver as
+Subject: [PATCH 079/184] Add rpi-ft5406 overlay Add rpi-ft5406 driver as
module
---
@@ -135702,10 +135702,10 @@ index cacde14..f952ff2 100644
CONFIG_TOUCHSCREEN_STMPE=m
CONFIG_INPUT_MISC=y
-From f65847235a40251eb0c2dc2015c8d84686376082 Mon Sep 17 00:00:00 2001
+From 087cdcdd8bd7d5c78758cdb5903230f58c9cc9a7 Mon Sep 17 00:00:00 2001
From: Gordon Hollingworth
Date: Tue, 23 Jun 2015 09:53:40 +0100
-Subject: [PATCH 080/162] Fix driver detection failure Check that the buffer
+Subject: [PATCH 080/184] Fix driver detection failure Check that the buffer
response is non-zero meaning the touchscreen was detected
---
@@ -135726,10 +135726,10 @@ index f55151b..d41851d 100644
dev_dbg(&pdev->dev, "Got TS buffer 0x%x\n", request.tag.val);
}
-From af55c1ff93d7326055956c27e844ec266621bc23 Mon Sep 17 00:00:00 2001
+From 7426319a8035baf3a38be576d1723dc1758d0ffe Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 23 Jun 2015 13:24:01 +0100
-Subject: [PATCH 081/162] config: Enable 8250 serial port
+Subject: [PATCH 081/184] config: Enable 8250 serial port
---
arch/arm/configs/bcm2709_defconfig | 7 +++++++
@@ -135777,10 +135777,10 @@ index f952ff2..0c25d8b 100644
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_BCM2835=m
-From 1dd292b6d87ac6e02e5fca192c189d94a83ab604 Mon Sep 17 00:00:00 2001
+From 5eaee11e5c9f4b5ca5aa478d9d392a0c058fb4a9 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 23 Jun 2015 14:10:58 +0100
-Subject: [PATCH 082/162] config: Enable POWER_RESET_GPIO
+Subject: [PATCH 082/184] config: Enable POWER_RESET_GPIO
---
arch/arm/configs/bcm2709_defconfig | 2 ++
@@ -135814,10 +135814,10 @@ index 0c25d8b..e757db6 100644
CONFIG_THERMAL=y
CONFIG_THERMAL_BCM2835=y
-From 0d483db4bb5dde7f9a9492cfce0d6636be31eedb Mon Sep 17 00:00:00 2001
+From 594144c43882d4f1cb7d00ec6ebb7d31b40a9c87 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Fri, 26 Jun 2015 17:37:38 +0100
-Subject: [PATCH 083/162] bcm2708-vcio: Remove restriction of only a single
+Subject: [PATCH 083/184] bcm2708-vcio: Remove restriction of only a single
instance being open
We need more than one process to be able to use mailbox interface (e.g. HW cursor in fbturbo and hello_fft).
@@ -135862,10 +135862,10 @@ index d91672b..06fb2c2f 100644
return 0;
-From 39adc072c8ba72fb469a13d725bacd040c73b7dc Mon Sep 17 00:00:00 2001
+From a352664afb3a70c30f22c5216fc6fe235aea3d51 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 26 Jun 2015 08:39:19 +0100
-Subject: [PATCH 084/162] BCM270X_DT: Create a "core" clock, use it for SPI and
+Subject: [PATCH 084/184] BCM270X_DT: Create a "core" clock, use it for SPI and
sdhost
---
@@ -136016,10 +136016,10 @@ index b408ab4..897204a 100644
};
};
-From 029c13e692dbf0808a2afb4f6fb33593093cb7f6 Mon Sep 17 00:00:00 2001
+From 6ecb561eee8e124283009a79872823feb0ba06ec Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 24 Jun 2015 09:24:31 +0100
-Subject: [PATCH 085/162] BCM270X_DT: Add MCP7941X to i2c-rtc overlay
+Subject: [PATCH 085/184] BCM270X_DT: Add MCP7941X to i2c-rtc overlay
---
arch/arm/boot/dts/overlays/README | 3 +++
@@ -136072,10 +136072,10 @@ index 6bccfdc..7052c71 100644
pcf8523 = <&pcf8523>,"status";
pcf8563 = <&pcf8563>,"status";
-From 4849d067dc42061bb8b07d3cd3cf43ebaf8f1753 Mon Sep 17 00:00:00 2001
+From 8c0f34fca8a1509cc4f176d8e1e80f8a3678547f Mon Sep 17 00:00:00 2001
From: P33M
Date: Wed, 24 Jun 2015 11:23:06 +0100
-Subject: [PATCH 086/162] dts/overlays: document DHT11 overlay
+Subject: [PATCH 086/184] dts/overlays: document DHT11 overlay
---
arch/arm/boot/dts/overlays/README | 8 ++++++++
@@ -136101,10 +136101,10 @@ index 425eb19..9406cf3 100644
-From 06d00394bb2fff989c57915ceb54012ef33cb957 Mon Sep 17 00:00:00 2001
+From 62a764969502398f404c9af8a01a9dc1c32ff498 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Thu, 25 Jun 2015 12:16:11 +0100
-Subject: [PATCH 087/162] gpio-poweroff: Allow it to work on Raspberry Pi
+Subject: [PATCH 087/184] gpio-poweroff: Allow it to work on Raspberry Pi
The Raspberry Pi firmware manages the power-down and reboot
process. To do this it installs a pm_power_off handler, causing
@@ -136219,10 +136219,10 @@ index e5332f1..6e3fec2 100644
"%s: pm_power_off function already registered",
__func__);
-From 859f2dc684cc0cf92e3d171ec3161cb828c2f174 Mon Sep 17 00:00:00 2001
+From aa912e8fc6344ed58355709e9e6722247c62fe7d Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 17 Jun 2015 17:10:40 +0100
-Subject: [PATCH 088/162] BCM270x_DT: Default Compute Module i2c, i2s and spi
+Subject: [PATCH 088/184] BCM270x_DT: Default Compute Module i2c, i2s and spi
support
---
@@ -136312,10 +136312,10 @@ index e82fcb2..af252bd 100755
};
};
-From a1dc8ab4c9e134d7cec088d091e76b7a9fe96f03 Mon Sep 17 00:00:00 2001
+From c2c12dc7820ce23316226277a090372d285f8d71 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 22 Jun 2015 14:21:55 +0100
-Subject: [PATCH 089/162] BCM270X_DT: Sort nodes by bus address, and
+Subject: [PATCH 089/184] BCM270X_DT: Sort nodes by bus address, and
consolidate aliases
---
@@ -136557,10 +136557,10 @@ index 24fa849..ccb9c31 100644
&gpio {
-From 3f7a6c3e559a8a39eb732ef21569b6913416eec4 Mon Sep 17 00:00:00 2001
+From d07909257b284c7e672acb3f2f3d10463d36efb4 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 22 Jun 2015 14:23:03 +0100
-Subject: [PATCH 090/162] i2c-bcm2708/BCM270X_DT: Add support for I2C2
+Subject: [PATCH 090/184] i2c-bcm2708/BCM270X_DT: Add support for I2C2
The third I2C bus (I2C2) is normally reserved for HDMI use. Careless
use of this bus can break an attached display - use with caution.
@@ -136733,10 +136733,10 @@ index 8773203..7a24fbe 100644
goto out_free_bi;
}
-From b160d05a7f306283b47d1f133d0cc796f1c811ca Mon Sep 17 00:00:00 2001
+From 279cb2310d229572ad89ca72c8827a6ee3eeca84 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 29 Jun 2015 12:14:02 +0100
-Subject: [PATCH 091/162] BCM270X_DT: Correct the lirc-rpi overlay
+Subject: [PATCH 091/184] BCM270X_DT: Correct the lirc-rpi overlay
documentation
The polarity of the "sense" parameter was inverted with respect to reality.
@@ -136762,10 +136762,10 @@ index 0ed7094..ec762d2 100644
(default "-1")
-From 10cfd6f8e969f05c16e75b54a5d1c9834169a3e4 Mon Sep 17 00:00:00 2001
+From 728c39dd915bab8db237206508db61f2b54ef031 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Thu, 25 Jun 2015 08:47:09 +0100
-Subject: [PATCH 092/162] bcm2835-sdhost: Further improve overclock back-off
+Subject: [PATCH 092/184] bcm2835-sdhost: Further improve overclock back-off
---
drivers/mmc/host/bcm2835-sdhost.c | 144 +++++++++++++++++++++-----------------
@@ -137057,10 +137057,10 @@ index 6277e43..a03db06 100644
iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-From 98d3dac83fb4e30d8ea7d28e9eeac6d52b2e16b6 Mon Sep 17 00:00:00 2001
+From 26e7a55831a1753aad02313f1773d9ce6d54da07 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 30 Jun 2015 10:28:59 +0100
-Subject: [PATCH 093/162] i2c-bcm2708: Increase timeouts to allow larger
+Subject: [PATCH 093/184] i2c-bcm2708: Increase timeouts to allow larger
transfers
Use the timeout value provided by the I2C_TIMEOUT ioctl when waiting
@@ -137098,10 +137098,10 @@ index 7a24fbe..8b8762d 100644
dev_err(&adap->dev, "transfer timed out\n");
goto error_timeout;
-From f445cdcc82e3ccf74988cd01df2850b950947c53 Mon Sep 17 00:00:00 2001
+From eeb5edf190d6e60cde7cbb207528711ada055049 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 30 Jun 2015 10:33:52 +0100
-Subject: [PATCH 094/162] spi-bcm2708: Increase timeout from 150ms to 1s
+Subject: [PATCH 094/184] spi-bcm2708: Increase timeout from 150ms to 1s
See: https://github.com/raspberrypi/linux/issues/260
---
@@ -137125,10 +137125,10 @@ index 041b5e2..5c0214e 100644
struct bcm2708_spi {
spinlock_t lock;
-From b7c12eee260a36ea27726477fb9983e9e6ccee8c Mon Sep 17 00:00:00 2001
+From b30d2301dbba44c13d59a7db5bbccad352a404aa Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 15 Jun 2015 09:59:38 +0100
-Subject: [PATCH 095/162] bcm2708-spi: Don't use static pin configuration with
+Subject: [PATCH 095/184] bcm2708-spi: Don't use static pin configuration with
DT
Also remove superfluous error checking - the SPI framework ensures the
@@ -137167,10 +137167,10 @@ index 5c0214e..781c747 100644
master = spi_alloc_master(&pdev->dev, sizeof(*bs));
if (!master) {
-From d6f496d6567011b79640186e3b4867f3284ba8c1 Mon Sep 17 00:00:00 2001
+From b4f34ab5ffaf7fe832808f3c07facaf8d7f23fbe Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 15 Jun 2015 10:10:59 +0100
-Subject: [PATCH 096/162] bcm2708-i2s: Don't use static pin configuration with
+Subject: [PATCH 096/184] bcm2708-i2s: Don't use static pin configuration with
DT
---
@@ -137193,10 +137193,10 @@ index a515992..5e93cd6 100644
/*
* Adjust the data length according to the format.
-From adb3d59d9e584c4079658fd5cc2db368c08519ed Mon Sep 17 00:00:00 2001
+From 1a19fc07ad65550b059cd965c31c6d7d97aaafc2 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 30 Jun 2015 14:12:42 +0100
-Subject: [PATCH 097/162] serial: 8250: Don't crash when nr_uarts is 0
+Subject: [PATCH 097/184] serial: 8250: Don't crash when nr_uarts is 0
---
drivers/tty/serial/8250/8250_core.c | 2 ++
@@ -137216,10 +137216,10 @@ index 4506e40..f03a19a 100644
for (i = 0; i < nr_uarts; i++) {
struct uart_8250_port *up = &serial8250_ports[i];
-From 0468bc69c9364746fc564414c4ee482816c5a02a Mon Sep 17 00:00:00 2001
+From 4eee95c676b8cf9d802fbfa060eb4baadd6a6d7a Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 26 Jun 2015 08:50:11 +0100
-Subject: [PATCH 098/162] BCM270X_DT: Add overlay to enable uart1
+Subject: [PATCH 098/184] BCM270X_DT: Add overlay to enable uart1
N.B. The UART1 clock is derived from the core clock. The firmware
will update clock-frequency if core_freq is set, but be aware
@@ -137388,10 +137388,10 @@ index e757db6..363c894 100644
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_SERIAL_OF_PLATFORM=y
-From 3ce397e55f37a80143183b178b43299fd573b915 Mon Sep 17 00:00:00 2001
+From e47856fbd3512bf40fb11102e4af60187eaf0d15 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 24 Jun 2015 14:10:44 +0100
-Subject: [PATCH 099/162] spi-bcm2835: Support pin groups other than 7-11
+Subject: [PATCH 099/184] spi-bcm2835: Support pin groups other than 7-11
The spi-bcm2835 driver automatically uses GPIO chip-selects due to
some unreliability of the native ones. In doing so it chooses the
@@ -137472,10 +137472,10 @@ index 37875cf..55e81c2 100644
/* and set up the "mode" and level */
dev_info(&spi->dev, "setting up native-CS%i as GPIO %i\n",
-From 96390bbde19b5ce02afbd3f3104bb42b9572fbd1 Mon Sep 17 00:00:00 2001
+From 7b9d931331e58ba7ffc0d41a9584d69e7984101c Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 30 Jun 2015 17:37:38 +0100
-Subject: [PATCH 100/162] BCM270X_DT: Change pio_limit of sdhost driver to 1
+Subject: [PATCH 100/184] BCM270X_DT: Change pio_limit of sdhost driver to 1
---
arch/arm/boot/dts/overlays/sdhost-overlay.dts | 2 +-
@@ -137495,10 +137495,10 @@ index 897204a..2da14a4 100644
};
};
-From 8f680959959c9abe872dc7de99d66f81118d9ca9 Mon Sep 17 00:00:00 2001
+From b812ac14b8bcf869d1c83126317632f93e3ebc57 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 1 Jul 2015 12:51:52 +0100
-Subject: [PATCH 101/162] bcm2835-sdhost: Clear HBLC for PIO mode
+Subject: [PATCH 101/184] bcm2835-sdhost: Clear HBLC for PIO mode
Also update pio_limit default in overlay README.
---
@@ -137534,10 +137534,10 @@ index a03db06..d65870a 100644
BUG_ON(!host->data);
}
-From b1cef53451bc8b908a22007362458813b2db4dfa Mon Sep 17 00:00:00 2001
+From 584bac220641fdc6f55b37941a4bd86e1d1cadac Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 3 Jul 2015 12:21:01 +0100
-Subject: [PATCH 102/162] BCM270X_DT: I2S needs function Alt2
+Subject: [PATCH 102/184] BCM270X_DT: I2S needs function Alt2
---
arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 2 +-
@@ -137599,10 +137599,10 @@ index f25f0a2..62d1c62 100644
};
-From 54d63fb87793528242a314e8ad0cd2104e3cd832 Mon Sep 17 00:00:00 2001
+From 50930aa3c01d78a30f5950d425d4fa06a0ad5449 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:16:15 +0200
-Subject: [PATCH 103/162] configs: Incorporate v4.1 dependency changes
+Subject: [PATCH 103/184] configs: Incorporate v4.1 dependency changes
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -137765,10 +137765,10 @@ index 363c894..80f84d7 100644
CONFIG_CRC_ITU_T=y
CONFIG_LIBCRC32C=y
-From 489bf49229ec585c2cfd5e3b7d147f5e34429a42 Mon Sep 17 00:00:00 2001
+From 40a66a1d7396779f489655073ab662e68ac027d7 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 3 Jul 2015 15:47:33 +0100
-Subject: [PATCH 104/162] bcmrpi_defconfigs: Add SND_SOC_WM8804_I2C (for
+Subject: [PATCH 104/184] bcmrpi_defconfigs: Add SND_SOC_WM8804_I2C (for
HifiBerry Digi)
4.1 has split out support for the I2C and SPI variants, so it now
@@ -137803,10 +137803,10 @@ index 80f84d7..14b91fdf 100644
CONFIG_SOUND_PRIME=m
CONFIG_HIDRAW=y
-From 659db17b47edff9bd80d7bcb75d321e36f18ea7e Mon Sep 17 00:00:00 2001
+From bd98cb1eea3040c796e3c0242c26256fa20c0e8d Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Sat, 4 Jul 2015 19:55:23 +0100
-Subject: [PATCH 105/162] squash: BCM270X_DT: I2S only needs Alt2 on 28-31
+Subject: [PATCH 105/184] squash: BCM270X_DT: I2S only needs Alt2 on 28-31
See: https://github.com/raspberrypi/linux/issues/1046
---
@@ -137855,10 +137855,10 @@ index 62d1c62..f25f0a2 100644
};
-From e998374742a253b9250e0589e2a5ef305a325531 Mon Sep 17 00:00:00 2001
+From 51ed3e44eb5905dad99bc6ce5d30057cca2b32c2 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 8 Jul 2015 14:48:57 +0100
-Subject: [PATCH 106/162] vchiq_arm: Two cacheing fixes
+Subject: [PATCH 106/184] vchiq_arm: Two cacheing fixes
1) Make fragment size vary with cache line size
Without this patch, non-cache-line-aligned transfers may corrupt
@@ -138129,10 +138129,10 @@ index c739083..5edba23 100644
kfree(pagelist);
}
-From ac1e04a529413fca2cb21d4af2aa48c1a636e86c Mon Sep 17 00:00:00 2001
+From 94a4064adc9600f4693325b4088cf2f6f0c53797 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 30 Jun 2015 09:10:36 +0100
-Subject: [PATCH 107/162] BCM270X_DT: Overlay for the Fen Logic VGA666 board
+Subject: [PATCH 107/184] BCM270X_DT: Overlay for the Fen Logic VGA666 board
The VGA666 board requires GPIOs 2-21 (so no I2C or UART). Using the
overlay (instead of a custom dt-blob.bin) has the advantage that it will
@@ -138214,10 +138214,10 @@ index 0000000..7fcab96
+ };
+};
-From 4a3dc7ff555f8e64f32fc0dde6120582711187b1 Mon Sep 17 00:00:00 2001
+From 3111035f87ebd8678da3bf5dfd87391015b14bf7 Mon Sep 17 00:00:00 2001
From: petit-miner
Date: Fri, 10 Jul 2015 13:59:18 +0200
-Subject: [PATCH 108/162] Added support for 2 mcp2515 CAN Bus IC
+Subject: [PATCH 108/184] Added support for 2 mcp2515 CAN Bus IC
See: https://github.com/raspberrypi/linux/issues/1018
https://github.com/raspberrypi/linux/pull/1049
@@ -138347,10 +138347,10 @@ index 0000000..6bef9ae
+ };
+};
-From b503581bceb31ab83cd3d81ef690dd24173b1400 Mon Sep 17 00:00:00 2001
+From 70652d81539d3b880e133879bca441066310aa5d Mon Sep 17 00:00:00 2001
From: Lubomir Rintel
Date: Tue, 5 May 2015 13:27:45 -0700
-Subject: [PATCH 109/162] mailbox: Enable BCM2835 mailbox support
+Subject: [PATCH 109/184] mailbox: Enable BCM2835 mailbox support
This mailbox driver provides a single mailbox channel to write 32-bit
values to the VPU and get a 32-bit response. The Raspberry Pi
@@ -138629,10 +138629,10 @@ index 0000000..4b13268
+MODULE_DESCRIPTION("BCM2835 mailbox IPC driver");
+MODULE_LICENSE("GPL v2");
-From 93ccea2d56f31551e44f81f4742122af22b14dec Mon Sep 17 00:00:00 2001
+From e243b106d74d3a80c384195435b6bbd8f3b33147 Mon Sep 17 00:00:00 2001
From: Eric Anholt
Date: Wed, 13 May 2015 13:10:32 -0700
-Subject: [PATCH 110/162] mailbox/bcm2835: Fix mailbox full detection.
+Subject: [PATCH 110/184] mailbox/bcm2835: Fix mailbox full detection.
With the VC reader blocked and the ARM writing, MAIL0_STA reads empty
permanently while MAIL1_STA goes from empty (0x40000000) to non-empty
@@ -138671,10 +138671,10 @@ index 4b13268..0b47dd4 100644
return ret;
}
-From ca0a75c346648bad55fd341889fc3d04561868eb Mon Sep 17 00:00:00 2001
+From f8eebe64090e66b29cab0d3618f7146daf825019 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:19:30 +0200
-Subject: [PATCH 111/162] mailbox: bcm2835: Support ARCH_BCM270x
+Subject: [PATCH 111/184] mailbox: bcm2835: Support ARCH_BCM270x
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -138790,10 +138790,10 @@ index 19b491d..cc07d71 100644
dev_dbg(dev, "%s: mailbox not free\n", __func__);
mutex_unlock(&con_mutex);
-From 0b009387ea689fe4ea7108ce73414d35b869a05e Mon Sep 17 00:00:00 2001
+From fc2520b79dcb97dedc70c566306fd41002c97efe Mon Sep 17 00:00:00 2001
From: Eric Anholt
Date: Thu, 4 Jun 2015 13:11:47 -0700
-Subject: [PATCH 112/162] ARM: bcm2835: Add the firmware driver information to
+Subject: [PATCH 112/184] ARM: bcm2835: Add the firmware driver information to
the RPi DT
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -138827,10 +138827,10 @@ index 466f02b..5cdfd5a 100644
audio: audio {
compatible = "brcm,bcm2835-audio";
-From eb9904f2645254acdf046824f0ec9bec1c3e0e3b Mon Sep 17 00:00:00 2001
+From 1a6e34aa4c859a11bb2f5e43bc0608694251c2a0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:21:20 +0200
-Subject: [PATCH 113/162] firmware: bcm2835: Add missing property tags
+Subject: [PATCH 113/184] firmware: bcm2835: Add missing property tags
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -138892,10 +138892,10 @@ index 9d9efb7..d3933af 100644
RPI_FIRMWARE_GET_COMMAND_LINE = 0x00050001,
RPI_FIRMWARE_GET_DMA_CHANNELS = 0x00060001,
-From 24c0e7cad163249456deb3fff6d31c192558f816 Mon Sep 17 00:00:00 2001
+From c35d120d66f971a95785b212d1377f738e2b7d48 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:25:01 +0200
-Subject: [PATCH 114/162] firmware: bcm2835: Support ARCH_BCM270x
+Subject: [PATCH 114/184] firmware: bcm2835: Support ARCH_BCM270x
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -139001,10 +139001,10 @@ index dd506cd3..b980d53 100644
MODULE_AUTHOR("Eric Anholt ");
MODULE_DESCRIPTION("Raspberry Pi firmware driver");
-From 3e20004539b9c6dbc5373ad81238ca9fa01ed65e Mon Sep 17 00:00:00 2001
+From 37dfa9878eb3ccb0163f4b480e6082984d873d3d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:26:10 +0200
-Subject: [PATCH 115/162] firmware: bcm2835: Support legacy mailbox API
+Subject: [PATCH 115/184] firmware: bcm2835: Support legacy mailbox API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -139094,10 +139094,10 @@ index d3933af..9a08cf1 100644
u32 tag, void *data, size_t len);
int rpi_firmware_property_list(struct rpi_firmware *fw,
-From f9f80570984163be6895ca8742f6c1490c4878a1 Mon Sep 17 00:00:00 2001
+From debef1395e6c969933b6315f4a32cd93767d635c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:27:06 +0200
-Subject: [PATCH 116/162] char: broadcom: Add vcio module
+Subject: [PATCH 116/184] char: broadcom: Add vcio module
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -139321,10 +139321,10 @@ index 0000000..c19bc20
+MODULE_DESCRIPTION("Mailbox userspace access");
+MODULE_LICENSE("GPL");
-From d8d2c66f0e3302e877c379ee9e039659575e4aa1 Mon Sep 17 00:00:00 2001
+From f52d69c675780db112e1f93dc5ce66e0bd65b1a4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:37:19 +0200
-Subject: [PATCH 117/162] BCM270x: Switch to firmware driver
+Subject: [PATCH 117/184] BCM270x: Switch to firmware driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -139931,10 +139931,10 @@ index 06fb2c2f..2e4031b 100644
MODULE_DESCRIPTION("ARM I/O to VideoCore processor");
MODULE_LICENSE("GPL");
-From a6b0ff114bd11a98e0adb5b582b635f8658f3dae Mon Sep 17 00:00:00 2001
+From 995c9559c468fe0f7ecca47d2c9bb0d0932468a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 26 Jun 2015 14:39:21 +0200
-Subject: [PATCH 118/162] bcm2835: Switch to firmware driver
+Subject: [PATCH 118/184] bcm2835: Switch to firmware driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -139990,10 +139990,10 @@ index 47f2a6a..c284414 100644
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
-From d53f3a81f351067c7658103f594a878d643c1398 Mon Sep 17 00:00:00 2001
+From 01f938b9ed2c6b5b5ca16a070be8f2c87a4bc9e7 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 13 Jul 2015 13:25:31 +0100
-Subject: [PATCH 119/162] Merge pull request #1059 from pelwell/rpi-4.0.y
+Subject: [PATCH 119/184] Merge pull request #1059 from pelwell/rpi-4.0.y
w1_therm: Back-port locking improvements from 4.2-rc1
---
@@ -140188,10 +140188,10 @@ index 55eb86c..2f029e8 100644
{
int err, i;
-From 051d84525b2e4f649ac02b6a6653c5124de2bba7 Mon Sep 17 00:00:00 2001
+From ef190db16a7945f6549271142039b59c39f23c09 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 14 Jul 2015 11:11:51 +0100
-Subject: [PATCH 120/162] vchiq_arm: Sort out the vmalloc case
+Subject: [PATCH 120/184] vchiq_arm: Sort out the vmalloc case
See: https://github.com/raspberrypi/linux/issues/1055
---
@@ -140230,10 +140230,10 @@ index 5edba23..56bff05 100644
*need_release = 0; /* do not try and release vmalloc pages */
} else {
-From a2bdecb23580622190e356d4deaf36cbb9ed8dc2 Mon Sep 17 00:00:00 2001
+From 944d0bd0ccd1a3bb898758ad10330705edfa66bf Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 14 Jul 2015 10:26:09 +0100
-Subject: [PATCH 121/162] spidev: Add "spidev" compatible string to silence
+Subject: [PATCH 121/184] spidev: Add "spidev" compatible string to silence
warning
See: https://github.com/raspberrypi/linux/issues/1054
@@ -140254,10 +140254,10 @@ index 92c909e..0535375 100644
};
MODULE_DEVICE_TABLE(of, spidev_dt_ids);
-From 99476b5d0cdf174a9b9402e53188087d8519a60b Mon Sep 17 00:00:00 2001
+From 1f8e0c611125001bed1e1160e6618ae9a3c1ee3f Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Tue, 14 Jul 2015 14:32:47 +0100
-Subject: [PATCH 122/162] Merge pull request #1043 from XECDesign/sense-4.0
+Subject: [PATCH 122/184] Merge pull request #1043 from XECDesign/sense-4.0
mfd: Add Raspberry Pi Sense HAT core driver
---
@@ -141190,10 +141190,10 @@ index 0000000..56196dc
+
+#endif
-From c9ee15527a47d732d7911e82aae847ab183f5e6a Mon Sep 17 00:00:00 2001
+From 442e27bafaa6a4cbc19783fc86a93b46805cabf6 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Wed, 15 Jul 2015 13:46:08 +0100
-Subject: [PATCH 123/162] leds-gpio: Implement the brightness_get method
+Subject: [PATCH 123/184] leds-gpio: Implement the brightness_get method
The power LED uses some clever logic that means it is driven
by a voltage measuring circuit when configured as input, otherwise
@@ -141236,10 +141236,10 @@ index 3cfbd6a..4e4e132 100644
state = !!gpiod_get_value_cansleep(led_dat->gpiod);
else
-From 0c65130383cfa27bf2964036da24ea09d13b12a9 Mon Sep 17 00:00:00 2001
+From e022aeef3a53e5f201d387daf974288e5c2df29f Mon Sep 17 00:00:00 2001
From: Robert Tiemann
Date: Fri, 17 Jul 2015 09:50:55 +0200
-Subject: [PATCH 124/162] dmaengine: bcm2708-dmaengine: Fix memory leak when
+Subject: [PATCH 124/184] dmaengine: bcm2708-dmaengine: Fix memory leak when
stopping a running transfer
---
@@ -141259,10 +141259,10 @@ index 987ed53..73c6c00 100644
bcm2835_dma_abort(c->chan_base);
-From 997788197d968e641ae5ac47a35fc79705196233 Mon Sep 17 00:00:00 2001
+From 5864bb774fb11a9bba6a1c10791894e393a18984 Mon Sep 17 00:00:00 2001
From: Robert Tiemann
Date: Mon, 20 Jul 2015 11:01:13 +0200
-Subject: [PATCH 125/162] BCM270X_DT: Fix I2S register map
+Subject: [PATCH 125/184] BCM270X_DT: Fix I2S register map
---
arch/arm/boot/dts/bcm2708_common.dtsi | 4 ++--
@@ -141284,10 +141284,10 @@ index 2dd25f7..728e14a 100644
//dmas = <&dma 2>,
// <&dma 3>;
-From 691397fefe6256a3b3e887fae54118ac95394fa6 Mon Sep 17 00:00:00 2001
+From 8ecc196ee828c68cadd7ade3759032a9947023ea Mon Sep 17 00:00:00 2001
From: Robert Tiemann
Date: Mon, 20 Jul 2015 11:01:25 +0200
-Subject: [PATCH 126/162] BCM2835_DT: Fix I2S register map
+Subject: [PATCH 126/184] BCM2835_DT: Fix I2S register map
---
Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt | 4 ++--
@@ -141341,10 +141341,10 @@ index 4a63704..1135120 100644
dmas = <&dma 2>,
<&dma 3>;
-From a06952fd1eaf85f96433c43094c6d6368dededad Mon Sep 17 00:00:00 2001
+From c8ab3e3f25614623c45c149ed34bc7475bc2ed83 Mon Sep 17 00:00:00 2001
From: David Frey
Date: Tue, 14 Jul 2015 15:57:36 +0200
-Subject: [PATCH 127/162] config: Enable SHT drivers for raspberry pi
+Subject: [PATCH 127/184] config: Enable SHT drivers for raspberry pi
The SHT temperature and humidity sensors are often used in weather
station projects.
@@ -141386,10 +141386,10 @@ index b9b5bdf..7b24274 100644
CONFIG_THERMAL_BCM2835=y
CONFIG_WATCHDOG=y
-From 5225bbd0087eb327575770be33682cde7c585922 Mon Sep 17 00:00:00 2001
+From ec4ad86b999bd1ba27313547604aa485664e6811 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 20 Jul 2015 14:07:14 +0100
-Subject: [PATCH 128/162] BCM270X_DT: Correct typo in overlays/README
+Subject: [PATCH 128/184] BCM270X_DT: Correct typo in overlays/README
---
arch/arm/boot/dts/overlays/README | 2 +-
@@ -141409,10 +141409,10 @@ index 8792f98..ed484ae 100644
i2c_arm Set to "on" to enable the ARM's i2c interface
-From 42f461f5cbbf0bfcfa723f75524124be0a6ab337 Mon Sep 17 00:00:00 2001
+From 25121f1d38b2cb6ce9997ea5207b315bc003ad37 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 20 Jul 2015 10:53:26 +0100
-Subject: [PATCH 129/162] bcm2835-sdhost: Add the ERASE capability
+Subject: [PATCH 129/184] bcm2835-sdhost: Add the ERASE capability
See: https://github.com/raspberrypi/linux/issues/1076
---
@@ -141433,10 +141433,10 @@ index d65870a..57a6ad3 100644
spin_lock_init(&host->lock);
-From bcdfa0084e7b016a127d899ebc2093a20f45360c Mon Sep 17 00:00:00 2001
+From fa3e5a05ccb81804a480e083b0dd835e538549c0 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 20 Jul 2015 17:32:18 +0100
-Subject: [PATCH 130/162] bcm2835-sdhost: Ignore CRC7 for MMC CMD1
+Subject: [PATCH 130/184] bcm2835-sdhost: Ignore CRC7 for MMC CMD1
It seems that the sdhost interface returns CRC7 errors for CMD1,
which is the MMC-specific SEND_OP_COND. Returning these errors to
@@ -141500,10 +141500,10 @@ index 57a6ad3..84f645f 100644
if (host->cmd->flags & MMC_RSP_PRESENT) {
-From 06c63fd49eaca311b464c3fa150b169edc9eee9b Mon Sep 17 00:00:00 2001
+From 462a5895b5d87b1af87fd19a37f60e22d4b3c0df Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 20 Jul 2015 14:48:21 +0100
-Subject: [PATCH 131/162] BCM270X_DT: Add unit address to gpio node name
+Subject: [PATCH 131/184] BCM270X_DT: Add unit address to gpio node name
---
arch/arm/boot/dts/bcm2708_common.dtsi | 2 +-
@@ -141523,10 +141523,10 @@ index 728e14a..cb608df 100644
reg = <0x7e200000 0xb4>;
interrupts = <2 17>, <2 18>;
-From 8993751f2759af27cc93f1b3ae1eb4ecd05e5896 Mon Sep 17 00:00:00 2001
+From 758d28781ebe88535099cf422f601d9f144aab9e Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 24 Jul 2015 10:36:32 +0100
-Subject: [PATCH 132/162] BCM270X_DT: Use i2c_arm for rtc and bmp085 overlays
+Subject: [PATCH 132/184] BCM270X_DT: Use i2c_arm for rtc and bmp085 overlays
---
arch/arm/boot/dts/overlays/bmp085_i2c-sensor-overlay.dts | 2 +-
@@ -141560,10 +141560,10 @@ index 7052c71..fed4bd8 100644
#address-cells = <1>;
#size-cells = <0>;
-From d8bfebaed30cc06eb94fd3db0b2db55935064492 Mon Sep 17 00:00:00 2001
+From e735b74604fbb8c87e6203a81e07213dfd3ca6e0 Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Fri, 24 Jul 2015 12:11:31 +0100
-Subject: [PATCH 133/162] BCM2708_DT: CM dtparams for audio, watchdog and RNG
+Subject: [PATCH 133/184] BCM2708_DT: CM dtparams for audio, watchdog and RNG
---
arch/arm/boot/dts/bcm2708-rpi-cm.dtsi | 8 ++++----
@@ -141593,10 +141593,10 @@ index 34d4bc6..713e5a2 100644
};
};
-From 01e1694a21481edca98809825c2b45354fdbbf43 Mon Sep 17 00:00:00 2001
+From 6163a630fcf3c74fd23fcc85862c5eebc870038d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Mon, 20 Jul 2015 12:13:18 +0200
-Subject: [PATCH 134/162] vchiq: Use firmware API
+Subject: [PATCH 134/184] vchiq: Use firmware API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -141712,10 +141712,10 @@ index 31e2cba..e11c0e0 100644
err = vchiq_debugfs_init();
if (err != 0)
-From 603a29be18f960221ef5623607bbe32740a34253 Mon Sep 17 00:00:00 2001
+From eadb752bb2b90fc4181f512f697c131d32e4ab10 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Mon, 20 Jul 2015 12:17:10 +0200
-Subject: [PATCH 135/162] thermal: bcm2835: Use firmware API
+Subject: [PATCH 135/184] thermal: bcm2835: Use firmware API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -141998,10 +141998,10 @@ index 3bc80f1..c1d8f1b 100644
-module_platform_driver(bcm2835_thermal_driver);
+MODULE_LICENSE("GPL");
-From f5cd4743e0235ba47366569c2e56d1f57f220660 Mon Sep 17 00:00:00 2001
+From cf6eb4ad6dad593e7e6c528c6d86b015acf91c0f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Mon, 20 Jul 2015 12:18:36 +0200
-Subject: [PATCH 136/162] cpufreq: bcm2835: Use firmware API
+Subject: [PATCH 136/184] cpufreq: bcm2835: Use firmware API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -142185,10 +142185,10 @@ index 6735da9..3eb9e93 100644
}
-From 9089b26a00ebe882b9101fdf20ee3845d11cca35 Mon Sep 17 00:00:00 2001
+From 00a5e22858cc58fa8ac1eacd335d25287366ddae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Mon, 20 Jul 2015 12:20:59 +0200
-Subject: [PATCH 137/162] fbdev: bcm2708: Use firmware API
+Subject: [PATCH 137/184] fbdev: bcm2708: Use firmware API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -142604,10 +142604,10 @@ index f6ac7da..06a96d16 100644
free_irq(fb->dma_irq, fb);
-From 6327a22a39a16fe0ab3cd80e08794ca717241712 Mon Sep 17 00:00:00 2001
+From 1448227b91675fd216387c85bc2014ff4d135ac2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Mon, 20 Jul 2015 12:27:17 +0200
-Subject: [PATCH 138/162] bcm2835: Add firmware property to affected devices
+Subject: [PATCH 138/184] bcm2835: Add firmware property to affected devices
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -142688,10 +142688,10 @@ index 1135120..807264d 100644
clocks {
-From 0bd261fd54b59e6269d7234ec9e8ef3c3a93ee5f Mon Sep 17 00:00:00 2001
+From 62c08611186b6182c89b69284adc6f4d00380903 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Tue, 21 Jul 2015 19:09:39 +0200
-Subject: [PATCH 139/162] rpi-ft5406: Use firmware API
+Subject: [PATCH 139/184] rpi-ft5406: Use firmware API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -142831,10 +142831,10 @@ index d41851d..c08817e 100644
ts->regs = (struct ft5406_regs *) ts->ts_base;
-From 2d63fbd8a7f7a2aabc4fc7e6bb55a23a51bc69d9 Mon Sep 17 00:00:00 2001
+From 49911adc1dccdd0cd478596656d44276a49f410c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 12 Jun 2015 19:01:05 +0200
-Subject: [PATCH 140/162] irqchip: bcm2835: Add FIQ support
+Subject: [PATCH 140/184] irqchip: bcm2835: Add FIQ support
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -142966,10 +142966,10 @@ index 5916d6c..db66246 100644
}
-From f8e3f95ca4f0e4c67d3ae90cd34f85f90a0cb28e Mon Sep 17 00:00:00 2001
+From 9f64e381e13c68b6f872f1d07021cee23c15e5e7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 15:50:04 +0200
-Subject: [PATCH 141/162] dwc_otg: Add ARCH_BCM2835 support
+Subject: [PATCH 141/184] dwc_otg: Add ARCH_BCM2835 support
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -143022,10 +143022,10 @@ index 0f4ebcd..5c83309 100644
}
-From 9d1fb34204f0006ba107d18141cea7cef704b987 Mon Sep 17 00:00:00 2001
+From 5797256945e9317e7e1d440865b24cf4784601e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 15:50:24 +0200
-Subject: [PATCH 142/162] bcm2835: Use DWC_OTG
+Subject: [PATCH 142/184] bcm2835: Use DWC_OTG
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -143068,10 +143068,10 @@ index c284414..14ef294 100644
CONFIG_USB_STORAGE=y
CONFIG_USB_STORAGE_REALTEK=m
-From 1c0ae7f08f8caa4b379b42f1ddd87fe5fc672e9b Mon Sep 17 00:00:00 2001
+From e33c0a84c836ef521623cc9172ee1620941242e3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 19:33:16 +0200
-Subject: [PATCH 143/162] Fix RASPBERRYPI_FIRMWARE dependents
+Subject: [PATCH 143/184] Fix RASPBERRYPI_FIRMWARE dependents
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -143152,10 +143152,10 @@ index 3444a4c..c073d55 100644
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
-From c9d72e83ed9773da093b38a2ddacb3b465bf7e1c Mon Sep 17 00:00:00 2001
+From 3e31ca6b4b24f3838db543f90f32f5f201ba4edf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 19:33:46 +0200
-Subject: [PATCH 144/162] vc_mem: Remove unnecessary include
+Subject: [PATCH 144/184] vc_mem: Remove unnecessary include
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -143178,10 +143178,10 @@ index fcde6b1..be64f23 100644
#define DRIVER_NAME "vc-mem"
-From 06dd1e810c51fc7328c9f599e6d1216d86fc81ab Mon Sep 17 00:00:00 2001
+From c9653a1d393f156fb669497270e6b5ca610b9583 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 19:34:06 +0200
-Subject: [PATCH 145/162] configs: Remove BCM2708_MBOX
+Subject: [PATCH 145/184] configs: Remove BCM2708_MBOX
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -143230,10 +143230,10 @@ index 7b24274..0859113 100644
# CONFIG_IOMMU_SUPPORT is not set
CONFIG_EXTCON=m
-From 4d685c71c57dc9f9d83b94cdc540de776a2455de Mon Sep 17 00:00:00 2001
+From 1da6dd03e494645777be455c30eb1e04edaf4f88 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 19:34:31 +0200
-Subject: [PATCH 146/162] bcm2708-vcio: Remove module
+Subject: [PATCH 146/184] bcm2708-vcio: Remove module
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -143507,10 +143507,10 @@ index d3ea839..0000000
-
-#endif
-From 0b9ab0ae470ef7b048af62e8b34f0067b1e8a0d7 Mon Sep 17 00:00:00 2001
+From 550768460da9842305ce282bb40810efedc40b5e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 24 Jul 2015 19:34:55 +0200
-Subject: [PATCH 147/162] Revert "firmware: bcm2835: Support legacy mailbox
+Subject: [PATCH 147/184] Revert "firmware: bcm2835: Support legacy mailbox
API"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -143601,10 +143601,10 @@ index 9a08cf1..d3933af 100644
u32 tag, void *data, size_t len);
int rpi_firmware_property_list(struct rpi_firmware *fw,
-From f93e5ec9dfd270ef3b629d4617e3ea229ed96d72 Mon Sep 17 00:00:00 2001
+From dc27d5306bfcdfcaf7b2cf8866a5219b061a66ae Mon Sep 17 00:00:00 2001
From: Jonathan Bell
Date: Tue, 30 Jun 2015 12:35:39 +0100
-Subject: [PATCH 148/162] pinctrl: bcm2835: Clear the event latch register when
+Subject: [PATCH 148/184] pinctrl: bcm2835: Clear the event latch register when
disabling interrupts
It's possible to hit a race condition if interrupts are generated on a GPIO
@@ -143641,10 +143641,10 @@ index 986779a..61ef002 100644
spin_unlock_irqrestore(&pc->irq_lock[bank], flags);
}
-From 6c3e912a3ba6ce62ed9cee1827a1f986f1a8af70 Mon Sep 17 00:00:00 2001
+From 27cf775aec3d94076f68a6e736ff493bed02609a Mon Sep 17 00:00:00 2001
From: P33M
Date: Tue, 4 Aug 2015 01:15:20 +0100
-Subject: [PATCH 149/162] dwc_otg: fiq_fsm: Make high-speed isochronous strided
+Subject: [PATCH 149/184] dwc_otg: fiq_fsm: Make high-speed isochronous strided
transfers work properly
Certain low-bandwidth high-speed USB devices (specialist audio devices,
@@ -143784,10 +143784,10 @@ index 3f71f29..8db3dfc 100644
case FIQ_PER_SPLIT_LS_ABORTED:
-From 3fc3cf653206edcb2a2a6e417ebf09102cb5678a Mon Sep 17 00:00:00 2001
+From 5fe40f23b4f9dd3bb73240c0be25e1d4a410db51 Mon Sep 17 00:00:00 2001
From: Uli Middelberg
Date: Wed, 17 Jun 2015 10:36:56 +0200
-Subject: [PATCH 150/162] added basic docker support
+Subject: [PATCH 150/184] added basic docker support
---
arch/arm/configs/bcm2709_defconfig | 3 +++
@@ -143851,10 +143851,10 @@ index 0859113..06e7529 100644
CONFIG_FSCACHE_STATS=y
CONFIG_FSCACHE_HISTOGRAM=y
-From 10df72028fc23daeba903b1f7de812abdaecae1d Mon Sep 17 00:00:00 2001
+From 6abbb618faa7ffbba07dec6282ce0da316b47db6 Mon Sep 17 00:00:00 2001
From: Garrett
Date: Thu, 2 Jul 2015 19:32:04 -0500
-Subject: [PATCH 151/162] bcm2835 camera planar/packed stride length
+Subject: [PATCH 151/184] bcm2835 camera planar/packed stride length
Added a field to the mmal_fmt struct used to compute the bytes per line
when using a particular format. This results in the correct stride being
@@ -144025,10 +144025,11 @@ index 35698c8..15788a1 100644
};
/* buffer for one video frame */
-From 65fe96220f731c79830f8b7085a97551e6321d5e Mon Sep 17 00:00:00 2001
+
+From 00ecf7f3a41aa6c99de8e6bf805ed77b08ade2a8 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Tue, 28 Jul 2015 13:55:04 +0100
-Subject: [PATCH 153/162] config: Add Mediatek mt7601u wifi driver
+Subject: [PATCH 153/184] config: Add Mediatek mt7601u wifi driver
---
arch/arm/configs/bcm2709_defconfig | 2 ++
@@ -144062,10 +144063,10 @@ index 06e7529..a377222 100644
CONFIG_ZD1211RW=m
CONFIG_MWIFIEX=m
-From 075c169a20454a6bb347c1854bfad2557224fb9e Mon Sep 17 00:00:00 2001
+From 85b039dbb91fdbb7e053db80f31c401c3e259b3f Mon Sep 17 00:00:00 2001
From: Phil Elwell
Date: Mon, 17 Aug 2015 10:49:44 +0100
-Subject: [PATCH 154/162] BCM270X_DT: Add pwm and pwm-2chan overlays
+Subject: [PATCH 154/184] BCM270X_DT: Add pwm and pwm-2chan overlays
From the README entries:
Legal pin,function combinations for each channel:
@@ -144331,10 +144332,10 @@ index b1541f4..90591a9 100644
PWM framework driver for BCM2835 controller (Raspberry Pi)
-From 6ab6379ee9a376822bfc7ab62e8b9eaddd50f908 Mon Sep 17 00:00:00 2001
+From 3700467492f28ee6e89677b0b5cd5752b68c649e Mon Sep 17 00:00:00 2001
From: Martin Sperl
Date: Wed, 22 Apr 2015 07:33:03 +0000
-Subject: [PATCH 155/162] spi: bcm2835: fallback to interrupt for polling
+Subject: [PATCH 155/184] spi: bcm2835: fallback to interrupt for polling
timeouts exceeding 2 jiffies
The polling mode of the driver is designed for transfers that run
@@ -144470,10 +144471,10 @@ index 55e81c2..fc3c6f7 100644
struct spi_device *spi,
struct spi_transfer *tfr)
-From 152383427aa10dfa7bf146f4f166dbbd9fdb4a1c Mon Sep 17 00:00:00 2001
+From d9065397f6cf6d9de56617eb1b912b94ae1a165d Mon Sep 17 00:00:00 2001
From: Martin Sperl
Date: Sun, 10 May 2015 20:47:28 +0000
-Subject: [PATCH 156/162] spi: bcm2835: enable dma modes for transfers meeting
+Subject: [PATCH 156/184] spi: bcm2835: enable dma modes for transfers meeting
certain conditions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -144895,10 +144896,10 @@ index fc3c6f7..7af0fb2 100644
}
-From 42908111d24a8e1a2d2f2459d427f08628c9e2d3 Mon Sep 17 00:00:00 2001
+From af1af3ed6685094dce51d4effb48bac98b624218 Mon Sep 17 00:00:00 2001
From: Martin Sperl
Date: Tue, 12 May 2015 10:32:08 +0000
-Subject: [PATCH 157/162] spi: bcm2835: fix kbuild compile warnings/errors and
+Subject: [PATCH 157/184] spi: bcm2835: fix kbuild compile warnings/errors and
a typo
fixes several warnings/error emmitted by the kbuild system:
@@ -144954,10 +144955,10 @@ index 7af0fb2..9d80cea 100644
"Unaligned spi tx-transfer bridging page\n");
return false;
-From 3a66d068d6fcdce451b5af6c3be81d54774b2033 Mon Sep 17 00:00:00 2001
+From c4805d933460e5d8a588d19725d2e06123000c3c Mon Sep 17 00:00:00 2001
From: kbuild test robot
Date: Tue, 12 May 2015 19:43:59 +0800
-Subject: [PATCH 158/162] spi: bcm2835: bcm2835_dma_release() can be static
+Subject: [PATCH 158/184] spi: bcm2835: bcm2835_dma_release() can be static
Signed-off-by: Fengguang Wu
Signed-off-by: Mark Brown
@@ -144989,10 +144990,10 @@ index 9d80cea..338babc3 100644
struct dma_slave_config slave_config;
const __be32 *addr;
-From e18f00124628ffb928493bd578c5a6491d58fe32 Mon Sep 17 00:00:00 2001
+From 3c527383f8c3db402df3888563ceca7f6c62577d Mon Sep 17 00:00:00 2001
From: Martin Sperl
Date: Wed, 22 Jul 2015 07:43:28 +0000
-Subject: [PATCH 159/162] spi: bcm2835: fixed compile issues due to embedded
+Subject: [PATCH 159/184] spi: bcm2835: fixed compile issues due to embedded
comments... replaced with #if to avoid issues in the future.
Signed-off-by: Martin Sperl
@@ -145021,10 +145022,10 @@ index 338babc3..cedffe1 100644
static void bcm2835_spi_set_cs(struct spi_device *spi, bool gpio_level)
{
-From 69794b31211b139007174ee11f114a280e219010 Mon Sep 17 00:00:00 2001
+From e3c37563e0a076f89ca9bd275d1c5280565f4ae4 Mon Sep 17 00:00:00 2001
From: Martin Sperl
Date: Wed, 22 Jul 2015 08:34:41 +0000
-Subject: [PATCH 160/162] dt-overlay to enable dma for spi driver
+Subject: [PATCH 160/184] dt-overlay to enable dma for spi driver
Signed-off-by: Martin Sperl
---
@@ -145072,10 +145073,10 @@ index 0000000..266cf9d
+ };
+ };
-From 79d39de11b85457f42ded83c2d4b964b3d550e5d Mon Sep 17 00:00:00 2001
+From 8223ed39177c0808f6cb2a5fd118f44a4ce064a5 Mon Sep 17 00:00:00 2001
From: Martin Sperl
Date: Wed, 22 Jul 2015 12:41:54 +0000
-Subject: [PATCH 161/162] dt: overlay: added documentation of spi-dma overlay
+Subject: [PATCH 161/184] dt: overlay: added documentation of spi-dma overlay
Signed-off-by: Martin Sperl
---
@@ -145100,10 +145101,10 @@ index 1cd2140..bda8c14 100644
Info: 3.5" Color TFT Display by www.tinylcd.com
Options: Touch, RTC, keypad
-From 93a6b249eecf2bfde203d0c9ef8972c57c07c64d Mon Sep 17 00:00:00 2001
+From 9b8ee6a132dd2d50bd3a0b7c0b1b842e3071873f Mon Sep 17 00:00:00 2001
From: Serge Schneider
Date: Mon, 17 Aug 2015 18:06:16 +0100
-Subject: [PATCH 162/162] rpisense-fb: add low-light mode and gamma control
+Subject: [PATCH 162/184] rpisense-fb: add low-light mode and gamma control
---
drivers/video/fbdev/rpisense-fb.c | 68 +++++++++++++++++++++++++++++---
@@ -145245,3 +145246,1848 @@ index c4c1118..2ba95d7 100644
struct rpisense;
+
+From 54e2f2668f26d946d63f2df69c5fd7229c502a6c Mon Sep 17 00:00:00 2001
+From: popcornmix
+Date: Tue, 18 Aug 2015 11:50:03 +0100
+Subject: [PATCH 163/184] spi: bcm2835: Fix buld error from previous commit
+
+---
+ drivers/spi/spi-bcm2835.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/drivers/spi/spi-bcm2835.c b/drivers/spi/spi-bcm2835.c
+index cedffe1..338babc3 100644
+--- a/drivers/spi/spi-bcm2835.c
++++ b/drivers/spi/spi-bcm2835.c
+@@ -592,7 +592,6 @@ static int bcm2835_spi_transfer_one(struct spi_master *master,
+ return bcm2835_spi_transfer_one_irq(master, spi, tfr, cs);
+ }
+
+-#if 0
+ static void bcm2835_spi_handle_err(struct spi_master *master,
+ struct spi_message *msg)
+ {
+@@ -607,7 +606,6 @@ static void bcm2835_spi_handle_err(struct spi_master *master,
+ /* and reset */
+ bcm2835_spi_reset_hw(master);
+ }
+-#endif
+
+ static void bcm2835_spi_set_cs(struct spi_device *spi, bool gpio_level)
+ {
+
+From ca899b2fc8a14bcb38849829add2d1734e30ca15 Mon Sep 17 00:00:00 2001
+From: Phil Elwell
+Date: Wed, 19 Aug 2015 11:38:10 +0100
+Subject: [PATCH 164/184] BCM270X_DT: README - add note on indentation
+
+---
+ arch/arm/boot/dts/overlays/README | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
+index bda8c14..ac9c427 100644
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -74,6 +74,10 @@ behaviour. See the list of overlays below for a description of the parameters an
+ The Overlay and Parameter Reference
+ ===================================
+
++N.B. When editing this file, please preserve the indentation levels to make it simple to parse
++programmatically. NO HARD TABS.
++
++
+ Name:
+ Info: Configures the base Raspberry Pi hardware
+ Load:
+
+From 6fd290129689eee60f1e88e938e5259eddd63e9f Mon Sep 17 00:00:00 2001
+From: Phil Elwell
+Date: Thu, 20 Aug 2015 13:50:18 +0100
+Subject: [PATCH 165/184] bcm2708-dmaengine: Use more DMA channels (but not 12)
+
+1) Only the bcm2708_fb drivers uses the legacy DMA API, and
+it requires a BULK-capable channel, so all other types
+(FAST, NORMAL and LITE) can be made available to the regular
+DMA API.
+
+2) DMA channels 11-14 share an interrupt. The driver can't
+handle this, so don't use channels 12-14 (12 was used, probably
+because it appears to have an interrupt, but in reality that
+interrupt is for activity on ANY channel). This may explain
+a lockup encountered when running out of DMA channels.
+
+The combined effect of this patch is to leave 7 DMA channels
+available + channel 0 for bcm2708_fb via the legacy API.
+
+See: https://github.com/raspberrypi/linux/issues/1110
+ https://github.com/raspberrypi/linux/issues/1108
+---
+ arch/arm/boot/dts/bcm2708_common.dtsi | 5 ++--
+ drivers/dma/bcm2708-dmaengine.c | 43 +++++++++++++++++++++++------------
+ 2 files changed, 31 insertions(+), 17 deletions(-)
+
+diff --git a/arch/arm/boot/dts/bcm2708_common.dtsi b/arch/arm/boot/dts/bcm2708_common.dtsi
+index ea3bd9ca..f096f45 100644
+--- a/arch/arm/boot/dts/bcm2708_common.dtsi
++++ b/arch/arm/boot/dts/bcm2708_common.dtsi
+@@ -59,11 +59,10 @@
+ <1 24>,
+ <1 25>,
+ <1 26>,
+- <1 27>,
+- <1 28>;
++ <1 27>;
+
+ #dma-cells = <1>;
+- brcm,dma-channel-mask = <0x7f35>;
++ brcm,dma-channel-mask = <0x0f35>;
+ };
+
+ intc: interrupt-controller {
+diff --git a/drivers/dma/bcm2708-dmaengine.c b/drivers/dma/bcm2708-dmaengine.c
+index 73c6c00..85ce18b 100644
+--- a/drivers/dma/bcm2708-dmaengine.c
++++ b/drivers/dma/bcm2708-dmaengine.c
+@@ -184,7 +184,7 @@ static void vc_dmaman_init(struct vc_dmaman *dmaman, void __iomem *dma_base,
+ }
+
+ static int vc_dmaman_chan_alloc(struct vc_dmaman *dmaman,
+- unsigned preferred_feature_set)
++ unsigned required_feature_set)
+ {
+ u32 chans;
+ int chan = 0;
+@@ -193,10 +193,8 @@ static int vc_dmaman_chan_alloc(struct vc_dmaman *dmaman,
+ chans = dmaman->chan_available;
+ for (feature = 0; feature < BCM_DMA_FEATURE_COUNT; feature++)
+ /* select the subset of available channels with the desired
+- feature so long as some of the candidate channels have that
+- feature */
+- if ((preferred_feature_set & (1 << feature)) &&
+- (chans & dmaman->has_feature[feature]))
++ features */
++ if (required_feature_set & (1 << feature))
+ chans &= dmaman->has_feature[feature];
+
+ if (!chans)
+@@ -228,7 +226,7 @@ static int vc_dmaman_chan_free(struct vc_dmaman *dmaman, int chan)
+
+ /* DMA Manager Monitor */
+
+-extern int bcm_dma_chan_alloc(unsigned preferred_feature_set,
++extern int bcm_dma_chan_alloc(unsigned required_feature_set,
+ void __iomem **out_dma_base, int *out_dma_irq)
+ {
+ struct vc_dmaman *dmaman = g_dmaman;
+@@ -240,7 +238,7 @@ extern int bcm_dma_chan_alloc(unsigned preferred_feature_set,
+ return -ENODEV;
+
+ mutex_lock(&dmaman->lock);
+- chan = vc_dmaman_chan_alloc(dmaman, preferred_feature_set);
++ chan = vc_dmaman_chan_alloc(dmaman, required_feature_set);
+ if (chan < 0)
+ goto out;
+
+@@ -442,6 +440,7 @@ static inline struct bcm2835_desc *to_bcm2835_dma_desc(
+ return container_of(t, struct bcm2835_desc, vd.tx);
+ }
+
++#if 0
+ static void dma_dumpregs(struct bcm2835_chan *c)
+ {
+ pr_debug("-------------DMA DUMPREGS-------------\n");
+@@ -457,6 +456,7 @@ static void dma_dumpregs(struct bcm2835_chan *c)
+ readl(c->chan_base + BCM2835_DMA_NEXTCB));
+ pr_debug("--------------------------------------\n");
+ }
++#endif
+
+ static void bcm2835_dma_desc_free(struct virt_dma_desc *vd)
+ {
+@@ -862,6 +862,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
+ uint32_t len = sg_dma_len(sgent);
+
+ for (j = 0; j < len; j += max_size) {
++ u32 waits;
+ struct bcm2835_dma_cb *control_block =
+ &d->control_block_base[i+splitct];
+
+@@ -879,7 +880,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
+ }
+
+ /* Common part */
+- u32 waits = SDHCI_BCM_DMA_WAITS;
++ waits = SDHCI_BCM_DMA_WAITS;
+ if ((dma_debug >> 0) & 0x1f)
+ waits = (dma_debug >> 0) & 0x1f;
+ control_block->info |= BCM2835_DMA_WAITS(waits);
+@@ -1074,6 +1075,14 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
+ int rc;
+ int i;
+ int irq;
++#ifdef CONFIG_DMA_BCM2708_LEGACY
++ static const u32 wanted_features[] = {
++ BCM_DMA_FEATURE_FAST,
++ BCM_DMA_FEATURE_NORMAL,
++ BCM_DMA_FEATURE_LITE
++ };
++ int j;
++#endif
+
+
+ if (!pdev->dev.dma_mask)
+@@ -1120,20 +1129,24 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
+
+ platform_set_drvdata(pdev, od);
+
+- for (i = 0; i < 5; i++) {
++ for (i = 0, j = 0; j < ARRAY_SIZE(wanted_features);) {
++
+ void __iomem *chan_base;
+ int chan_id;
+
+- chan_id = bcm_dma_chan_alloc(BCM_DMA_FEATURE_LITE,
+- &chan_base,
+- &irq);
++ chan_id = bcm_dma_chan_alloc(wanted_features[j],
++ &chan_base,
++ &irq);
+
+- if (chan_id < 0)
+- break;
++ if (chan_id < 0) {
++ j++;
++ continue;
++ }
+
+ rc = bcm2708_dma_chan_init(od, chan_base, chan_id, irq);
+ if (rc)
+ goto err_no_dma;
++ i++;
+ }
+
+ if (pdev->dev.of_node) {
+@@ -1146,6 +1159,8 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
+ }
+ }
+
++ dev_info(&pdev->dev, "Initialized %i DMA channels (+ 1 legacy)\n", i);
++
+ #else
+ rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
+ if (rc)
+
+From 1f776a2e469043351fc5f16bc3ea95dd8d926983 Mon Sep 17 00:00:00 2001
+From: Jan Grulich
+Date: Mon, 24 Aug 2015 16:03:47 +0100
+Subject: [PATCH 166/184] RaspiDAC3 support
+
+Signed-off-by: Jan Grulich
+---
+ arch/arm/boot/dts/overlays/Makefile | 1 +
+ arch/arm/boot/dts/overlays/README | 6 +
+ arch/arm/boot/dts/overlays/raspidac3-overlay.dts | 45 ++++++
+ arch/arm/configs/bcm2709_defconfig | 1 +
+ arch/arm/configs/bcmrpi_defconfig | 1 +
+ sound/soc/bcm/Kconfig | 8 +
+ sound/soc/bcm/Makefile | 2 +
+ sound/soc/bcm/raspidac3.c | 191 +++++++++++++++++++++++
+ 8 files changed, 255 insertions(+)
+ create mode 100644 arch/arm/boot/dts/overlays/raspidac3-overlay.dts
+ create mode 100644 sound/soc/bcm/raspidac3.c
+
+diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile
+index 956e395..9b03b1f 100644
+--- a/arch/arm/boot/dts/overlays/Makefile
++++ b/arch/arm/boot/dts/overlays/Makefile
+@@ -37,6 +37,7 @@ dtb-$(RPI_DT_OVERLAYS) += pitft28-resistive-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += pps-gpio-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += pwm-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += pwm-2chan-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += raspidac3-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += rpi-dac-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += rpi-display-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += rpi-ft5406-overlay.dtb
+diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
+index ac9c427..7e38eb3 100644
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -455,6 +455,12 @@ Params: pin Output pin (default 18) - see table
+ clock PWM clock frequency (informational)
+
+
++Name: raspidac3
++Info: Configures the RaspiDAV Rev.3x audio card
++Load: dtoverlay=raspidac3
++Params:
++
++
+ Name: rpi-dac
+ Info: Configures the RPi DAC audio card
+ Load: dtoverlay=rpi-dac
+diff --git a/arch/arm/boot/dts/overlays/raspidac3-overlay.dts b/arch/arm/boot/dts/overlays/raspidac3-overlay.dts
+new file mode 100644
+index 0000000..1bd8054
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/raspidac3-overlay.dts
+@@ -0,0 +1,45 @@
++// Definitions for RaspiDACv3
++/dts-v1/;
++/plugin/;
++
++/ {
++ compatible = "brcm,bcm2708";
++
++ fragment@0 {
++ target = <&sound>;
++ __overlay__ {
++ compatible = "jg,raspidacv3";
++ i2s-controller = <&i2s>;
++ status = "okay";
++ };
++ };
++
++ fragment@1 {
++ target = <&i2s>;
++ __overlay__ {
++ status = "okay";
++ };
++ };
++
++ fragment@2 {
++ target = <&i2c1>;
++ __overlay__ {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ pcm5122@4c {
++ #sound-dai-cells = <0>;
++ compatible = "ti,pcm5122";
++ reg = <0x4c>;
++ status = "okay";
++ };
++
++ tpa6130a2: tpa6130a2@60 {
++ compatible = "ti,tpa6130a2";
++ reg = <0x60>;
++ status = "okay";
++ };
++ };
++ };
++};
+diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig
+index d7457fc..0d457a3 100644
+--- a/arch/arm/configs/bcm2709_defconfig
++++ b/arch/arm/configs/bcm2709_defconfig
+@@ -832,6 +832,7 @@ CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP=m
+ CONFIG_SND_BCM2708_SOC_RPI_DAC=m
+ CONFIG_SND_BCM2708_SOC_RPI_PROTO=m
+ CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m
++CONFIG_SND_BCM2708_SOC_RASPIDAC3=m
+ CONFIG_SND_SOC_WM8804_I2C=m
+ CONFIG_SND_SIMPLE_CARD=m
+ CONFIG_SOUND_PRIME=m
+diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig
+index 59b2fdd..8979f23 100644
+--- a/arch/arm/configs/bcmrpi_defconfig
++++ b/arch/arm/configs/bcmrpi_defconfig
+@@ -825,6 +825,7 @@ CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP=m
+ CONFIG_SND_BCM2708_SOC_RPI_DAC=m
+ CONFIG_SND_BCM2708_SOC_RPI_PROTO=m
+ CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m
++CONFIG_SND_BCM2708_SOC_RASPIDAC3=m
+ CONFIG_SND_SOC_WM8804_I2C=m
+ CONFIG_SND_SIMPLE_CARD=m
+ CONFIG_SOUND_PRIME=m
+diff --git a/sound/soc/bcm/Kconfig b/sound/soc/bcm/Kconfig
+index fc151ea..3db2852 100644
+--- a/sound/soc/bcm/Kconfig
++++ b/sound/soc/bcm/Kconfig
+@@ -67,3 +67,11 @@ config SND_BCM2708_SOC_IQAUDIO_DAC
+ select SND_SOC_PCM512x_I2C
+ help
+ Say Y or M if you want to add support for IQaudIO-DAC.
++
++config SND_BCM2708_SOC_RASPIDAC3
++ tristate "Support for RaspiDAC Rev.3x"
++ depends on SND_BCM2708_SOC_I2S
++ select SND_SOC_PCM512x_I2C
++ select SND_SOC_TPA6130A2
++ help
++ Say Y or M if you want to add support for RaspiDAC Rev.3x.
+diff --git a/sound/soc/bcm/Makefile b/sound/soc/bcm/Makefile
+index 883241b..621358b 100644
+--- a/sound/soc/bcm/Makefile
++++ b/sound/soc/bcm/Makefile
+@@ -16,6 +16,7 @@ snd-soc-hifiberry-amp-objs := hifiberry_amp.o
+ snd-soc-rpi-dac-objs := rpi-dac.o
+ snd-soc-rpi-proto-objs := rpi-proto.o
+ snd-soc-iqaudio-dac-objs := iqaudio-dac.o
++snd-soc-raspidac3-objs := raspidac3.o
+
+ obj-$(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC) += snd-soc-hifiberry-dac.o
+ obj-$(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS) += snd-soc-hifiberry-dacplus.o
+@@ -24,3 +25,4 @@ obj-$(CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP) += snd-soc-hifiberry-amp.o
+ obj-$(CONFIG_SND_BCM2708_SOC_RPI_DAC) += snd-soc-rpi-dac.o
+ obj-$(CONFIG_SND_BCM2708_SOC_RPI_PROTO) += snd-soc-rpi-proto.o
+ obj-$(CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC) += snd-soc-iqaudio-dac.o
++obj-$(CONFIG_SND_BCM2708_SOC_RASPIDAC3) += snd-soc-raspidac3.o
+diff --git a/sound/soc/bcm/raspidac3.c b/sound/soc/bcm/raspidac3.c
+new file mode 100644
+index 0000000..fddaeec
+--- /dev/null
++++ b/sound/soc/bcm/raspidac3.c
+@@ -0,0 +1,191 @@
++/*
++ * ASoC Driver for RaspiDAC v3
++ *
++ * Author: Jan Grulich
++ * Copyright 2015
++ * based on code by Daniel Matuschek
++ * based on code by Florian Meier
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * version 2 as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but
++ * WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * General Public License for more details.
++ */
++
++#include
++#include
++
++#include
++#include
++#include
++#include
++#include
++#include
++
++#include "../codecs/pcm512x.h"
++#include "../codecs/tpa6130a2.h"
++
++/* sound card init */
++static int snd_rpi_raspidac3_init(struct snd_soc_pcm_runtime *rtd)
++{
++ int ret;
++ struct snd_soc_card *card = rtd->card;
++ struct snd_soc_codec *codec = rtd->codec;
++ snd_soc_update_bits(codec, PCM512x_GPIO_EN, 0x08, 0x08);
++ snd_soc_update_bits(codec, PCM512x_GPIO_OUTPUT_4, 0xf, 0x02);
++ snd_soc_update_bits(codec, PCM512x_GPIO_CONTROL_1, 0x08,0x00);
++
++ ret = snd_soc_limit_volume(codec, "Digital Playback Volume", 207);
++ if (ret < 0)
++ dev_warn(card->dev, "Failed to set volume limit: %d\n", ret);
++ else {
++ struct snd_kcontrol *kctl;
++
++ ret = tpa6130a2_add_controls(codec);
++ if (ret < 0)
++ dev_warn(card->dev, "Failed to add TPA6130A2 controls: %d\n",
++ ret);
++ ret = snd_soc_limit_volume(codec,
++ "TPA6130A2 Headphone Playback Volume",
++ 54);
++ if (ret < 0)
++ dev_warn(card->dev, "Failed to set TPA6130A2 volume limit: %d\n",
++ ret);
++ kctl = snd_soc_card_get_kcontrol(card,
++ "TPA6130A2 Headphone Playback Volume");
++ if (kctl) {
++ strcpy(kctl->id.name, "Headphones Playback Volume");
++ /* disable the volume dB scale so alsamixer works */
++ kctl->vd[0].access = SNDRV_CTL_ELEM_ACCESS_READWRITE;
++ }
++
++ kctl = snd_soc_card_get_kcontrol(card,
++ "TPA6130A2 Headphone Playback Switch");
++ if (kctl)
++ strcpy(kctl->id.name, "Headphones Playback Switch");
++ }
++
++ return 0;
++}
++
++/* set hw parameters */
++static int snd_rpi_raspidac3_hw_params(struct snd_pcm_substream *substream,
++ struct snd_pcm_hw_params *params)
++{
++ struct snd_soc_pcm_runtime *rtd = substream->private_data;
++ struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
++
++ unsigned int sample_bits =
++ snd_pcm_format_physical_width(params_format(params));
++
++ return snd_soc_dai_set_bclk_ratio(cpu_dai, sample_bits * 2);
++}
++
++/* startup */
++static int snd_rpi_raspidac3_startup(struct snd_pcm_substream *substream) {
++ struct snd_soc_pcm_runtime *rtd = substream->private_data;
++ struct snd_soc_codec *codec = rtd->codec;
++ snd_soc_update_bits(codec, PCM512x_GPIO_CONTROL_1, 0x08,0x08);
++ tpa6130a2_stereo_enable(codec, 1);
++ return 0;
++}
++
++/* shutdown */
++static void snd_rpi_raspidac3_shutdown(struct snd_pcm_substream *substream) {
++ struct snd_soc_pcm_runtime *rtd = substream->private_data;
++ struct snd_soc_codec *codec = rtd->codec;
++ snd_soc_update_bits(codec, PCM512x_GPIO_CONTROL_1, 0x08,0x00);
++ tpa6130a2_stereo_enable(codec, 0);
++}
++
++/* machine stream operations */
++static struct snd_soc_ops snd_rpi_raspidac3_ops = {
++ .hw_params = snd_rpi_raspidac3_hw_params,
++ .startup = snd_rpi_raspidac3_startup,
++ .shutdown = snd_rpi_raspidac3_shutdown,
++};
++
++/* interface setup */
++static struct snd_soc_dai_link snd_rpi_raspidac3_dai[] = {
++{
++ .name = "RaspiDAC Rev.3x",
++ .stream_name = "RaspiDAC HiFi",
++ .cpu_dai_name = "bcm2708-i2s.0",
++ .codec_dai_name = "pcm512x-hifi",
++ .platform_name = "bcm2708-i2s.0",
++ .codec_name = "pcm512x.1-004c",
++ .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
++ SND_SOC_DAIFMT_CBS_CFS,
++ .ops = &snd_rpi_raspidac3_ops,
++ .init = snd_rpi_raspidac3_init,
++},
++};
++
++/* audio machine driver */
++static struct snd_soc_card snd_rpi_raspidac3 = {
++ .name = "RaspiDAC Rev.3x HiFi Audio Card",
++ .dai_link = snd_rpi_raspidac3_dai,
++ .num_links = ARRAY_SIZE(snd_rpi_raspidac3_dai),
++};
++
++/* sound card test */
++static int snd_rpi_raspidac3_probe(struct platform_device *pdev)
++{
++ int ret = 0;
++
++ snd_rpi_raspidac3.dev = &pdev->dev;
++
++ if (pdev->dev.of_node) {
++ struct device_node *i2s_node;
++ struct snd_soc_dai_link *dai = &snd_rpi_raspidac3_dai[0];
++ i2s_node = of_parse_phandle(pdev->dev.of_node,
++ "i2s-controller", 0);
++
++ if (i2s_node) {
++ dai->cpu_dai_name = NULL;
++ dai->cpu_of_node = i2s_node;
++ dai->platform_name = NULL;
++ dai->platform_of_node = i2s_node;
++ }
++ }
++
++ ret = snd_soc_register_card(&snd_rpi_raspidac3);
++ if (ret)
++ dev_err(&pdev->dev,
++ "snd_soc_register_card() failed: %d\n", ret);
++
++ return ret;
++}
++
++/* sound card disconnect */
++static int snd_rpi_raspidac3_remove(struct platform_device *pdev)
++{
++ return snd_soc_unregister_card(&snd_rpi_raspidac3);
++}
++
++static const struct of_device_id raspidac3_of_match[] = {
++ { .compatible = "jg,raspidacv3", },
++ {},
++};
++MODULE_DEVICE_TABLE(of, raspidac3_of_match);
++
++/* sound card platform driver */
++static struct platform_driver snd_rpi_raspidac3_driver = {
++ .driver = {
++ .name = "snd-rpi-raspidac3",
++ .owner = THIS_MODULE,
++ .of_match_table = raspidac3_of_match,
++ },
++ .probe = snd_rpi_raspidac3_probe,
++ .remove = snd_rpi_raspidac3_remove,
++};
++
++module_platform_driver(snd_rpi_raspidac3_driver);
++
++MODULE_AUTHOR("Jan Grulich ");
++MODULE_DESCRIPTION("ASoC Driver for RaspiDAC Rev.3x");
++MODULE_LICENSE("GPL v2");
+
+From e61d2a8fffe86ed426657867e092b062fff16ea3 Mon Sep 17 00:00:00 2001
+From: popcornmix
+Date: Tue, 14 Jul 2015 16:55:02 +0100
+Subject: [PATCH 167/184] config: Add SND_SOC_ADAU1701 module
+
+---
+ arch/arm/configs/bcm2709_defconfig | 1 +
+ arch/arm/configs/bcmrpi_defconfig | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig
+index 0d457a3..16a8354 100644
+--- a/arch/arm/configs/bcm2709_defconfig
++++ b/arch/arm/configs/bcm2709_defconfig
+@@ -833,6 +833,7 @@ CONFIG_SND_BCM2708_SOC_RPI_DAC=m
+ CONFIG_SND_BCM2708_SOC_RPI_PROTO=m
+ CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m
+ CONFIG_SND_BCM2708_SOC_RASPIDAC3=m
++CONFIG_SND_SOC_ADAU1701=m
+ CONFIG_SND_SOC_WM8804_I2C=m
+ CONFIG_SND_SIMPLE_CARD=m
+ CONFIG_SOUND_PRIME=m
+diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig
+index 8979f23..7dd4fd4 100644
+--- a/arch/arm/configs/bcmrpi_defconfig
++++ b/arch/arm/configs/bcmrpi_defconfig
+@@ -826,6 +826,7 @@ CONFIG_SND_BCM2708_SOC_RPI_DAC=m
+ CONFIG_SND_BCM2708_SOC_RPI_PROTO=m
+ CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m
+ CONFIG_SND_BCM2708_SOC_RASPIDAC3=m
++CONFIG_SND_SOC_ADAU1701=m
+ CONFIG_SND_SOC_WM8804_I2C=m
+ CONFIG_SND_SIMPLE_CARD=m
+ CONFIG_SOUND_PRIME=m
+
+From 06f3b6b14af2f66eff3787372ca44210368eb7d7 Mon Sep 17 00:00:00 2001
+From: Martin Sperl
+Date: Tue, 28 Jul 2015 14:03:12 +0000
+Subject: [PATCH 168/184] spi: bcm2835: set up spi-mode before asserting
+ cs-gpio
+
+When using reverse polarity for clock (spi-cpol) on a device
+the clock line gets altered after chip-select has been asserted
+resulting in an additional clock beat, which confuses hardware.
+
+This did not show when using native-CS, as the same register
+is used to control cs as well as polarity, so the changes came
+into effect at the same time. Unfortunately this is not true
+with gpio-cs.
+
+To avoid this situation this patch moves the setup of polarity
+(spi-cpol and spi-cpha) outside of the chip-select into
+prepare_message, which is run prior to asserting chip-select.
+
+Also fixes resetting 3-wire mode after use of rx-mode, so that
+a 3-Wire sequence TX, RX, TX works as well (right now it runs
+TX, RX, RX instead)
+
+Reported-by: Noralf Tronnes
+Signed-off-by: Martin Sperl
+Signed-off-by: Mark Brown
+Cc: stable@vger.kernel.org
+(cherry picked from commit acace73df2c1913a526c1b41e4741a4a6704c863)
+---
+ drivers/spi/spi-bcm2835.c | 28 +++++++++++++++++++++++-----
+ 1 file changed, 23 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/spi/spi-bcm2835.c b/drivers/spi/spi-bcm2835.c
+index 338babc3..bad36c5 100644
+--- a/drivers/spi/spi-bcm2835.c
++++ b/drivers/spi/spi-bcm2835.c
+@@ -553,13 +553,11 @@ static int bcm2835_spi_transfer_one(struct spi_master *master,
+ spi_used_hz = cdiv ? (clk_hz / cdiv) : (clk_hz / 65536);
+ bcm2835_wr(bs, BCM2835_SPI_CLK, cdiv);
+
+- /* handle all the modes */
++ /* handle all the 3-wire mode */
+ if ((spi->mode & SPI_3WIRE) && (tfr->rx_buf))
+ cs |= BCM2835_SPI_CS_REN;
+- if (spi->mode & SPI_CPOL)
+- cs |= BCM2835_SPI_CS_CPOL;
+- if (spi->mode & SPI_CPHA)
+- cs |= BCM2835_SPI_CS_CPHA;
++ else
++ cs &= ~BCM2835_SPI_CS_REN;
+
+ /* for gpio_cs set dummy CS so that no HW-CS get changed
+ * we can not run this in bcm2835_spi_set_cs, as it does
+@@ -592,6 +590,25 @@ static int bcm2835_spi_transfer_one(struct spi_master *master,
+ return bcm2835_spi_transfer_one_irq(master, spi, tfr, cs);
+ }
+
++static int bcm2835_spi_prepare_message(struct spi_master *master,
++ struct spi_message *msg)
++{
++ struct spi_device *spi = msg->spi;
++ struct bcm2835_spi *bs = spi_master_get_devdata(master);
++ u32 cs = bcm2835_rd(bs, BCM2835_SPI_CS);
++
++ cs &= ~(BCM2835_SPI_CS_CPOL | BCM2835_SPI_CS_CPHA);
++
++ if (spi->mode & SPI_CPOL)
++ cs |= BCM2835_SPI_CS_CPOL;
++ if (spi->mode & SPI_CPHA)
++ cs |= BCM2835_SPI_CS_CPHA;
++
++ bcm2835_wr(bs, BCM2835_SPI_CS, cs);
++
++ return 0;
++}
++
+ static void bcm2835_spi_handle_err(struct spi_master *master,
+ struct spi_message *msg)
+ {
+@@ -768,6 +785,7 @@ static int bcm2835_spi_probe(struct platform_device *pdev)
+ master->set_cs = bcm2835_spi_set_cs;
+ master->transfer_one = bcm2835_spi_transfer_one;
+ master->handle_err = bcm2835_spi_handle_err;
++ master->prepare_message = bcm2835_spi_prepare_message;
+ master->dev.of_node = pdev->dev.of_node;
+
+ bs = spi_master_get_devdata(master);
+
+From e1b011f11feef5876783d9ff54997f9cda9e72a7 Mon Sep 17 00:00:00 2001
+From: Martin Sperl
+Date: Wed, 29 Jul 2015 07:34:10 +0000
+Subject: [PATCH 169/184] spi: bcm2835: fix overflow in calculation of transfer
+ time
+
+This resulted in the use of polling mode when other approaches
+(dma or interrupts) would have been more appropriate.
+
+Happened for transfers longer than 477 bytes.
+
+Reported-by: Noralf Tronnes
+Signed-off-by: Martin Sperl
+Signed-off-by: Mark Brown
+(cherry picked from commit 0122a5183088e3117bb9c8fbe248914efb502f3f)
+---
+ drivers/spi/spi-bcm2835.c | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/spi/spi-bcm2835.c b/drivers/spi/spi-bcm2835.c
+index bad36c5..b68991c 100644
+--- a/drivers/spi/spi-bcm2835.c
++++ b/drivers/spi/spi-bcm2835.c
+@@ -480,7 +480,7 @@ static int bcm2835_spi_transfer_one_poll(struct spi_master *master,
+ struct spi_device *spi,
+ struct spi_transfer *tfr,
+ u32 cs,
+- unsigned long xfer_time_us)
++ unsigned long long xfer_time_us)
+ {
+ struct bcm2835_spi *bs = spi_master_get_devdata(master);
+ unsigned long timeout;
+@@ -531,7 +531,8 @@ static int bcm2835_spi_transfer_one(struct spi_master *master,
+ {
+ struct bcm2835_spi *bs = spi_master_get_devdata(master);
+ unsigned long spi_hz, clk_hz, cdiv;
+- unsigned long spi_used_hz, xfer_time_us;
++ unsigned long spi_used_hz;
++ unsigned long long xfer_time_us;
+ u32 cs = bcm2835_rd(bs, BCM2835_SPI_CS);
+
+ /* set clock */
+@@ -573,9 +574,10 @@ static int bcm2835_spi_transfer_one(struct spi_master *master,
+ bs->rx_len = tfr->len;
+
+ /* calculate the estimated time in us the transfer runs */
+- xfer_time_us = tfr->len
++ xfer_time_us = (unsigned long long)tfr->len
+ * 9 /* clocks/byte - SPI-HW waits 1 clock after each byte */
+- * 1000000 / spi_used_hz;
++ * 1000000;
++ do_div(xfer_time_us, spi_used_hz);
+
+ /* for short requests run polling*/
+ if (xfer_time_us <= BCM2835_SPI_POLLING_LIMIT_US)
+
+From ced8015657540a68001e6bdb303beb3d1754e4c5 Mon Sep 17 00:00:00 2001
+From: Phil Elwell
+Date: Tue, 8 Sep 2015 15:14:50 +0100
+Subject: [PATCH 170/184] BCM270X_DT: Add SDIO overlay
+
+Enable SDIO from MMC interface via GPIOs 22-27. Includes the sdhost
+overlay to free up the MMC interface.
+---
+ arch/arm/boot/dts/overlays/Makefile | 1 +
+ arch/arm/boot/dts/overlays/README | 15 +++++++++++++++
+ arch/arm/boot/dts/overlays/sdio-overlay.dts | 29 +++++++++++++++++++++++++++++
+ 3 files changed, 45 insertions(+)
+ create mode 100644 arch/arm/boot/dts/overlays/sdio-overlay.dts
+
+diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile
+index 9b03b1f..43e9c96 100644
+--- a/arch/arm/boot/dts/overlays/Makefile
++++ b/arch/arm/boot/dts/overlays/Makefile
+@@ -44,6 +44,7 @@ dtb-$(RPI_DT_OVERLAYS) += rpi-ft5406-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += rpi-proto-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += rpi-sense-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += sdhost-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += sdio-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += spi-bcm2708-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += spi-bcm2835-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += spi-dma-overlay.dtb
+diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
+index 7e38eb3..a749ff7 100644
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -513,6 +513,21 @@ Params: overclock_50 Clock (in MHz) to use when the MMC framework
+ debug Enable debug output (default off)
+
+
++Name: sdio
++Info: Selects the bcm2835-sdhost SD/MMC driver, optionally with overclock,
++ and enables SDIO via GPIOs 22-27.
++Load: dtoverlay=sdio,=
++Params: overclock_50 Clock (in MHz) to use when the MMC framework
++ requests 50MHz
++
++ force_pio Disable DMA support (default off)
++
++ pio_limit Number of blocks above which to use DMA
++ (default 1)
++
++ debug Enable debug output (default off)
++
++
+ Name: spi-bcm2708
+ Info: Selects the bcm2708-spi SPI driver
+ Load: dtoverlay=spi-bcm2708
+diff --git a/arch/arm/boot/dts/overlays/sdio-overlay.dts b/arch/arm/boot/dts/overlays/sdio-overlay.dts
+new file mode 100644
+index 0000000..164f269
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/sdio-overlay.dts
+@@ -0,0 +1,29 @@
++/* Enable SDIO from MMC interface via GPIOs 22-27. Includes sdhost overlay. */
++
++/include/ "sdhost-overlay.dts"
++
++/{
++ compatible = "brcm,bcm2708";
++
++ fragment@3 {
++ target = <&mmc>;
++ __overlay__ {
++ compatible = "brcm,bcm2835-mmc";
++ pinctrl-names = "default";
++ pinctrl-0 = <&sdio_pins>;
++ non-removable;
++ status = "okay";
++ };
++ };
++
++ fragment@4 {
++ target = <&gpio>;
++ __overlay__ {
++ sdio_pins: sdio_pins {
++ brcm,pins = <22 23 24 25 26 27>;
++ brcm,function = <7 7 7 7 7 7>; /* ALT3 = SD1 */
++ brcm,pull = <0 2 2 2 2 2>;
++ };
++ };
++ };
++};
+
+From b0ff905303eb5003d3725a7fbfa90d3077d1301b Mon Sep 17 00:00:00 2001
+From: Luke Wren
+Date: Fri, 21 Aug 2015 23:14:48 +0100
+Subject: [PATCH 171/184] Add /dev/gpiomem device for rootless user GPIO access
+
+Signed-off-by: Luke Wren
+---
+ arch/arm/boot/dts/bcm2708.dtsi | 6 +
+ arch/arm/boot/dts/bcm2709.dtsi | 6 +
+ drivers/char/broadcom/Kconfig | 9 ++
+ drivers/char/broadcom/Makefile | 3 +
+ drivers/char/broadcom/bcm2835-gpiomem.c | 265 ++++++++++++++++++++++++++++++++
+ 5 files changed, 289 insertions(+)
+ create mode 100644 drivers/char/broadcom/bcm2835-gpiomem.c
+
+diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi
+index 0d47427..3bed0a6 100644
+--- a/arch/arm/boot/dts/bcm2708.dtsi
++++ b/arch/arm/boot/dts/bcm2708.dtsi
+@@ -15,5 +15,11 @@
+ arm-pmu {
+ compatible = "arm,arm1176-pmu";
+ };
++
++ gpiomem {
++ compatible = "brcm,bcm2835-gpiomem";
++ reg = <0x7e200000 0x1000>;
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi
+index 5e0b935..811d825 100644
+--- a/arch/arm/boot/dts/bcm2709.dtsi
++++ b/arch/arm/boot/dts/bcm2709.dtsi
+@@ -16,6 +16,12 @@
+ compatible = "arm,cortex-a7-pmu";
+ interrupts = <3 9>;
+ };
++
++ gpiomem {
++ compatible = "brcm,bcm2835-gpiomem";
++ reg = <0x7e200000 0x1000>;
++ status = "okay";
++ };
+ };
+
+ timer {
+diff --git a/drivers/char/broadcom/Kconfig b/drivers/char/broadcom/Kconfig
+index fc40846..bc2eb1e 100644
+--- a/drivers/char/broadcom/Kconfig
++++ b/drivers/char/broadcom/Kconfig
+@@ -38,3 +38,12 @@ config BCM_VC_SM
+ help
+ Support for the VC shared memory on the Broadcom reference
+ design. Uses the VCHIQ stack.
++
++config BCM2835_DEVGPIOMEM
++ tristate "/dev/gpiomem rootless GPIO access via mmap() on the BCM2835"
++ default m
++ help
++ Provides users with root-free access to the GPIO registers
++ on the 2835. Calling mmap(/dev/gpiomem) will map the GPIO
++ register page to the user's pointer.
++
+diff --git a/drivers/char/broadcom/Makefile b/drivers/char/broadcom/Makefile
+index 18171e2..664e2c4 100644
+--- a/drivers/char/broadcom/Makefile
++++ b/drivers/char/broadcom/Makefile
+@@ -2,3 +2,6 @@ obj-$(CONFIG_BCM_VC_CMA) += vc_cma/
+ obj-$(CONFIG_BCM2708_VCMEM) += vc_mem.o
+ obj-$(CONFIG_BCM_VCIO) += vcio.o
+ obj-$(CONFIG_BCM_VC_SM) += vc_sm/
++
++obj-$(CONFIG_BCM2835_DEVGPIOMEM)+= bcm2835-gpiomem.o
++
+diff --git a/drivers/char/broadcom/bcm2835-gpiomem.c b/drivers/char/broadcom/bcm2835-gpiomem.c
+new file mode 100644
+index 0000000..0085e13
+--- /dev/null
++++ b/drivers/char/broadcom/bcm2835-gpiomem.c
+@@ -0,0 +1,265 @@
++/**
++ * GPIO memory device driver
++ *
++ * Creates a chardev /dev/gpiomem which will provide user access to
++ * the BCM2835's GPIO registers when it is mmap()'d.
++ * No longer need root for user GPIO access, but without relaxing permissions
++ * on /dev/mem.
++ *
++ * Written by Luke Wren
++ * Copyright (c) 2015, Raspberry Pi (Trading) Ltd.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions, and the following disclaimer,
++ * without modification.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in the
++ * documentation and/or other materials provided with the distribution.
++ * 3. The names of the above-listed copyright holders may not be used
++ * to endorse or promote products derived from this software without
++ * specific prior written permission.
++ *
++ * ALTERNATIVELY, this software may be distributed under the terms of the
++ * GNU General Public License ("GPL") version 2, as published by the Free
++ * Software Foundation.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
++ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
++ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
++ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
++ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
++ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++ */
++
++#include
++#include
++#include
++#include
++#include
++#include
++#include
++#include
++#include
++
++#define DEVICE_NAME "bcm2835-gpiomem"
++#define DRIVER_NAME "gpiomem-bcm2835"
++#define DEVICE_MINOR 0
++
++struct bcm2835_gpiomem_instance {
++ unsigned long gpio_regs_phys;
++ struct device *dev;
++};
++
++static struct cdev bcm2835_gpiomem_cdev;
++static dev_t bcm2835_gpiomem_devid;
++static struct class *bcm2835_gpiomem_class;
++static struct device *bcm2835_gpiomem_dev;
++static struct bcm2835_gpiomem_instance *inst;
++
++
++/****************************************************************************
++*
++* GPIO mem chardev file ops
++*
++***************************************************************************/
++
++static int bcm2835_gpiomem_open(struct inode *inode, struct file *file)
++{
++ int dev = iminor(inode);
++ int ret = 0;
++
++ dev_info(inst->dev, "gpiomem device opened.");
++
++ if (dev != DEVICE_MINOR) {
++ dev_err(inst->dev, "Unknown minor device: %d", dev);
++ ret = -ENXIO;
++ }
++ return ret;
++}
++
++static int bcm2835_gpiomem_release(struct inode *inode, struct file *file)
++{
++ int dev = iminor(inode);
++ int ret = 0;
++
++ if (dev != DEVICE_MINOR) {
++ dev_err(inst->dev, "Unknown minor device %d", dev);
++ ret = -ENXIO;
++ }
++ return ret;
++}
++
++static const struct vm_operations_struct bcm2835_gpiomem_vm_ops = {
++#ifdef CONFIG_HAVE_IOREMAP_PROT
++ .access = generic_access_phys
++#endif
++};
++
++static int bcm2835_gpiomem_mmap(struct file *file, struct vm_area_struct *vma)
++{
++ /* Ignore what the user says - they're getting the GPIO regs
++ whether they like it or not! */
++ unsigned long gpio_page = inst->gpio_regs_phys >> PAGE_SHIFT;
++
++ vma->vm_page_prot = phys_mem_access_prot(file, gpio_page,
++ PAGE_SIZE,
++ vma->vm_page_prot);
++ vma->vm_ops = &bcm2835_gpiomem_vm_ops;
++ if (remap_pfn_range(vma, vma->vm_start,
++ gpio_page,
++ PAGE_SIZE,
++ vma->vm_page_prot)) {
++ return -EAGAIN;
++ }
++ return 0;
++}
++
++static const struct file_operations
++bcm2835_gpiomem_fops = {
++ .owner = THIS_MODULE,
++ .open = bcm2835_gpiomem_open,
++ .release = bcm2835_gpiomem_release,
++ .mmap = bcm2835_gpiomem_mmap,
++};
++
++
++ /****************************************************************************
++*
++* Probe and remove functions
++*
++***************************************************************************/
++
++
++static int bcm2835_gpiomem_probe(struct platform_device *pdev)
++{
++ int err;
++ void *ptr_err;
++ struct device *dev = &pdev->dev;
++ struct device_node *node = dev->of_node;
++ struct resource *ioresource;
++
++ /* Allocate buffers and instance data */
++
++ inst = kzalloc(sizeof(struct bcm2835_gpiomem_instance), GFP_KERNEL);
++
++ if (!inst) {
++ err = -ENOMEM;
++ goto failed_inst_alloc;
++ }
++
++ inst->dev = dev;
++
++ /* Create character device entries */
++
++ err = alloc_chrdev_region(&bcm2835_gpiomem_devid,
++ DEVICE_MINOR, 1, DEVICE_NAME);
++ if (err != 0) {
++ dev_err(inst->dev, "unable to allocate device number");
++ goto failed_alloc_chrdev;
++ }
++ cdev_init(&bcm2835_gpiomem_cdev, &bcm2835_gpiomem_fops);
++ bcm2835_gpiomem_cdev.owner = THIS_MODULE;
++ err = cdev_add(&bcm2835_gpiomem_cdev, bcm2835_gpiomem_devid, 1);
++ if (err != 0) {
++ dev_err(inst->dev, "unable to register device");
++ goto failed_cdev_add;
++ }
++
++ /* Create sysfs entries */
++
++ bcm2835_gpiomem_class = class_create(THIS_MODULE, DEVICE_NAME);
++ ptr_err = bcm2835_gpiomem_class;
++ if (IS_ERR(ptr_err))
++ goto failed_class_create;
++
++ bcm2835_gpiomem_dev = device_create(bcm2835_gpiomem_class, NULL,
++ bcm2835_gpiomem_devid, NULL,
++ "gpiomem");
++ ptr_err = bcm2835_gpiomem_dev;
++ if (IS_ERR(ptr_err))
++ goto failed_device_create;
++
++ /* Get address from device tree if available (*_resource() correctly
++ converts the bus address in device tree to a physical address),
++ or use hardcoded offset + BCM2708_PERI_BASE if not.
++ (In spite of its name 2708 actually seems to have the correct
++ mach-dependent value on 2709 etc, as it is defined in
++ mach-bcm270x/platform.h) */
++
++ if (node) {
++ ioresource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
++ inst->gpio_regs_phys = ioresource->start;
++ } else {
++ inst->gpio_regs_phys = GPIO_BASE;
++ }
++
++ dev_info(inst->dev, "Initialised: Registers at 0x%08lx",
++ inst->gpio_regs_phys);
++
++ return 0;
++
++failed_device_create:
++ class_destroy(bcm2835_gpiomem_class);
++failed_class_create:
++ cdev_del(&bcm2835_gpiomem_cdev);
++ err = PTR_ERR(ptr_err);
++failed_cdev_add:
++ unregister_chrdev_region(bcm2835_gpiomem_devid, 1);
++failed_alloc_chrdev:
++ kfree(inst);
++failed_inst_alloc:
++ dev_err(inst->dev, "could not load bcm2835_gpiomem");
++ return err;
++}
++
++static int bcm2835_gpiomem_remove(struct platform_device *pdev)
++{
++ struct device *dev = inst->dev;
++
++ kfree(inst);
++ device_destroy(bcm2835_gpiomem_class, bcm2835_gpiomem_devid);
++ class_destroy(bcm2835_gpiomem_class);
++ cdev_del(&bcm2835_gpiomem_cdev);
++ unregister_chrdev_region(bcm2835_gpiomem_devid, 1);
++
++ dev_info(dev, "GPIO mem driver removed - OK");
++ return 0;
++}
++
++ /****************************************************************************
++*
++* Register the driver with device tree
++*
++***************************************************************************/
++
++static const struct of_device_id bcm2835_gpiomem_of_match[] = {
++ {.compatible = "brcm,bcm2835-gpiomem",},
++ { /* sentinel */ },
++};
++
++MODULE_DEVICE_TABLE(of, bcm2835_gpiomem_of_match);
++
++static struct platform_driver bcm2835_gpiomem_driver = {
++ .probe = bcm2835_gpiomem_probe,
++ .remove = bcm2835_gpiomem_remove,
++ .driver = {
++ .name = DRIVER_NAME,
++ .owner = THIS_MODULE,
++ .of_match_table = bcm2835_gpiomem_of_match,
++ },
++};
++
++module_platform_driver(bcm2835_gpiomem_driver);
++
++MODULE_ALIAS("platform:gpiomem-bcm2835");
++MODULE_LICENSE("GPL");
++MODULE_DESCRIPTION("gpiomem driver for accessing GPIO from userspace");
++MODULE_AUTHOR("Luke Wren ");
+
+From f329efa3857552cca450f708fbd7ff1527a20358 Mon Sep 17 00:00:00 2001
+From: Jan Grulich
+Date: Mon, 24 Aug 2015 16:02:34 +0100
+Subject: [PATCH 172/184] tpa6130a2: Add headphone switch control
+
+Signed-off-by: Jan Grulich
+---
+ sound/soc/codecs/tpa6130a2.c | 29 ++++++++++++++++++++++++++---
+ 1 file changed, 26 insertions(+), 3 deletions(-)
+
+diff --git a/sound/soc/codecs/tpa6130a2.c b/sound/soc/codecs/tpa6130a2.c
+index 6fac9e0..f60ebe1c 100644
+--- a/sound/soc/codecs/tpa6130a2.c
++++ b/sound/soc/codecs/tpa6130a2.c
+@@ -4,6 +4,7 @@
+ * Copyright (C) Nokia Corporation
+ *
+ * Author: Peter Ujfalusi
++ * Modified: Jan Grulich
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+@@ -52,6 +53,8 @@ struct tpa6130a2_data {
+ enum tpa_model id;
+ };
+
++static void tpa6130a2_channel_enable(u8 channel, int enable);
++
+ static int tpa6130a2_i2c_read(int reg)
+ {
+ struct tpa6130a2_data *data;
+@@ -189,7 +192,7 @@ static int tpa6130a2_power(u8 power)
+ }
+
+ static int tpa6130a2_get_volsw(struct snd_kcontrol *kcontrol,
+- struct snd_ctl_elem_value *ucontrol)
++ struct snd_ctl_elem_value *ucontrol)
+ {
+ struct soc_mixer_control *mc =
+ (struct soc_mixer_control *)kcontrol->private_value;
+@@ -218,7 +221,7 @@ static int tpa6130a2_get_volsw(struct snd_kcontrol *kcontrol,
+ }
+
+ static int tpa6130a2_put_volsw(struct snd_kcontrol *kcontrol,
+- struct snd_ctl_elem_value *ucontrol)
++ struct snd_ctl_elem_value *ucontrol)
+ {
+ struct soc_mixer_control *mc =
+ (struct soc_mixer_control *)kcontrol->private_value;
+@@ -255,8 +258,22 @@ static int tpa6130a2_put_volsw(struct snd_kcontrol *kcontrol,
+ return 1;
+ }
+
++static int tpa6130a2_put_hp_sw(struct snd_kcontrol *kcontrol,
++ struct snd_ctl_elem_value *ucontrol)
++{
++ int enable = ucontrol->value.integer.value[0];
++ unsigned int state;
++
++ state = (tpa6130a2_read(TPA6130A2_REG_VOL_MUTE) & 0x80) == 0;
++ if (state == enable)
++ return 0; /* No change */
++
++ tpa6130a2_channel_enable(TPA6130A2_HP_EN_R | TPA6130A2_HP_EN_L, enable);
++ return 1; /* Changed */
++}
++
+ /*
+- * TPA6130 volume. From -59.5 to 4 dB with increasing step size when going
++ * TPA6130 volume. From -59.5 to +4.0 dB with increasing step size when going
+ * down in gain.
+ */
+ static const unsigned int tpa6130_tlv[] = {
+@@ -278,6 +295,9 @@ static const struct snd_kcontrol_new tpa6130a2_controls[] = {
+ TPA6130A2_REG_VOL_MUTE, 0, 0x3f, 0,
+ tpa6130a2_get_volsw, tpa6130a2_put_volsw,
+ tpa6130_tlv),
++ SOC_SINGLE_EXT("TPA6130A2 Headphone Playback Switch",
++ TPA6130A2_REG_VOL_MUTE, 7, 1, 1,
++ tpa6130a2_get_volsw, tpa6130a2_put_hp_sw),
+ };
+
+ static const unsigned int tpa6140_tlv[] = {
+@@ -292,6 +312,9 @@ static const struct snd_kcontrol_new tpa6140a2_controls[] = {
+ TPA6130A2_REG_VOL_MUTE, 1, 0x1f, 0,
+ tpa6130a2_get_volsw, tpa6130a2_put_volsw,
+ tpa6140_tlv),
++ SOC_SINGLE_EXT("TPA6140A2 Headphone Playback Switch",
++ TPA6130A2_REG_VOL_MUTE, 7, 1, 1,
++ tpa6130a2_get_volsw, tpa6130a2_put_hp_sw),
+ };
+
+ /*
+
+From 64c5d9fb0fc6960c05d92ec1131d54db465646db Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
+Date: Sat, 11 Jul 2015 18:48:10 +0200
+Subject: [PATCH 173/184] staging: fbtft: Add reset to fbtft_init_display_dt()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When an init sequence is present in the Device Tree,
+fbtft_init_display_dt() is used to initialize the display.
+Add missing reset function call and activation of
+chip select for parallel bus.
+
+Signed-off-by: Noralf Trønnes
+---
+ drivers/staging/fbtft/fbtft-core.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c
+index 53b748b..4f165d3 100644
+--- a/drivers/staging/fbtft/fbtft-core.c
++++ b/drivers/staging/fbtft/fbtft-core.c
+@@ -1074,6 +1074,11 @@ static int fbtft_init_display_dt(struct fbtft_par *par)
+ p = of_prop_next_u32(prop, NULL, &val);
+ if (!p)
+ return -EINVAL;
++
++ par->fbtftops.reset(par);
++ if (par->gpio.cs != -1)
++ gpio_set_value(par->gpio.cs, 0); /* Activate chip */
++
+ while (p) {
+ if (val & FBTFT_OF_INIT_CMD) {
+ val &= 0xFFFF;
+
+From 9ee9c962e47ace5c2d3114eba2e9fb7f9380a70c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
+Date: Sun, 19 Jul 2015 18:57:06 +0200
+Subject: [PATCH 174/184] BCM270X_DT: mz61581: Revert to spi-bcm2708
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The MZ61581 display does not work with spi-bcm2835 and software
+chip select. It works before the commit:
+spi: bcm2835: transform native-cs to gpio-cs on first spi_setup
+
+Revert to spi-bcm2708 until the cause has been detected and the
+issue resolved.
+
+Signed-off-by: Noralf Trønnes
+---
+ arch/arm/boot/dts/overlays/mz61581-overlay.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/boot/dts/overlays/mz61581-overlay.dts b/arch/arm/boot/dts/overlays/mz61581-overlay.dts
+index c06fe12..f674a66 100644
+--- a/arch/arm/boot/dts/overlays/mz61581-overlay.dts
++++ b/arch/arm/boot/dts/overlays/mz61581-overlay.dts
+@@ -12,6 +12,8 @@
+ fragment@0 {
+ target = <&spi0>;
+ __overlay__ {
++ /* does not work with spi-bcm2835 using software chip selects */
++ compatible = "brcm,bcm2708-spi";
+ status = "okay";
+
+ spidev@0{
+
+From 20833437fd604e72ba715d51c11dd6de8b8fef52 Mon Sep 17 00:00:00 2001
+From: Colin Ian King
+Date: Tue, 1 Sep 2015 16:52:34 +0000
+Subject: [PATCH 175/184] vchiq: fix NULL pointer dereference when closing
+ driver
+
+The following code run as root will cause a null pointer dereference oops:
+
+ int fd = open("/dev/vc-cma", O_RDONLY);
+ if (fd < 0)
+ err(1, "open failed");
+ (void)close(fd);
+
+[ 1704.877721] Unable to handle kernel NULL pointer dereference at virtual address 00000000
+[ 1704.877725] pgd = b899c000
+[ 1704.877736] [00000000] *pgd=37fab831, *pte=00000000, *ppte=00000000
+[ 1704.877748] Internal error: Oops: 817 [#1] PREEMPT SMP ARM
+[ 1704.877765] Modules linked in: evdev i2c_bcm2708 uio_pdrv_genirq uio
+[ 1704.877774] CPU: 2 PID: 3656 Comm: stress-ng-fstat Not tainted 3.19.1-12-generic-bcm2709 #12-Ubuntu
+[ 1704.877777] Hardware name: BCM2709
+[ 1704.877783] task: b8ab9b00 ti: b7e68000 task.ti: b7e68000
+[ 1704.877798] PC is at __down_interruptible+0x50/0xec
+[ 1704.877806] LR is at down_interruptible+0x5c/0x68
+[ 1704.877813] pc : [<80630ee8>] lr : [<800704b0>] psr: 60080093
+sp : b7e69e50 ip : b7e69e88 fp : b7e69e84
+[ 1704.877817] r10: b88123c8 r9 : 00000010 r8 : 00000001
+[ 1704.877822] r7 : b8ab9b00 r6 : 7fffffff r5 : 80a1cc34 r4 : 80a1cc34
+[ 1704.877826] r3 : b7e69e50 r2 : 00000000 r1 : 00000000 r0 : 80a1cc34
+[ 1704.877833] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user
+[ 1704.877838] Control: 10c5387d Table: 3899c06a DAC: 00000015
+[ 1704.877843] Process do-oops (pid: 3656, stack limit = 0xb7e68238)
+[ 1704.877848] Stack: (0xb7e69e50 to 0xb7e6a000)
+[ 1704.877856] 9e40: 80a1cc3c 00000000 00000010 b88123c8
+[ 1704.877865] 9e60: b7e69e84 80a1cc34 fff9fee9 ffffffff b7e68000 00000009 b7e69ea4 b7e69e88
+[ 1704.877874] 9e80: 800704b0 80630ea4 fff9fee9 60080013 80a1cc28 fff9fee9 b7e69edc b7e69ea8
+[ 1704.877884] 9ea0: 8040f558 80070460 fff9fee9 ffffffff 00000000 00000000 00000009 80a1cb7c
+[ 1704.877893] 9ec0: 00000000 80a1cb7c 00000000 00000010 b7e69ef4 b7e69ee0 803e1ba4 8040f514
+[ 1704.877902] 9ee0: 00000e48 80a1cb7c b7e69f14 b7e69ef8 803e1c9c 803e1b74 b88123c0 b92acb18
+[ 1704.877911] 9f00: b8812790 b8d815d8 b7e69f24 b7e69f18 803e2250 803e1bc8 b7e69f5c b7e69f28
+[ 1704.877921] 9f20: 80167bac 803e222c 00000000 00000000 b7e69f54 b8ab9ffc 00000000 8098c794
+[ 1704.877930] 9f40: b8ab9b00 8000efc4 b7e68000 00000000 b7e69f6c b7e69f60 80167d6c 80167b28
+[ 1704.877939] 9f60: b7e69f8c b7e69f70 80047d38 80167d60 b7e68000 b7e68010 8000efc4 b7e69fb0
+[ 1704.877949] 9f80: b7e69fac b7e69f90 80012820 80047c84 01155490 011549a8 00000001 00000006
+[ 1704.877957] 9fa0: 00000000 b7e69fb0 8000ee5c 80012790 00000000 353d8c0f 7efc4308 00000000
+[ 1704.877966] 9fc0: 01155490 011549a8 00000001 00000006 00000000 00000000 76cf3ba0 00000003
+[ 1704.877975] 9fe0: 00000000 7efc42e4 0002272f 76e2ed66 60080030 00000003 00000000 00000000
+[ 1704.877998] [<80630ee8>] (__down_interruptible) from [<800704b0>] (down_interruptible+0x5c/0x68)
+[ 1704.878015] [<800704b0>] (down_interruptible) from [<8040f558>] (vchiu_queue_push+0x50/0xd8)
+[ 1704.878032] [<8040f558>] (vchiu_queue_push) from [<803e1ba4>] (send_worker_msg+0x3c/0x54)
+[ 1704.878045] [<803e1ba4>] (send_worker_msg) from [<803e1c9c>] (vc_cma_set_reserve+0xe0/0x1c4)
+[ 1704.878057] [<803e1c9c>] (vc_cma_set_reserve) from [<803e2250>] (vc_cma_release+0x30/0x38)
+[ 1704.878069] [<803e2250>] (vc_cma_release) from [<80167bac>] (__fput+0x90/0x1e0)
+[ 1704.878082] [<80167bac>] (__fput) from [<80167d6c>] (____fput+0x18/0x1c)
+[ 1704.878094] [<80167d6c>] (____fput) from [<80047d38>] (task_work_run+0xc0/0xf8)
+[ 1704.878109] [<80047d38>] (task_work_run) from [<80012820>] (do_work_pending+0x9c/0xc4)
+[ 1704.878123] [<80012820>] (do_work_pending) from [<8000ee5c>] (work_pending+0xc/0x20)
+[ 1704.878133] Code: e50b1034 e3a01000 e50b2030 e580300c (e5823000)
+
+..the fix is to ensure that we have actually initialized the queue before we attempt
+to push any items onto it. This occurs if we do an open() followed by a close() without
+any activity in between.
+
+Signed-off-by: Colin Ian King
+---
+ drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c | 4 ++++
+ drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h | 1 +
+ 2 files changed, 5 insertions(+)
+
+diff --git a/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c b/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c
+index 05e7979..384acb8 100644
+--- a/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c
++++ b/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c
+@@ -46,6 +46,7 @@ int vchiu_queue_init(VCHIU_QUEUE_T *queue, int size)
+ queue->size = size;
+ queue->read = 0;
+ queue->write = 0;
++ queue->initialized = 1;
+
+ sema_init(&queue->pop, 0);
+ sema_init(&queue->push, 0);
+@@ -76,6 +77,9 @@ int vchiu_queue_is_full(VCHIU_QUEUE_T *queue)
+
+ void vchiu_queue_push(VCHIU_QUEUE_T *queue, VCHIQ_HEADER_T *header)
+ {
++ if (!queue->initialized)
++ return;
++
+ while (queue->write == queue->read + queue->size) {
+ if (down_interruptible(&queue->pop) != 0) {
+ flush_signals(current);
+diff --git a/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h b/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h
+index f4d0b66..4055d4b 100644
+--- a/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h
++++ b/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h
+@@ -60,6 +60,7 @@ typedef struct {
+ int size;
+ int read;
+ int write;
++ int initialized;
+
+ struct semaphore pop;
+ struct semaphore push;
+
+From 020b3c7b02ec04895dc499d6b6851e7d4ba92194 Mon Sep 17 00:00:00 2001
+From: Colin Ian King
+Date: Wed, 2 Sep 2015 07:13:17 -0400
+Subject: [PATCH 176/184] bcm2708_fb: remove redundant code as detected by
+ static analysis
+
+static analysis with cppcheck detected some redundant code which
+should probably be removed:
+
+[drivers/video/fbdev/bcm2708_fb.c:269]: (style) Variable 'yres'
+ is assigned a value that is never used.
+
+Signed-off-by: Colin Ian King
+---
+ drivers/video/fbdev/bcm2708_fb.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/drivers/video/fbdev/bcm2708_fb.c b/drivers/video/fbdev/bcm2708_fb.c
+index 06a96d16..fed0672 100644
+--- a/drivers/video/fbdev/bcm2708_fb.c
++++ b/drivers/video/fbdev/bcm2708_fb.c
+@@ -263,12 +263,6 @@ static int bcm2708_fb_check_var(struct fb_var_screeninfo *var,
+ if (var->yoffset > var->yres_virtual - var->yres)
+ var->yoffset = var->yres_virtual - var->yres - 1;
+
+- yres = var->yres;
+- if (var->vmode & FB_VMODE_DOUBLE)
+- yres *= 2;
+- else if (var->vmode & FB_VMODE_INTERLACED)
+- yres = (yres + 1) / 2;
+-
+ return 0;
+ }
+
+
+From 51a3a0c4969b782510a42c15d326b622174f171b Mon Sep 17 00:00:00 2001
+From: Colin Ian King
+Date: Wed, 2 Sep 2015 07:15:38 -0400
+Subject: [PATCH 177/184] bcm2708_fb: remove unnecessary initialization of
+ result
+
+static analysis by cppcheck detected an unnecessary initialization
+of variable 'result' which is re-assigned almost immediately after
+the initialization. Remove the redundant initialization.
+
+[drivers/video/fbdev/bcm2708_fb.c:406]: (performance) Variable
+ 'result' is reassigned a value before the old one has been used.
+
+Signed-off-by: Colin Ian King
+---
+ drivers/video/fbdev/bcm2708_fb.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/video/fbdev/bcm2708_fb.c b/drivers/video/fbdev/bcm2708_fb.c
+index fed0672..0f62d76 100644
+--- a/drivers/video/fbdev/bcm2708_fb.c
++++ b/drivers/video/fbdev/bcm2708_fb.c
+@@ -420,7 +420,7 @@ static int bcm2708_fb_blank(int blank_mode, struct fb_info *info)
+
+ static int bcm2708_fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
+ {
+- s32 result = -1;
++ s32 result;
+ info->var.xoffset = var->xoffset;
+ info->var.yoffset = var->yoffset;
+ result = bcm2708_fb_set_par(info);
+
+From 1026505b7b2b504815271e8808a47ebb41fe48c3 Mon Sep 17 00:00:00 2001
+From: Colin Ian King
+Date: Wed, 2 Sep 2015 07:27:36 -0400
+Subject: [PATCH 178/184] vcsm: increment res_stats MAP_FAIL stats before we
+ potentially release the resource
+
+resource can be kfree'd when the reference count is zero, so we should
+not bump the res_stats of the resource after the vmcs_sm_release_resource
+call since the resource may have been kfree'd by this call. Instead, bump
+the stats before we call vmcs_sm_release_resource to avoid a potential
+NULL pointer derefernce.
+
+Bug found using cppcheck static analysis:
+
+[drivers/char/broadcom/vc_sm/vmcs_sm.c:1373]: (error) Dereferencing
+ 'resource' after it is deallocated / released
+
+Signed-off-by: Colin Ian King
+---
+ drivers/char/broadcom/vc_sm/vmcs_sm.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/char/broadcom/vc_sm/vmcs_sm.c b/drivers/char/broadcom/vc_sm/vmcs_sm.c
+index 0bfb42e..b62a3b2 100644
+--- a/drivers/char/broadcom/vc_sm/vmcs_sm.c
++++ b/drivers/char/broadcom/vc_sm/vmcs_sm.c
+@@ -1368,8 +1368,8 @@ static int vc_sm_mmap(struct file *file, struct vm_area_struct *vma)
+ return 0;
+
+ error:
+- vmcs_sm_release_resource(resource, 0);
+ resource->res_stats[MAP_FAIL]++;
++ vmcs_sm_release_resource(resource, 0);
+ return ret;
+ }
+
+
+From 005154797ae52cc7503554b8d35d156eefded00c Mon Sep 17 00:00:00 2001
+From: Colin Ian King
+Date: Wed, 2 Sep 2015 07:33:39 -0400
+Subject: [PATCH 179/184] bcm2835: camera: check for scene not being found
+
+static analysis by cppcheck detected some potential NULL pointer
+dereference issues:
+
+[drivers/media/platform/bcm2835/controls.c:854]: (error) Possible null
+ pointer dereference: scene
+ (and lines 858, 859 too)
+
+it is possible that scene is not found because of an invalue ctrl->val
+and is therefore NULL and hence causing a null pointer dereference.
+
+Signed-off-by: Colin Ian King
+---
+ drivers/media/platform/bcm2835/controls.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/drivers/media/platform/bcm2835/controls.c b/drivers/media/platform/bcm2835/controls.c
+index 3017b94..f9f903f 100644
+--- a/drivers/media/platform/bcm2835/controls.c
++++ b/drivers/media/platform/bcm2835/controls.c
+@@ -845,6 +845,8 @@ static int ctrl_set_scene_mode(struct bm2835_mmal_dev *dev,
+ break;
+ }
+ }
++ if (!scene)
++ return -EINVAL;
+ if (i >= ARRAY_SIZE(scene_configs))
+ return -EINVAL;
+
+
+From 7b88107888ad75072ded5ec3dfbf0cb6ceec1c1d Mon Sep 17 00:00:00 2001
+From: Colin Ian King
+Date: Wed, 2 Sep 2015 07:47:51 -0400
+Subject: [PATCH 180/184] bcm2835: memcpy port data to m rather than rmsg
+
+static analysis by cppcheck detected a memcpy to rmsg which is
+not actually initialized at that point. The memcpy should be copying
+to variable m instead.
+
+Signed-off-by: Colin Ian King
+---
+ drivers/media/platform/bcm2835/mmal-vchiq.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/media/platform/bcm2835/mmal-vchiq.c b/drivers/media/platform/bcm2835/mmal-vchiq.c
+index 76f249e..7813225 100644
+--- a/drivers/media/platform/bcm2835/mmal-vchiq.c
++++ b/drivers/media/platform/bcm2835/mmal-vchiq.c
+@@ -851,7 +851,7 @@ static int port_info_set(struct vchiq_mmal_instance *instance,
+ sizeof(union mmal_es_specific_format));
+
+ m.u.port_info_set.format.extradata_size = port->format.extradata_size;
+- memcpy(rmsg->u.port_info_set.extradata, port->format.extradata,
++ memcpy(&m.u.port_info_set.extradata, port->format.extradata,
+ port->format.extradata_size);
+
+ ret = send_synchronous_mmal_msg(instance, &m,
+
+From 2a8c0025020895de45b699178d09d7dd3987f694 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
+Date: Sun, 13 Sep 2015 15:54:28 +0200
+Subject: [PATCH 181/184] Revert "BCM270X_DT: mz61581: Revert to spi-bcm2708"
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This reverts commit 1820cd05d93b2d465d1616202772efe5bf0d11fe.
+
+The spi-bcm2835 driver has been fixed, so now we can use it again.
+
+Signed-off-by: Noralf Trønnes
+---
+ arch/arm/boot/dts/overlays/mz61581-overlay.dts | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/overlays/mz61581-overlay.dts b/arch/arm/boot/dts/overlays/mz61581-overlay.dts
+index f674a66..c06fe12 100644
+--- a/arch/arm/boot/dts/overlays/mz61581-overlay.dts
++++ b/arch/arm/boot/dts/overlays/mz61581-overlay.dts
+@@ -12,8 +12,6 @@
+ fragment@0 {
+ target = <&spi0>;
+ __overlay__ {
+- /* does not work with spi-bcm2835 using software chip selects */
+- compatible = "brcm,bcm2708-spi";
+ status = "okay";
+
+ spidev@0{
+
+From 5893b0be5d790411fbc1afc16b92bc9be59144a1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
+Date: Sun, 13 Sep 2015 17:17:14 +0200
+Subject: [PATCH 182/184] BCM270X_DT: mz61581: Set txbuflen to 32k
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Because of the spi dma mapping/engine overhead with spi-bcm2835,
+txbuflen has to be increased from 4096 to 32768 to maximize
+throughput (11MB/s at 128MHz).
+
+Signed-off-by: Noralf Trønnes
+---
+ arch/arm/boot/dts/overlays/README | 2 ++
+ arch/arm/boot/dts/overlays/mz61581-overlay.dts | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
+index a749ff7..0aa5aa1 100644
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -368,6 +368,8 @@ Params: speed Display SPI bus speed
+
+ fps Delay between frame updates
+
++ txbuflen Transmit buffer length (default 32768)
++
+ debug Debug output level {0-7}
+
+ xohms Touchpanel sensitivity (X-plate resistance)
+diff --git a/arch/arm/boot/dts/overlays/mz61581-overlay.dts b/arch/arm/boot/dts/overlays/mz61581-overlay.dts
+index c06fe12..9242a6e 100644
+--- a/arch/arm/boot/dts/overlays/mz61581-overlay.dts
++++ b/arch/arm/boot/dts/overlays/mz61581-overlay.dts
+@@ -57,6 +57,7 @@
+ bgr;
+ fps = <30>;
+ buswidth = <8>;
++ txbuflen = <32768>;
+
+ reset-gpios = <&gpio 15 0>;
+ dc-gpios = <&gpio 25 0>;
+@@ -103,6 +104,7 @@
+ speed = <&mz61581>, "spi-max-frequency:0";
+ rotate = <&mz61581>, "rotate:0";
+ fps = <&mz61581>, "fps:0";
++ txbuflen = <&mz61581>, "txbuflen:0";
+ debug = <&mz61581>, "debug:0";
+ xohms = <&mz61581_ts>,"ti,x-plate-ohms;0";
+ };
+
+From a137fc76d8742832a01e087f05115811727d310b Mon Sep 17 00:00:00 2001
+From: Phil Elwell
+Date: Fri, 11 Sep 2015 12:10:15 +0100
+Subject: [PATCH 183/184] bcm2835-mmc: Don't overwrite MMC capabilities from DT
+
+---
+ drivers/mmc/host/bcm2835-mmc.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c
+index b7c4883..164bfad 100644
+--- a/drivers/mmc/host/bcm2835-mmc.c
++++ b/drivers/mmc/host/bcm2835-mmc.c
+@@ -1327,8 +1327,9 @@ static int bcm2835_mmc_add_host(struct bcm2835_host *host)
+ mmc->max_busy_timeout = (1 << 27) / host->timeout_clk;
+ #endif
+ /* host controller capabilities */
+- mmc->caps = MMC_CAP_CMD23 | MMC_CAP_ERASE | MMC_CAP_NEEDS_POLL | MMC_CAP_SDIO_IRQ |
+- MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED | MMC_CAP_4_BIT_DATA;
++ mmc->caps |= MMC_CAP_CMD23 | MMC_CAP_ERASE | MMC_CAP_NEEDS_POLL |
++ MMC_CAP_SDIO_IRQ | MMC_CAP_SD_HIGHSPEED |
++ MMC_CAP_MMC_HIGHSPEED | MMC_CAP_4_BIT_DATA;
+
+ host->flags = SDHCI_AUTO_CMD23;
+
+
+From 48dfdc5eae4b84ea43ae068a733313a5f557a70b Mon Sep 17 00:00:00 2001
+From: Phil Elwell
+Date: Fri, 11 Sep 2015 09:14:01 +0100
+Subject: [PATCH 184/184] BCM270X_DT: Use fixed-factor-clock for uart1
+
+The BCM2835 mini-UART is almost 8250-compatible, but there is
+a factor-of-two difference in the clock divider for the baud rate.
+The standard 8250 driver can be used unmodified provided we lie to it
+about the clock frequency, pretending it is double the actual value.
+The mini-UART block shares the core clock, and the current firmware
+uses a DT-parameter to update the clock-frequency property. Although it
+works, this isn't ideal because it exposes the firmware to a driver
+problem.
+
+This patch uses the fixed-factor-clock module to create a clock that is
+always twice the frequency of the core clock. (N.B. These "fixed" clocks
+just describe an existing clock, rather than changing any hardware
+settings.)
+---
+ arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 1 -
+ arch/arm/boot/dts/bcm2708-rpi-b.dts | 1 -
+ arch/arm/boot/dts/bcm2708-rpi-cm.dts | 1 -
+ arch/arm/boot/dts/bcm2708_common.dtsi | 10 +++++++++-
+ arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 1 -
+ 5 files changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts
+index 3ad2e0d..e3ae8e6 100644
+--- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts
++++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts
+@@ -103,7 +103,6 @@
+ __overrides__ {
+ uart0 = <&uart0>,"status";
+ uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
+- uart1_clkrate = <&uart1>,"clock-frequency:0";
+ i2s = <&i2s>,"status";
+ spi = <&spi0>,"status";
+ i2c0 = <&i2c0>,"status";
+diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts
+index e2b1491..2adc248 100644
+--- a/arch/arm/boot/dts/bcm2708-rpi-b.dts
++++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts
+@@ -97,7 +97,6 @@
+ __overrides__ {
+ uart0 = <&uart0>,"status";
+ uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
+- uart1_clkrate = <&uart1>,"clock-frequency:0";
+ i2s = <&i2s>,"status";
+ spi = <&spi0>,"status";
+ i2c0 = <&i2c0>,"status";
+diff --git a/arch/arm/boot/dts/bcm2708-rpi-cm.dts b/arch/arm/boot/dts/bcm2708-rpi-cm.dts
+index 96d8b97..bddc369 100755
+--- a/arch/arm/boot/dts/bcm2708-rpi-cm.dts
++++ b/arch/arm/boot/dts/bcm2708-rpi-cm.dts
+@@ -79,7 +79,6 @@
+ __overrides__ {
+ uart0 = <&uart0>,"status";
+ uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
+- uart1_clkrate = <&uart1>,"clock-frequency:0";
+ i2s = <&i2s>,"status";
+ spi = <&spi0>,"status";
+ i2c0 = <&i2c0>,"status";
+diff --git a/arch/arm/boot/dts/bcm2708_common.dtsi b/arch/arm/boot/dts/bcm2708_common.dtsi
+index f096f45..4d1cc67 100644
+--- a/arch/arm/boot/dts/bcm2708_common.dtsi
++++ b/arch/arm/boot/dts/bcm2708_common.dtsi
+@@ -165,7 +165,7 @@
+ compatible = "brcm,bcm2835-aux-uart", "ns16550";
+ reg = <0x7e215040 0x40>;
+ interrupts = <1 29>;
+- clock-frequency = <500000000>;
++ clocks = <&clk_uart1>;
+ reg-shift = <2>;
+ no-loopback-test;
+ status = "disabled";
+@@ -294,6 +294,14 @@
+ clock-output-names = "pwm";
+ clock-frequency = <100000000>;
+ };
++
++ clk_uart1: clock@6 {
++ compatible = "fixed-factor-clock";
++ clocks = <&clk_core>;
++ #clock-cells = <0>;
++ clock-div = <1>;
++ clock-mult = <2>;
++ };
+ };
+
+ __overrides__ {
+diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts
+index f25f0a2..76d44a2 100644
+--- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts
++++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts
+@@ -103,7 +103,6 @@
+ __overrides__ {
+ uart0 = <&uart0>,"status";
+ uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
+- uart1_clkrate = <&uart1>,"clock-frequency:0";
+ i2s = <&i2s>,"status";
+ spi = <&spi0>,"status";
+ i2c0 = <&i2c0>,"status";
diff --git a/projects/RPi/patches/linux/linux-02-RPi_support_buildfix.patch b/projects/RPi/patches/linux/linux-02-RPi_support_buildfix.patch
deleted file mode 100644
index 9da026f3cf..0000000000
--- a/projects/RPi/patches/linux/linux-02-RPi_support_buildfix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/drivers/spi/spi-bcm2835.c 2015-08-18 01:31:02.424153151 +0100
-+++ b/drivers/spi/spi-bcm2835.c 2015-08-18 01:30:50.860074902 +0100
-@@ -592,7 +592,7 @@
- return bcm2835_spi_transfer_one_irq(master, spi, tfr, cs);
- }
-
--#if 0
-+#if 1
- static void bcm2835_spi_handle_err(struct spi_master *master,
- struct spi_message *msg)
- {
diff --git a/projects/RPi2/filesystem/usr/lib/systemd/system/serial-console.service b/projects/RPi2/filesystem/usr/lib/systemd/system/serial-console.service
new file mode 100644
index 0000000000..d70e3df75f
--- /dev/null
+++ b/projects/RPi2/filesystem/usr/lib/systemd/system/serial-console.service
@@ -0,0 +1,21 @@
+[Unit]
+Description=Debug Shell on /dev/console
+DefaultDependencies=no
+ConditionKernelCommandLine=console
+
+[Service]
+WorkingDirectory=/storage
+ExecStart=/bin/sh -c '. /etc/profile; exec /bin/sh'
+Restart=always
+RestartSec=0
+StandardInput=tty
+TTYPath=/dev/console
+TTYReset=yes
+TTYVHangup=yes
+KillMode=process
+IgnoreSIGPIPE=no
+# bash ignores SIGTERM
+KillSignal=SIGHUP
+
+[Install]
+WantedBy=sysinit.target
diff --git a/projects/RPi2/linux/linux.arm.conf b/projects/RPi2/linux/linux.arm.conf
index 5fbb67d7d2..0434f25a8d 100644
--- a/projects/RPi2/linux/linux.arm.conf
+++ b/projects/RPi2/linux/linux.arm.conf
@@ -1438,6 +1438,7 @@ CONFIG_BCM_VC_CMA=y
CONFIG_BCM2708_VCMEM=y
CONFIG_BCM_VCIO=y
CONFIG_BCM_VC_SM=y
+CONFIG_BCM2835_DEVGPIOMEM=m
# CONFIG_XILLYBUS is not set
#
@@ -2434,6 +2435,7 @@ CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP=m
CONFIG_SND_BCM2708_SOC_RPI_DAC=m
CONFIG_SND_BCM2708_SOC_RPI_PROTO=m
CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m
+CONFIG_SND_BCM2708_SOC_RASPIDAC3=m
# CONFIG_SND_DESIGNWARE_I2S is not set
#
@@ -2518,7 +2520,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8903 is not set
# CONFIG_SND_SOC_WM8962 is not set
# CONFIG_SND_SOC_WM8978 is not set
-# CONFIG_SND_SOC_TPA6130A2 is not set
+CONFIG_SND_SOC_TPA6130A2=m
# CONFIG_SND_SIMPLE_CARD is not set
# CONFIG_SOUND_PRIME is not set
CONFIG_AC97_BUS=m
diff --git a/projects/RPi2/options b/projects/RPi2/options
index 19fb347653..2a67bda569 100644
--- a/projects/RPi2/options
+++ b/projects/RPi2/options
@@ -149,3 +149,8 @@
# Space separated list is supported,
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
ADDITIONAL_DRIVERS="$ADDITIONAL_DRIVERS"
+
+ # set up serial console when building a development image
+ if [ "$DEVEL_VERSION" = "devel" ] ; then
+ EXTRA_CMDLINE="console=ttyAMA0,115200"
+ fi
diff --git a/projects/RPi2/patches/linux/linux-01-RPi_support.patch b/projects/RPi2/patches/linux/linux-01-RPi_support.patch
index 888195510c..8bef3a7273 100644
--- a/projects/RPi2/patches/linux/linux-01-RPi_support.patch
+++ b/projects/RPi2/patches/linux/linux-01-RPi_support.patch
@@ -1,7 +1,7 @@
-From 63b738ea521e2a159ecef0509b605121a18998bb Mon Sep 17 00:00:00 2001
+From bc7d015ceaa36adc088675b0cdd3a7df05dfd9ed Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Sun, 12 May 2013 12:24:19 +0100
-Subject: [PATCH 001/162] Main bcm2708/bcm2709 linux port
+Subject: [PATCH 001/184] Main bcm2708/bcm2709 linux port
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -6908,10 +6908,10 @@ index 06d890a..30d96e8 100644
ENTRY(cpu_v6_dcache_clean_area)
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
-index 3d1054f..7615bbf 100644
+index 7911f14..dc287c0 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
-@@ -456,6 +456,7 @@ __v7_setup:
+@@ -460,6 +460,7 @@ __v7_setup_cont:
orr r0, r0, r6 @ set them
THUMB( orr r0, r0, #1 << 30 ) @ Thumb exceptions
ret lr @ return to head.S:__ret
@@ -7002,10 +7002,10 @@ index b5bedae..b0258e8 100644
mmc_pm_flag_t pm_caps; /* supported pm features */
-From 4b5a7293901e67cc3c674ba6f3677a0862d0b3f8 Mon Sep 17 00:00:00 2001
+From 52397f48b515f888ad61b3bfb16fea22e5b83cad Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 8 Oct 2014 18:50:05 +0100
-Subject: [PATCH 002/162] Add bcm2708_gpio driver
+Subject: [PATCH 002/184] Add bcm2708_gpio driver
Signed-off-by: popcornmix
@@ -7635,10 +7635,10 @@ index 0000000..fb69624
+
+#endif
-From eca451f7751e025cc7017f2c654fd6763cfa4ce0 Mon Sep 17 00:00:00 2001
+From 4e831e4d013b83364e41b463cf77c7acf4b454b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?=
Date: Fri, 1 May 2015 19:11:03 +0200
-Subject: [PATCH 003/162] mailbox: bcm2708: Add bcm2708-vcio
+Subject: [PATCH 003/184] mailbox: bcm2708: Add bcm2708-vcio
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -8269,10 +8269,10 @@ index 0000000..cc284ed
+
+#endif
-From f8878549c65e145ef2930571af6bd565da69e49c Mon Sep 17 00:00:00 2001
+From 7429b1db539759f0586f7e12c9332915477faf86 Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 1 May 2013 19:46:17 +0100
-Subject: [PATCH 004/162] Add dwc_otg driver
+Subject: [PATCH 004/184] Add dwc_otg driver
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -69546,10 +69546,10 @@ index 0000000..cdc9963
+test_main();
+0;
-From b991965e5113586428c0bb167cea50ef04157ff5 Mon Sep 17 00:00:00 2001
+From fbad81377923fa23914e15a8bab283b79293618f Mon Sep 17 00:00:00 2001
From: popcornmix
Date: Wed, 1 May 2013 19:54:32 +0100
-Subject: [PATCH 005/162] bcm2708 watchdog driver
+Subject: [PATCH 005/184] bcm2708 watchdog driver
Signed-off-by: popcornmix