[OpenWrt-Devel] [RFC 3/4] brcm2708: update linux 4.4 patches to latest version

Álvaro Fernández Rojas noltari at gmail.com
Mon Feb 29 15:08:09 EST 2016


As usual these patches were extracted from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.4.y

Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
 target/linux/brcm2708/bcm2708/config-4.4           |   4 +-
 target/linux/brcm2708/bcm2709/config-4.4           |   4 +-
 target/linux/brcm2708/modules.mk                   |  19 +
 ...0001-smsx95xx-fix-crimes-against-truesize.patch |   4 +-
 ...02-smsc95xx-Disable-turbo-mode-by-default.patch |   4 +-
 ...around-for-issue-where-dirty-page-count-g.patch |   4 +-
 .../0004-BCM2835_DT-Fix-I2S-register-map.patch     |   4 +-
 ...-Prevent-spurious-interrupts-and-trap-the.patch |   4 +-
 .../0006-irqchip-bcm2835-Add-FIQ-support.patch     |   4 +-
 ...-irqchip-irq-bcm2835-Add-2836-FIQ-support.patch |   4 +-
 ...erial-8250-Don-t-crash-when-nr_uarts-is-0.patch |   4 +-
 ...2835-Set-base-to-0-give-expected-gpio-num.patch |   4 +-
 ...2835-Fix-interrupt-handling-for-GPIOs-28-.patch |   4 +-
 ...2835-Only-request-the-interrupts-listed-i.patch |   4 +-
 ...cm2835-Support-pin-groups-other-than-7-11.patch |   4 +-
 ...RM-bcm2835-Set-Serial-number-and-Revision.patch |   4 +-
 ...-get-base-address-for-DMA-from-devicetree.patch |   4 +-
 ...-add-24bit-support-update-bclk_ratio-to-m.patch |   4 +-
 ...s-setup-clock-only-if-CPU-is-clock-master.patch |   4 +-
 ...835-i2s-Eliminate-debugfs-directory-error.patch |   4 +-
 .../0018-bcm2835-i2s-Register-PCM-device.patch     |   4 +-
 ...i2s-Enable-MMAP-support-via-a-DT-property.patch |   4 +-
 ...0-dmaengine-bcm2835-Add-slave-dma-support.patch |   4 +-
 ...ine-bcm2835-set-residue_granularity-field.patch |   4 +-
 ...cm2835-Load-driver-early-and-support-lega.patch |   4 +-
 ...-dma-Fix-dreq-not-set-for-slave-transfers.patch |   4 +-
 ...-Limit-cyclic-transfers-on-lite-channels-.patch |   4 +-
 .../0025-bcm2835-Add-support-for-uart1.patch       |   4 +-
 ...irmware-bcm2835-Add-missing-property-tags.patch |   4 +-
 .../0027-Main-bcm2708-bcm2709-linux-port.patch     |   4 +-
 ...-squash-include-ARCH_BCM2708-ARCH_BCM2709.patch |   4 +-
 .../patches-4.4/0029-Add-dwc_otg-driver.patch      |   4 +-
 .../0030-bcm2708-framebuffer-driver.patch          |   4 +-
 .../0031-dmaengine-Add-support-for-BCM2708.patch   |   4 +-
 ...-parameter-to-mmc-multi_io_quirk-callback.patch |   4 +-
 .../0033-MMC-added-alternative-MMC-driver.patch    |   4 +-
 ...835-sdhost-driver-and-an-overlay-to-enabl.patch |   4 +-
 ...ma-Add-vc_cma-driver-to-enable-use-of-CMA.patch |   4 +-
 .../0036-bcm2708-alsa-sound-driver.patch           |   4 +-
 .../patches-4.4/0037-bcm2708-vchiq-driver.patch    |   4 +-
 .../0038-vc_mem-Add-vc_mem-driver.patch            |   4 +-
 ...deoCore-shared-memory-service-for-BCM2835.patch |   4 +-
 ...omem-device-for-rootless-user-GPIO-access.patch |   4 +-
 .../brcm2708/patches-4.4/0041-Add-SMI-driver.patch |   4 +-
 .../patches-4.4/0042-Add-SMI-NAND-driver.patch     |   4 +-
 ...3-lirc-added-support-for-RaspberryPi-GPIO.patch |   4 +-
 .../patches-4.4/0044-Add-cpufreq-driver.patch      |   4 +-
 ...-thermal-driver-for-reporting-core-temper.patch |   4 +-
 .../0046-Add-Chris-Boot-s-i2c-driver.patch         |   4 +-
 .../0047-char-broadcom-Add-vcio-module.patch       |   4 +-
 ...048-firmware-bcm2835-Support-ARCH_BCM270x.patch |   4 +-
 .../0049-bcm2835-add-v4l2-camera-device.patch      |   4 +-
 ...-mkknlimg-and-knlinfo-scripts-from-tools-.patch |   4 +-
 ...port-for-the-CONFIG_CMDLINE_EXTEND-option.patch |   4 +-
 ...0052-BCM2708-Add-core-Device-Tree-support.patch |   4 +-
 ...3-bcm2835-Match-with-BCM2708-Device-Trees.patch |   4 +-
 .../0054-fbdev-add-FBIOCOPYAREA-ioctl.patch        |   4 +-
 ...up-console-framebuffer-imageblit-function.patch |   4 +-
 ...9-Allow-mac-address-to-be-set-in-smsc95xx.patch |   4 +-
 ...e-realtime-clock-1-wire-chip-DS1307-and-1.patch |   4 +-
 ...061-Added-Device-IDs-for-August-DVB-T-205.patch |   4 +-
 ...le-CONFIG_MEMCG-but-leave-it-disabled-due.patch |   4 +-
 .../0063-ASoC-Add-support-for-PCM5102A-codec.patch |   4 +-
 .../0064-ASoC-Add-support-for-HifiBerry-DAC.patch  |   4 +-
 .../0065-ASoC-Add-support-for-Rpi-DAC.patch        |   4 +-
 ...-Implement-MCLK-configuration-options-add.patch |   4 +-
 ...d-support-for-HiFiBerry-Digi.-Driver-is-b.patch |   4 +-
 ...-Set-idle_bias_off-to-false-Idle-bias-has.patch |   4 +-
 ...audIO-Sound-Card-support-for-Raspberry-Pi.patch |   4 +-
 ...ce-default-mouse-polling-interval-to-60Hz.patch |   4 +-
 .../0071-Added-support-for-HiFiBerry-DAC.patch     |   4 +-
 ...r-for-HiFiBerry-Amp-amplifier-add-on-boar.patch |   4 +-
 ...ate-ds1307-driver-for-device-tree-support.patch |   4 +-
 ...Add-pwr_led-and-the-required-input-trigge.patch |   4 +-
 ...d-device-tree-compatible-string-and-an-ov.patch |   4 +-
 .../0076-Add-driver-for-rpi-proto.patch            |   4 +-
 .../0077-config-Add-default-configs.patch          |   4 +-
 .../0078-bcm2835-bcm2835_defconfig.patch           |   4 +-
 ...Add-touchscreen-driver-for-pi-LCD-display.patch |   4 +-
 ...opy_to_user-and-__copy_from_user-performa.patch |   4 +-
 ...poweroff-Allow-it-to-work-on-Raspberry-Pi.patch |   4 +-
 ...spidev-compatible-string-to-silence-warni.patch |   4 +-
 .../0083-scripts-dtc-Add-overlay-support.patch     |   4 +-
 ...fd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch |   4 +-
 .../patches-4.4/0085-RaspiDAC3-support.patch       |   4 +-
 ...86-tpa6130a2-Add-headphone-switch-control.patch |   4 +-
 .../0087-irq-bcm2835-Fix-building-with-2708.patch  |   4 +-
 ..._display-add-backlight-driver-and-overlay.patch |   4 +-
 ...89-bcm2835-dma-Fix-up-convert-to-DMA-pool.patch |   4 +-
 ...ti-platform-support-for-mkknlimg-and-knli.patch |   4 +-
 ...-suport-for-3D-rendering-using-the-V3D-en.patch |   4 +-
 .../0092-drm-vc4-Force-HDMI-to-connected.patch     |   4 +-
 .../0093-drm-vc4-bo-cache-locking-fixes.patch      |   4 +-
 .../0094-drm-vc4-bo-cache-locking-cleanup.patch    |   4 +-
 ...vc4-Use-job_lock-to-protect-seqno_cb_list.patch |   4 +-
 ...c4-Drop-struct_mutex-around-CL-validation.patch |   4 +-
 ...c4-Drop-struct_mutex-around-CL-validation.patch |   4 +-
 ...dd-support-for-more-display-plane-formats.patch |   4 +-
 ...m-vc4-No-need-to-stop-the-stopped-threads.patch |   4 +-
 ...ove-extra-barrier-s-aroudn-CTnCA-CTnEA-se.patch |   4 +-
 ...rm-vc4-Fix-a-typo-in-a-V3D-debug-register.patch |   4 +-
 ...ble-VC4-modules-and-increase-CMA-size-wit.patch |   4 +-
 .../brcm2708/patches-4.4/0103-squash-fixups.patch  |   4 +-
 ...missing-vc4-kms-v3d-overlay.dtb-to-makefi.patch |   4 +-
 ...-Also-build-the-driver-for-downstream-ker.patch |   4 +-
 ...dts-Added-overlay-for-gpio_ir_recv-driver.patch |   4 +-
 ...pio-module-and-add-a-device-tree-overlay-.patch |   4 +-
 .../0108-New-overlay-for-PiScreen2r.patch          |   4 +-
 ...verlay-for-Adafruit-PiTFT-2.8-capacitive-.patch |   4 +-
 ...110-Add-support-for-the-HiFiBerry-DAC-Pro.patch |   4 +-
 .../0111-BCM270X_DT-Add-at86rf233-overlay.patch    |   4 +-
 .../0112-mm-Remove-the-PFN-busy-warning.patch      |   4 +-
 ...optional-field-in-the-driver-struct-for-G.patch |   4 +-
 ...-an-interface-for-capturing-the-GPU-state.patch |   4 +-
 ...ate-a-bunch-of-code-to-match-upstream-sub.patch |   4 +-
 ...-driver-s-gem_object_free-function-from-C.patch |   4 +-
 ...17-drm-vc4-Add-support-for-MSAA-rendering.patch |   4 +-
 ...ew-more-non-functional-changes-to-sync-to.patch |   4 +-
 ...-hpd-gpios-for-HDMI-GPIO-like-what-landed.patch |   4 +-
 ...chronize-validation-code-for-v2-submissio.patch |   4 +-
 ...use-mmc_debug-if-CONFIG_MMC_BCM2835-is-no.patch |   4 +-
 ...k-timeout-fix-modprobe-baudrate-parameter.patch |   4 +-
 ...-bcm270x_dt-Add-dwc2-and-dwc-otg-overlays.patch |   4 +-
 ...Add-the-sdtweak-overlay-for-tuning-sdhost.patch |   4 +-
 ...-Don-t-override-bus-width-capabilities-fr.patch |   4 +-
 ...0126-SDIO-overlay-add-bus_width-parameter.patch |   4 +-
 ...70X_DT-random-HWRNG-dtparam-default-is-on.patch |   4 +-
 ...end-allowed-range-of-channels-and-sampler.patch |   4 +-
 ...cm2835-restrict-channels-rate-to-8-960000.patch |   4 +-
 .../0130-rpi-update-vc_vchi_audioserv_defs.h.patch |   4 +-
 .../0131-bcm2835-implement-channel-map-API.patch   |   4 +-
 ...835-access-controls-under-the-audio-mutex.patch |   4 +-
 ...ays-use-2-4-8-channels-for-multichannel-l.patch |   4 +-
 ...y-allow-stereo-if-analogue-jack-is-select.patch |   4 +-
 .../0135-bcm2835-interpolate-audio-delay.patch     |   4 +-
 ...ost-Add-workaround-for-odd-behaviour-on-s.patch |   4 +-
 ...37-bcm2835-sdhost-Add-debug_flags-dtparam.patch |   4 +-
 ...Add-sdio_overclock-parameter-to-sdio-over.patch |   4 +-
 ...add-support-for-the-DT-property-wakeup-so.patch |   4 +-
 .../0140-dt-overlay-add-wittypi-overlay.dts.patch  |   4 +-
 ..._DT-Disable-DMA-for-bcm2835-sdhost-on-Pi2.patch |   4 +-
 ...cm2708-Don-t-change-module-baudrate-param.patch |   4 +-
 ...-24dB-digital-gain-to-be-applied-when-usi.patch |   4 +-
 ...2x-Digital-gain-to-0dB-by-default-with-Hi.patch |   4 +-
 ...M270X_DT-Adjust-overlay-README-formatting.patch |   4 +-
 ...ay-README-Restore-spaces-deleted-in-error.patch |   4 +-
 ...2835-Fix-cut-and-paste-error-in-pull-pars.patch |   4 +-
 ...70X_DT-Disable-DMA-for-bcm2835-sdhost-on-.patch |   4 +-
 .../0149-bcm2835-sdhost-Major-revision.patch       |   4 +-
 ...270X_DT-Add-dtparams-for-the-SD-interface.patch |   4 +-
 ...m-xfer-length-when-buffer-larger-than-all.patch |   4 +-
 ...ost-Restore-ATOMIC-flag-to-PIO-sg-mapping.patch |   4 +-
 ...blk_pos-parameter-to-mmc-multi_io_quirk-c.patch |   4 +-
 ...c95xx-driver-to-check-for-a-valid-MAC-add.patch |   4 +-
 ...dcw_otg-Make-trimming-messages-less-noisy.patch |   4 +-
 ...BCM270X_DT-at86rf233-overlay-drop-to-3MHz.patch |   4 +-
 ...m2835-sdhost-Downgrade-log-message-status.patch |  22 +
 .../0158-config-Enable-HCI-over-UARTs.patch        |  33 +
 ...59-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch |  23 +
 ..._pl011-Don-t-use-DT-aliases-for-numbering.patch |  29 +
 ...-Add-bindings-for-the-auxiliary-periphera.patch |  72 +++
 ...-Add-a-driver-for-the-auxiliary-periphera.patch | 118 ++++
 .../0163-Aux-SPI-1-2-implementation.patch          | 700 +++++++++++++++++++++
 ...d-missing-.owner-fields-in-sound-card-dri.patch | 108 ++++
 ...d-option-to-disable-the-crimes-against-tr.patch |  44 ++
 ...0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch | 244 +++++++
 .../0167-BCM270X_DT-Add-Pi3-support.patch          | 305 +++++++++
 ...FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch |  82 +++
 168 files changed, 2109 insertions(+), 310 deletions(-)
 create mode 100644 target/linux/brcm2708/patches-4.4/0157-bcm2835-sdhost-Downgrade-log-message-status.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0158-config-Enable-HCI-over-UARTs.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0159-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0160-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0161-clk-bcm2835-Add-bindings-for-the-auxiliary-periphera.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0162-clk-bcm2835-Add-a-driver-for-the-auxiliary-periphera.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0163-Aux-SPI-1-2-implementation.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0164-ASoC-bcm-add-missing-.owner-fields-in-sound-card-dri.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0165-smsx95xx-Add-option-to-disable-the-crimes-against-tr.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0167-BCM270X_DT-Add-Pi3-support.patch
 create mode 100644 target/linux/brcm2708/patches-4.4/0168-FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch

diff --git a/target/linux/brcm2708/bcm2708/config-4.4 b/target/linux/brcm2708/bcm2708/config-4.4
index 1576800..0a05cda 100644
--- a/target/linux/brcm2708/bcm2708/config-4.4
+++ b/target/linux/brcm2708/bcm2708/config-4.4
@@ -32,7 +32,6 @@ CONFIG_ARM_THUMB=y
 CONFIG_ARM_UNWIND=y
 # CONFIG_BACKLIGHT_CLASS_DEVICE is not set
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
-CONFIG_BACKLIGHT_RPI=y
 # CONFIG_BCM2708_NOL2CACHE is not set
 CONFIG_BCM2708_VCHIQ=y
 CONFIG_BCM2708_VCMEM=y
@@ -157,6 +156,7 @@ CONFIG_GENERIC_SMP_IDLE_THREAD=y
 CONFIG_GENERIC_STRNCPY_FROM_USER=y
 CONFIG_GENERIC_STRNLEN_USER=y
 CONFIG_GPIOLIB=y
+# CONFIG_GPIO_BCM_VIRT is not set
 CONFIG_GPIO_DEVRES=y
 CONFIG_GPIO_SYSFS=y
 CONFIG_HANDLE_DOMAIN_IRQ=y
@@ -293,6 +293,7 @@ CONFIG_PRINTK_TIME=y
 CONFIG_PROC_PAGE_MONITOR=y
 CONFIG_PWM=y
 CONFIG_PWM_BCM2835=y
+CONFIG_PWM_SYSFS=y
 CONFIG_RASPBERRYPI_FIRMWARE=y
 CONFIG_RATIONAL=y
 CONFIG_RAW_DRIVER=y
@@ -316,7 +317,6 @@ CONFIG_SPARSE_IRQ=y
 CONFIG_SRCU=y
 # CONFIG_STAGING is not set
 # CONFIG_STRIP_ASM_SYMS is not set
-# CONFIG_SUNXI_SRAM is not set
 CONFIG_SUSPEND=y
 CONFIG_SUSPEND_FREEZER=y
 CONFIG_SWIOTLB=y
diff --git a/target/linux/brcm2708/bcm2709/config-4.4 b/target/linux/brcm2708/bcm2709/config-4.4
index 93fd158..f1d7487 100644
--- a/target/linux/brcm2708/bcm2709/config-4.4
+++ b/target/linux/brcm2708/bcm2709/config-4.4
@@ -38,7 +38,6 @@ CONFIG_ARM_UNWIND=y
 CONFIG_ARM_VIRT_EXT=y
 # CONFIG_BACKLIGHT_CLASS_DEVICE is not set
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
-CONFIG_BACKLIGHT_RPI=y
 CONFIG_BCM2708_NOL2CACHE=y
 CONFIG_BCM2708_VCHIQ=y
 CONFIG_BCM2708_VCMEM=y
@@ -164,6 +163,7 @@ CONFIG_GENERIC_SMP_IDLE_THREAD=y
 CONFIG_GENERIC_STRNCPY_FROM_USER=y
 CONFIG_GENERIC_STRNLEN_USER=y
 CONFIG_GPIOLIB=y
+# CONFIG_GPIO_BCM_VIRT is not set
 CONFIG_GPIO_DEVRES=y
 CONFIG_GPIO_SYSFS=y
 CONFIG_HANDLE_DOMAIN_IRQ=y
@@ -311,6 +311,7 @@ CONFIG_PRINTK_TIME=y
 CONFIG_PROC_PAGE_MONITOR=y
 CONFIG_PWM=y
 CONFIG_PWM_BCM2835=y
+CONFIG_PWM_SYSFS=y
 CONFIG_RASPBERRYPI_FIRMWARE=y
 CONFIG_RATIONAL=y
 CONFIG_RAW_DRIVER=y
@@ -341,7 +342,6 @@ CONFIG_SPARSE_IRQ=y
 CONFIG_SRCU=y
 # CONFIG_STAGING is not set
 # CONFIG_STRIP_ASM_SYMS is not set
-# CONFIG_SUNXI_SRAM is not set
 CONFIG_SUSPEND=y
 CONFIG_SUSPEND_FREEZER=y
 CONFIG_SWIOTLB=y
diff --git a/target/linux/brcm2708/modules.mk b/target/linux/brcm2708/modules.mk
index d7ce7ea..2802c1d 100644
--- a/target/linux/brcm2708/modules.mk
+++ b/target/linux/brcm2708/modules.mk
@@ -289,6 +289,25 @@ endef
 
 $(eval $(call KernelPackage,spi-bcm2835))
 
+define KernelPackage/spi-bcm2835-aux
+  SUBMENU:=$(SPI_MENU)
+  TITLE:=BCM2835 Aux SPI controller driver
+  KCONFIG:=\
+    CONFIG_BCM2708_SPIDEV=n \
+    CONFIG_SPI=y \
+    CONFIG_SPI_BCM2835AUX \
+    CONFIG_SPI_MASTER=y
+  FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
+  AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
+  DEPENDS:=@TARGET_brcm2708
+endef
+
+define KernelPackage/spi-bcm2835-aux/description
+  This package contains the Broadcom 2835 Aux SPI master controller driver
+endef
+
+$(eval $(call KernelPackage,spi-bcm2835-aux))
+
 
 define KernelPackage/hwmon-bcm2835
   TITLE:=BCM2835 HWMON driver
diff --git a/target/linux/brcm2708/patches-4.4/0001-smsx95xx-fix-crimes-against-truesize.patch b/target/linux/brcm2708/patches-4.4/0001-smsx95xx-fix-crimes-against-truesize.patch
index 38f237f..7303f47 100644
--- a/target/linux/brcm2708/patches-4.4/0001-smsx95xx-fix-crimes-against-truesize.patch
+++ b/target/linux/brcm2708/patches-4.4/0001-smsx95xx-fix-crimes-against-truesize.patch
@@ -1,7 +1,7 @@
-From e01f4314ca3bad1a9e6e75011e096b2e7c9ae9c1 Mon Sep 17 00:00:00 2001
+From aa47587aaf99037ce8c4a363caea03105b5985ca Mon Sep 17 00:00:00 2001
 From: Steve Glendinning <steve.glendinning at smsc.com>
 Date: Thu, 19 Feb 2015 18:47:12 +0000
-Subject: [PATCH 001/156] smsx95xx: fix crimes against truesize
+Subject: [PATCH 001/168] 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.
 
diff --git a/target/linux/brcm2708/patches-4.4/0002-smsc95xx-Disable-turbo-mode-by-default.patch b/target/linux/brcm2708/patches-4.4/0002-smsc95xx-Disable-turbo-mode-by-default.patch
index 39a7765..2f13c7b 100644
--- a/target/linux/brcm2708/patches-4.4/0002-smsc95xx-Disable-turbo-mode-by-default.patch
+++ b/target/linux/brcm2708/patches-4.4/0002-smsc95xx-Disable-turbo-mode-by-default.patch
@@ -1,7 +1,7 @@
-From 53c281914c7bb489a5dba2559bdbbdbdc25bd515 Mon Sep 17 00:00:00 2001
+From cdbf18bf3500b43939cb69d2e24462b2891944d5 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Fri, 17 Apr 2015 16:58:45 +0100
-Subject: [PATCH 002/156] smsc95xx: Disable turbo mode by default
+Subject: [PATCH 002/168] smsc95xx: Disable turbo mode by default
 
 ---
  drivers/net/usb/smsc95xx.c | 2 +-
diff --git a/target/linux/brcm2708/patches-4.4/0003-vmstat-Workaround-for-issue-where-dirty-page-count-g.patch b/target/linux/brcm2708/patches-4.4/0003-vmstat-Workaround-for-issue-where-dirty-page-count-g.patch
index c3f30fa..0de8ff6 100644
--- a/target/linux/brcm2708/patches-4.4/0003-vmstat-Workaround-for-issue-where-dirty-page-count-g.patch
+++ b/target/linux/brcm2708/patches-4.4/0003-vmstat-Workaround-for-issue-where-dirty-page-count-g.patch
@@ -1,7 +1,7 @@
-From 570a13246efbcaf5f0952f8b2382166ab7677f7d Mon Sep 17 00:00:00 2001
+From c9321fe3151b9ce63bd23cb499ca9d0de3c6f2b4 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 18 Jun 2014 13:42:01 +0100
-Subject: [PATCH 003/156] vmstat: Workaround for issue where dirty page count
+Subject: [PATCH 003/168] vmstat: Workaround for issue where dirty page count
  goes negative
 
 See:
diff --git a/target/linux/brcm2708/patches-4.4/0004-BCM2835_DT-Fix-I2S-register-map.patch b/target/linux/brcm2708/patches-4.4/0004-BCM2835_DT-Fix-I2S-register-map.patch
index 6542217..02d1b8f 100644
--- a/target/linux/brcm2708/patches-4.4/0004-BCM2835_DT-Fix-I2S-register-map.patch
+++ b/target/linux/brcm2708/patches-4.4/0004-BCM2835_DT-Fix-I2S-register-map.patch
@@ -1,7 +1,7 @@
-From 030a4127de50633f29388f7cc5170537baa8a46b Mon Sep 17 00:00:00 2001
+From 4ddbe363ef446e91e6a20fcb52e08a3b552b4858 Mon Sep 17 00:00:00 2001
 From: Robert Tiemann <rtie at gmx.de>
 Date: Mon, 20 Jul 2015 11:01:25 +0200
-Subject: [PATCH 004/156] BCM2835_DT: Fix I2S register map
+Subject: [PATCH 004/168] BCM2835_DT: Fix I2S register map
 
 ---
  Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt   | 4 ++--
diff --git a/target/linux/brcm2708/patches-4.4/0005-irq-bcm2836-Prevent-spurious-interrupts-and-trap-the.patch b/target/linux/brcm2708/patches-4.4/0005-irq-bcm2836-Prevent-spurious-interrupts-and-trap-the.patch
index 59c65dd..81889e3 100644
--- a/target/linux/brcm2708/patches-4.4/0005-irq-bcm2836-Prevent-spurious-interrupts-and-trap-the.patch
+++ b/target/linux/brcm2708/patches-4.4/0005-irq-bcm2836-Prevent-spurious-interrupts-and-trap-the.patch
@@ -1,7 +1,7 @@
-From 0e31e724041c5aa97de901e88eb889697605a543 Mon Sep 17 00:00:00 2001
+From 43fd5b1d81c6c100845587ab0030356bbe59a9cd Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 4 Dec 2015 17:41:50 +0000
-Subject: [PATCH 005/156] irq-bcm2836: Prevent spurious interrupts, and trap
+Subject: [PATCH 005/168] irq-bcm2836: Prevent spurious interrupts, and trap
  them early
 
 The old arch-specific IRQ macros included a dsb to ensure the
diff --git a/target/linux/brcm2708/patches-4.4/0006-irqchip-bcm2835-Add-FIQ-support.patch b/target/linux/brcm2708/patches-4.4/0006-irqchip-bcm2835-Add-FIQ-support.patch
index 79e337b..9427a64 100644
--- a/target/linux/brcm2708/patches-4.4/0006-irqchip-bcm2835-Add-FIQ-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0006-irqchip-bcm2835-Add-FIQ-support.patch
@@ -1,7 +1,7 @@
-From 05e41ed8765557174e13c868e6bdead409452b9a Mon Sep 17 00:00:00 2001
+From f5d1d8d6dd369fc4ee7c05346ac98c4c4dfab72a Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Fri, 12 Jun 2015 19:01:05 +0200
-Subject: [PATCH 006/156] irqchip: bcm2835: Add FIQ support
+Subject: [PATCH 006/168] irqchip: bcm2835: Add FIQ support
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0007-irqchip-irq-bcm2835-Add-2836-FIQ-support.patch b/target/linux/brcm2708/patches-4.4/0007-irqchip-irq-bcm2835-Add-2836-FIQ-support.patch
index dd99a22..1feedd4 100644
--- a/target/linux/brcm2708/patches-4.4/0007-irqchip-irq-bcm2835-Add-2836-FIQ-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0007-irqchip-irq-bcm2835-Add-2836-FIQ-support.patch
@@ -1,7 +1,7 @@
-From f5c7fd23e80638ed98babafb2c7d97df569e2bce Mon Sep 17 00:00:00 2001
+From 3f08172adcc23e46b25f7d7dc3c31391cf01c404 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Fri, 23 Oct 2015 16:26:55 +0200
-Subject: [PATCH 007/156] irqchip: irq-bcm2835: Add 2836 FIQ support
+Subject: [PATCH 007/168] irqchip: irq-bcm2835: Add 2836 FIQ support
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0008-serial-8250-Don-t-crash-when-nr_uarts-is-0.patch b/target/linux/brcm2708/patches-4.4/0008-serial-8250-Don-t-crash-when-nr_uarts-is-0.patch
index ed035d2..b162175 100644
--- a/target/linux/brcm2708/patches-4.4/0008-serial-8250-Don-t-crash-when-nr_uarts-is-0.patch
+++ b/target/linux/brcm2708/patches-4.4/0008-serial-8250-Don-t-crash-when-nr_uarts-is-0.patch
@@ -1,7 +1,7 @@
-From 4db60442326172e590b3c34ab5f75f1359d42ec8 Mon Sep 17 00:00:00 2001
+From fe738f54d2fe296756ef795105ea2473b232a958 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 30 Jun 2015 14:12:42 +0100
-Subject: [PATCH 008/156] serial: 8250: Don't crash when nr_uarts is 0
+Subject: [PATCH 008/168] serial: 8250: Don't crash when nr_uarts is 0
 
 ---
  drivers/tty/serial/8250/8250_core.c | 2 ++
diff --git a/target/linux/brcm2708/patches-4.4/0009-pinctrl-bcm2835-Set-base-to-0-give-expected-gpio-num.patch b/target/linux/brcm2708/patches-4.4/0009-pinctrl-bcm2835-Set-base-to-0-give-expected-gpio-num.patch
index 7b701bf..3171cff 100644
--- a/target/linux/brcm2708/patches-4.4/0009-pinctrl-bcm2835-Set-base-to-0-give-expected-gpio-num.patch
+++ b/target/linux/brcm2708/patches-4.4/0009-pinctrl-bcm2835-Set-base-to-0-give-expected-gpio-num.patch
@@ -1,7 +1,7 @@
-From e1239426241dc0af5bf9c7eb25b3b5b91f8072f2 Mon Sep 17 00:00:00 2001
+From 26ce4f8800db0f3eaff6a46720f72eb4ee5670d9 Mon Sep 17 00:00:00 2001
 From: notro <notro at tronnes.org>
 Date: Thu, 10 Jul 2014 13:59:47 +0200
-Subject: [PATCH 009/156] pinctrl-bcm2835: Set base to 0 give expected gpio
+Subject: [PATCH 009/168] pinctrl-bcm2835: Set base to 0 give expected gpio
  numbering
 
 Signed-off-by: Noralf Tronnes <notro at tronnes.org>
diff --git a/target/linux/brcm2708/patches-4.4/0010-pinctrl-bcm2835-Fix-interrupt-handling-for-GPIOs-28-.patch b/target/linux/brcm2708/patches-4.4/0010-pinctrl-bcm2835-Fix-interrupt-handling-for-GPIOs-28-.patch
index 45bf009..75e08a2 100644
--- a/target/linux/brcm2708/patches-4.4/0010-pinctrl-bcm2835-Fix-interrupt-handling-for-GPIOs-28-.patch
+++ b/target/linux/brcm2708/patches-4.4/0010-pinctrl-bcm2835-Fix-interrupt-handling-for-GPIOs-28-.patch
@@ -1,7 +1,7 @@
-From 0b7c13febba234187396a3a9a5af92e20deeab88 Mon Sep 17 00:00:00 2001
+From 663004727ea3976c575b4ade84ef84da04c983a7 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 24 Feb 2015 13:40:50 +0000
-Subject: [PATCH 010/156] pinctrl-bcm2835: Fix interrupt handling for GPIOs
+Subject: [PATCH 010/168] pinctrl-bcm2835: Fix interrupt handling for GPIOs
  28-31 and 46-53
 
 Contrary to the documentation, the BCM2835 GPIO controller actually has
diff --git a/target/linux/brcm2708/patches-4.4/0011-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch b/target/linux/brcm2708/patches-4.4/0011-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch
index 3e751bd..e6eb25a 100644
--- a/target/linux/brcm2708/patches-4.4/0011-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch
+++ b/target/linux/brcm2708/patches-4.4/0011-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch
@@ -1,7 +1,7 @@
-From a5cbd1b6abdf86be640d0f312e69046c3e4907f8 Mon Sep 17 00:00:00 2001
+From 0527662153b9a4902a81e7e66041f7f6e2b29fba Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Thu, 26 Feb 2015 09:58:22 +0000
-Subject: [PATCH 011/156] pinctrl-bcm2835: Only request the interrupts listed
+Subject: [PATCH 011/168] pinctrl-bcm2835: Only request the interrupts listed
  in the DTB
 
 Although the GPIO controller can generate three interrupts (four counting
diff --git a/target/linux/brcm2708/patches-4.4/0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch b/target/linux/brcm2708/patches-4.4/0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch
index d9aeadc..a899648 100644
--- a/target/linux/brcm2708/patches-4.4/0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch
+++ b/target/linux/brcm2708/patches-4.4/0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch
@@ -1,7 +1,7 @@
-From dd2680dc2e5fd417101093c6618cc5c14ad8f949 Mon Sep 17 00:00:00 2001
+From 8d8ef784c6db6e96f6f0d0e4d3ad33fa754b8b3b Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Wed, 24 Jun 2015 14:10:44 +0100
-Subject: [PATCH 012/156] spi-bcm2835: Support pin groups other than 7-11
+Subject: [PATCH 012/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0013-ARM-bcm2835-Set-Serial-number-and-Revision.patch b/target/linux/brcm2708/patches-4.4/0013-ARM-bcm2835-Set-Serial-number-and-Revision.patch
index 4244563..731d9cf 100644
--- a/target/linux/brcm2708/patches-4.4/0013-ARM-bcm2835-Set-Serial-number-and-Revision.patch
+++ b/target/linux/brcm2708/patches-4.4/0013-ARM-bcm2835-Set-Serial-number-and-Revision.patch
@@ -1,7 +1,7 @@
-From 95d71f47cc485c5d0030291b9388bbdbdc335437 Mon Sep 17 00:00:00 2001
+From cd62c1ba6ef1b36f8c001f546c16ab5b8a2f26b7 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Wed, 3 Jun 2015 12:26:13 +0200
-Subject: [PATCH 013/156] ARM: bcm2835: Set Serial number and Revision
+Subject: [PATCH 013/168] ARM: bcm2835: Set Serial number and Revision
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0014-bcm2835-i2s-get-base-address-for-DMA-from-devicetree.patch b/target/linux/brcm2708/patches-4.4/0014-bcm2835-i2s-get-base-address-for-DMA-from-devicetree.patch
index d113853..88168d7 100644
--- a/target/linux/brcm2708/patches-4.4/0014-bcm2835-i2s-get-base-address-for-DMA-from-devicetree.patch
+++ b/target/linux/brcm2708/patches-4.4/0014-bcm2835-i2s-get-base-address-for-DMA-from-devicetree.patch
@@ -1,7 +1,7 @@
-From 5d6a70aac1ff4f0c898131100599340c1c3aba25 Mon Sep 17 00:00:00 2001
+From f525b4ad59085919651996e997def3e0beb1901c Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 16:44:05 +0200
-Subject: [PATCH 014/156] bcm2835-i2s: get base address for DMA from devicetree
+Subject: [PATCH 014/168] bcm2835-i2s: get base address for DMA from devicetree
 
 Code copied from spi-bcm2835. Get physical address from devicetree
 instead of using hardcoded constant.
diff --git a/target/linux/brcm2708/patches-4.4/0015-bcm2835-i2s-add-24bit-support-update-bclk_ratio-to-m.patch b/target/linux/brcm2708/patches-4.4/0015-bcm2835-i2s-add-24bit-support-update-bclk_ratio-to-m.patch
index f7e4711..b00125f 100644
--- a/target/linux/brcm2708/patches-4.4/0015-bcm2835-i2s-add-24bit-support-update-bclk_ratio-to-m.patch
+++ b/target/linux/brcm2708/patches-4.4/0015-bcm2835-i2s-add-24bit-support-update-bclk_ratio-to-m.patch
@@ -1,7 +1,7 @@
-From e7f330a7e837e0d6e31cb85dbaeace60ebd8cad1 Mon Sep 17 00:00:00 2001
+From 30a7cd1e003c7172010f49daf6e64ac4a7cf77e7 Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 15:21:16 +0200
-Subject: [PATCH 015/156] bcm2835-i2s: add 24bit support, update bclk_ratio to
+Subject: [PATCH 015/168] bcm2835-i2s: add 24bit support, update bclk_ratio to
  more correct values
 
 Code ported from bcm2708-i2s driver in Raspberry Pi tree.
diff --git a/target/linux/brcm2708/patches-4.4/0016-bcm2835-i2s-setup-clock-only-if-CPU-is-clock-master.patch b/target/linux/brcm2708/patches-4.4/0016-bcm2835-i2s-setup-clock-only-if-CPU-is-clock-master.patch
index 33746cc..9feecf8 100644
--- a/target/linux/brcm2708/patches-4.4/0016-bcm2835-i2s-setup-clock-only-if-CPU-is-clock-master.patch
+++ b/target/linux/brcm2708/patches-4.4/0016-bcm2835-i2s-setup-clock-only-if-CPU-is-clock-master.patch
@@ -1,7 +1,7 @@
-From 19ed56e06d7b9342227ccf5942471d3c265a1685 Mon Sep 17 00:00:00 2001
+From b49117c1bf2994b6fd35a79ee211ce92f4965dee Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 15:25:51 +0200
-Subject: [PATCH 016/156] bcm2835-i2s: setup clock only if CPU is clock master
+Subject: [PATCH 016/168] bcm2835-i2s: setup clock only if CPU is clock master
 
 Code ported from bcm2708-i2s driver in Raspberry Pi tree.
 
diff --git a/target/linux/brcm2708/patches-4.4/0017-bcm2835-i2s-Eliminate-debugfs-directory-error.patch b/target/linux/brcm2708/patches-4.4/0017-bcm2835-i2s-Eliminate-debugfs-directory-error.patch
index a7277ce..308c03a 100644
--- a/target/linux/brcm2708/patches-4.4/0017-bcm2835-i2s-Eliminate-debugfs-directory-error.patch
+++ b/target/linux/brcm2708/patches-4.4/0017-bcm2835-i2s-Eliminate-debugfs-directory-error.patch
@@ -1,7 +1,7 @@
-From cdc4ea613c38dc44e44dabba95b2eb594c22cd29 Mon Sep 17 00:00:00 2001
+From c520c812bd47c3b85aea8822e86e151ae74c33ae Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 15:49:51 +0200
-Subject: [PATCH 017/156] bcm2835-i2s: Eliminate debugfs directory error
+Subject: [PATCH 017/168] bcm2835-i2s: Eliminate debugfs directory error
 
 Code ported from bcm2708-i2s driver in Raspberry Pi tree.
 
diff --git a/target/linux/brcm2708/patches-4.4/0018-bcm2835-i2s-Register-PCM-device.patch b/target/linux/brcm2708/patches-4.4/0018-bcm2835-i2s-Register-PCM-device.patch
index 13b6785..cbcea34 100644
--- a/target/linux/brcm2708/patches-4.4/0018-bcm2835-i2s-Register-PCM-device.patch
+++ b/target/linux/brcm2708/patches-4.4/0018-bcm2835-i2s-Register-PCM-device.patch
@@ -1,7 +1,7 @@
-From f74c822d357e64c2da9d116a532bd581522efc06 Mon Sep 17 00:00:00 2001
+From 62443e8403e4507f71aa70fc0c0a766799b368a6 Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 15:35:20 +0200
-Subject: [PATCH 018/156] bcm2835-i2s: Register PCM device
+Subject: [PATCH 018/168] bcm2835-i2s: Register PCM device
 
 Code ported from bcm2708-i2s driver in Raspberry Pi tree.
 
diff --git a/target/linux/brcm2708/patches-4.4/0019-bcm2835-i2s-Enable-MMAP-support-via-a-DT-property.patch b/target/linux/brcm2708/patches-4.4/0019-bcm2835-i2s-Enable-MMAP-support-via-a-DT-property.patch
index 4ea245b..ad5a7c9 100644
--- a/target/linux/brcm2708/patches-4.4/0019-bcm2835-i2s-Enable-MMAP-support-via-a-DT-property.patch
+++ b/target/linux/brcm2708/patches-4.4/0019-bcm2835-i2s-Enable-MMAP-support-via-a-DT-property.patch
@@ -1,7 +1,7 @@
-From 72e07a497854cf8f63ffafc84e016ed859cb7d31 Mon Sep 17 00:00:00 2001
+From 99c48f97f766ec9c9b10af460d7577ab5655966a Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 15:55:21 +0200
-Subject: [PATCH 019/156] bcm2835-i2s: Enable MMAP support via a DT property
+Subject: [PATCH 019/168] bcm2835-i2s: Enable MMAP support via a DT property
 
 Code ported from bcm2708-i2s driver in Raspberry Pi tree.
 
diff --git a/target/linux/brcm2708/patches-4.4/0020-dmaengine-bcm2835-Add-slave-dma-support.patch b/target/linux/brcm2708/patches-4.4/0020-dmaengine-bcm2835-Add-slave-dma-support.patch
index 6da23d4..1ef88fc 100644
--- a/target/linux/brcm2708/patches-4.4/0020-dmaengine-bcm2835-Add-slave-dma-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0020-dmaengine-bcm2835-Add-slave-dma-support.patch
@@ -1,7 +1,7 @@
-From 79923137826ff02cad3536d7984626065f42ce6d Mon Sep 17 00:00:00 2001
+From 47a356039ddf7229a35269cf6bbaa325a2c1c96f Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Thu, 9 Apr 2015 12:34:11 +0200
-Subject: [PATCH 020/156] dmaengine: bcm2835: Add slave dma support
+Subject: [PATCH 020/168] dmaengine: bcm2835: Add slave dma support
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0021-dmaengine-bcm2835-set-residue_granularity-field.patch b/target/linux/brcm2708/patches-4.4/0021-dmaengine-bcm2835-set-residue_granularity-field.patch
index 7b41e92..5f13e52 100644
--- a/target/linux/brcm2708/patches-4.4/0021-dmaengine-bcm2835-set-residue_granularity-field.patch
+++ b/target/linux/brcm2708/patches-4.4/0021-dmaengine-bcm2835-set-residue_granularity-field.patch
@@ -1,7 +1,7 @@
-From b6906312ccc7e18a0d8608c1d1bc318ab6f84656 Mon Sep 17 00:00:00 2001
+From 084e072e39be289e9c102afc8b3f589e565a4e80 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Sat, 3 Oct 2015 15:58:59 +0200
-Subject: [PATCH 021/156] dmaengine: bcm2835: set residue_granularity field
+Subject: [PATCH 021/168] dmaengine: bcm2835: set residue_granularity field
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0022-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch b/target/linux/brcm2708/patches-4.4/0022-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch
index 59a7d28..26a3c79 100644
--- a/target/linux/brcm2708/patches-4.4/0022-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch
+++ b/target/linux/brcm2708/patches-4.4/0022-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch
@@ -1,7 +1,7 @@
-From 53fcf558378cab445edc70a2a03a4ec7e1498107 Mon Sep 17 00:00:00 2001
+From 45d0b0a2fc5275c5d1308808aeb2924fa52ca489 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Sat, 3 Oct 2015 22:22:55 +0200
-Subject: [PATCH 022/156] dmaengine: bcm2835: Load driver early and support
+Subject: [PATCH 022/168] dmaengine: bcm2835: Load driver early and support
  legacy API
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
diff --git a/target/linux/brcm2708/patches-4.4/0023-bcm2835-dma-Fix-dreq-not-set-for-slave-transfers.patch b/target/linux/brcm2708/patches-4.4/0023-bcm2835-dma-Fix-dreq-not-set-for-slave-transfers.patch
index ae6c222..e199b36 100644
--- a/target/linux/brcm2708/patches-4.4/0023-bcm2835-dma-Fix-dreq-not-set-for-slave-transfers.patch
+++ b/target/linux/brcm2708/patches-4.4/0023-bcm2835-dma-Fix-dreq-not-set-for-slave-transfers.patch
@@ -1,7 +1,7 @@
-From a8f6a0a5ad90dd940fffcd73311abb1aae8acfcc Mon Sep 17 00:00:00 2001
+From 3e297efd16eeecd92b7d85338d2e22e094a08c0f Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sat, 10 Oct 2015 12:29:18 +0200
-Subject: [PATCH 023/156] bcm2835-dma: Fix dreq not set for slave transfers
+Subject: [PATCH 023/168] bcm2835-dma: Fix dreq not set for slave transfers
 
 Set dreq to slave_id if it is not set like in bcm2708-dmaengine.
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0024-bcm2835-dma-Limit-cyclic-transfers-on-lite-channels-.patch b/target/linux/brcm2708/patches-4.4/0024-bcm2835-dma-Limit-cyclic-transfers-on-lite-channels-.patch
index b346571..85a5e66 100644
--- a/target/linux/brcm2708/patches-4.4/0024-bcm2835-dma-Limit-cyclic-transfers-on-lite-channels-.patch
+++ b/target/linux/brcm2708/patches-4.4/0024-bcm2835-dma-Limit-cyclic-transfers-on-lite-channels-.patch
@@ -1,7 +1,7 @@
-From 0ab04f220a909d20f991f3392d65aceb0ec7e774 Mon Sep 17 00:00:00 2001
+From 2ad985e4899b9dc5f710b6a271dd940b2f34b5c8 Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Sun, 11 Oct 2015 12:28:30 +0200
-Subject: [PATCH 024/156] bcm2835-dma: Limit cyclic transfers on lite channels
+Subject: [PATCH 024/168] bcm2835-dma: Limit cyclic transfers on lite channels
  to 32k
 
 Transfers larger than 32k cause repeated clicking with I2S soundcards.
diff --git a/target/linux/brcm2708/patches-4.4/0025-bcm2835-Add-support-for-uart1.patch b/target/linux/brcm2708/patches-4.4/0025-bcm2835-Add-support-for-uart1.patch
index 1703ac4..45883c0 100644
--- a/target/linux/brcm2708/patches-4.4/0025-bcm2835-Add-support-for-uart1.patch
+++ b/target/linux/brcm2708/patches-4.4/0025-bcm2835-Add-support-for-uart1.patch
@@ -1,7 +1,7 @@
-From 71b7745f15495d3f9fd59be9e5789c18581d60a0 Mon Sep 17 00:00:00 2001
+From 3902234f8cb5ebc3602abb2ee7d666806408bb58 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Sat, 15 Aug 2015 20:50:02 +0200
-Subject: [PATCH 025/156] bcm2835: Add support for uart1
+Subject: [PATCH 025/168] bcm2835: Add support for uart1
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0026-firmware-bcm2835-Add-missing-property-tags.patch b/target/linux/brcm2708/patches-4.4/0026-firmware-bcm2835-Add-missing-property-tags.patch
index 1701234..f1295e0 100644
--- a/target/linux/brcm2708/patches-4.4/0026-firmware-bcm2835-Add-missing-property-tags.patch
+++ b/target/linux/brcm2708/patches-4.4/0026-firmware-bcm2835-Add-missing-property-tags.patch
@@ -1,7 +1,7 @@
-From e289839705c709e9c4479566cef5605466f6a648 Mon Sep 17 00:00:00 2001
+From 17b66dfbd5e5c5d53270bc91ace7f455afc14826 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Fri, 26 Jun 2015 14:21:20 +0200
-Subject: [PATCH 026/156] firmware: bcm2835: Add missing property tags
+Subject: [PATCH 026/168] firmware: bcm2835: Add missing property tags
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0027-Main-bcm2708-bcm2709-linux-port.patch b/target/linux/brcm2708/patches-4.4/0027-Main-bcm2708-bcm2709-linux-port.patch
index 7a4c34d..bcdba9e 100644
--- a/target/linux/brcm2708/patches-4.4/0027-Main-bcm2708-bcm2709-linux-port.patch
+++ b/target/linux/brcm2708/patches-4.4/0027-Main-bcm2708-bcm2709-linux-port.patch
@@ -1,7 +1,7 @@
-From e6b5eb84f3342be4dd3838279802b43521cd419f Mon Sep 17 00:00:00 2001
+From cc418339b925310fb5ab1d257539c7ba0f50ea5a Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Sun, 12 May 2013 12:24:19 +0100
-Subject: [PATCH 027/156] Main bcm2708/bcm2709 linux port
+Subject: [PATCH 027/168] Main bcm2708/bcm2709 linux port
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0028-squash-include-ARCH_BCM2708-ARCH_BCM2709.patch b/target/linux/brcm2708/patches-4.4/0028-squash-include-ARCH_BCM2708-ARCH_BCM2709.patch
index 707d8ce..d82c4ce 100644
--- a/target/linux/brcm2708/patches-4.4/0028-squash-include-ARCH_BCM2708-ARCH_BCM2709.patch
+++ b/target/linux/brcm2708/patches-4.4/0028-squash-include-ARCH_BCM2708-ARCH_BCM2709.patch
@@ -1,7 +1,7 @@
-From eb50bdd77b032b204591287bd7b5881ab31162a3 Mon Sep 17 00:00:00 2001
+From 6f9bab1d4c4c60ca10834bff9caca31ecd91f2a4 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 11 Nov 2015 21:01:15 +0000
-Subject: [PATCH 028/156] squash: include ARCH_BCM2708 / ARCH_BCM2709
+Subject: [PATCH 028/168] squash: include ARCH_BCM2708 / ARCH_BCM2709
 
 ---
  drivers/char/hw_random/Kconfig    |  2 +-
diff --git a/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch b/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch
index 736aac1..7cff185 100644
--- a/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0029-Add-dwc_otg-driver.patch
@@ -1,7 +1,7 @@
-From 9a08cd1f14fd6e6797ddf99303175088bdb0ff90 Mon Sep 17 00:00:00 2001
+From 89a3a8c9d82d50645593401c0e5190cb0aa726e3 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 1 May 2013 19:46:17 +0100
-Subject: [PATCH 029/156] Add dwc_otg driver
+Subject: [PATCH 029/168] Add dwc_otg driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0030-bcm2708-framebuffer-driver.patch b/target/linux/brcm2708/patches-4.4/0030-bcm2708-framebuffer-driver.patch
index 598cf5f..63a6273 100644
--- a/target/linux/brcm2708/patches-4.4/0030-bcm2708-framebuffer-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0030-bcm2708-framebuffer-driver.patch
@@ -1,7 +1,7 @@
-From 5722cc32ff8ec100e2f0490d4b94a257085871ff Mon Sep 17 00:00:00 2001
+From 464ee064d6ffc18f670b4d695755eb850a84e7e5 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 17 Jun 2015 17:06:34 +0100
-Subject: [PATCH 030/156] bcm2708 framebuffer driver
+Subject: [PATCH 030/168] bcm2708 framebuffer driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0031-dmaengine-Add-support-for-BCM2708.patch b/target/linux/brcm2708/patches-4.4/0031-dmaengine-Add-support-for-BCM2708.patch
index 536f77c..3aa922a 100644
--- a/target/linux/brcm2708/patches-4.4/0031-dmaengine-Add-support-for-BCM2708.patch
+++ b/target/linux/brcm2708/patches-4.4/0031-dmaengine-Add-support-for-BCM2708.patch
@@ -1,7 +1,7 @@
-From 04c9e1905ed9aae6208650d81c26baa142fc9e7c Mon Sep 17 00:00:00 2001
+From 084fe92452faad286bb41375cb05dab7ae82db83 Mon Sep 17 00:00:00 2001
 From: Florian Meier <florian.meier at koalo.de>
 Date: Fri, 22 Nov 2013 14:22:53 +0100
-Subject: [PATCH 031/156] dmaengine: Add support for BCM2708
+Subject: [PATCH 031/168] dmaengine: Add support for BCM2708
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0032-Add-blk_pos-parameter-to-mmc-multi_io_quirk-callback.patch b/target/linux/brcm2708/patches-4.4/0032-Add-blk_pos-parameter-to-mmc-multi_io_quirk-callback.patch
index 269a7be..6f5e723 100644
--- a/target/linux/brcm2708/patches-4.4/0032-Add-blk_pos-parameter-to-mmc-multi_io_quirk-callback.patch
+++ b/target/linux/brcm2708/patches-4.4/0032-Add-blk_pos-parameter-to-mmc-multi_io_quirk-callback.patch
@@ -1,7 +1,7 @@
-From 8883ad2926f389ee00f33ef52b1a8d7ecdad085f Mon Sep 17 00:00:00 2001
+From 37a50a73682e42b2b680d5e5cc009d34443527c3 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 17 Apr 2015 19:30:22 +0100
-Subject: [PATCH 032/156] Add blk_pos parameter to mmc multi_io_quirk callback
+Subject: [PATCH 032/168] Add blk_pos parameter to mmc multi_io_quirk callback
 
 ---
  drivers/mmc/card/block.c          | 1 +
diff --git a/target/linux/brcm2708/patches-4.4/0033-MMC-added-alternative-MMC-driver.patch b/target/linux/brcm2708/patches-4.4/0033-MMC-added-alternative-MMC-driver.patch
index e42602c..62a0dc6 100644
--- a/target/linux/brcm2708/patches-4.4/0033-MMC-added-alternative-MMC-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0033-MMC-added-alternative-MMC-driver.patch
@@ -1,7 +1,7 @@
-From 118e1dbbd1a750304eaf53ed97f05ee86e6f4d52 Mon Sep 17 00:00:00 2001
+From c66374e0b57400b9e6b6af34f230539dad763286 Mon Sep 17 00:00:00 2001
 From: gellert <gellert at raspberrypi.org>
 Date: Fri, 15 Aug 2014 16:35:06 +0100
-Subject: [PATCH 033/156] MMC: added alternative MMC driver
+Subject: [PATCH 033/168] MMC: added alternative MMC driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0034-Adding-bcm2835-sdhost-driver-and-an-overlay-to-enabl.patch b/target/linux/brcm2708/patches-4.4/0034-Adding-bcm2835-sdhost-driver-and-an-overlay-to-enabl.patch
index 4e4a548..b50a906 100644
--- a/target/linux/brcm2708/patches-4.4/0034-Adding-bcm2835-sdhost-driver-and-an-overlay-to-enabl.patch
+++ b/target/linux/brcm2708/patches-4.4/0034-Adding-bcm2835-sdhost-driver-and-an-overlay-to-enabl.patch
@@ -1,7 +1,7 @@
-From d29928fd47f28cf8ee0221c4979da984203503a1 Mon Sep 17 00:00:00 2001
+From 49fa85bc82ed60259f2da190d0b5dfb4ecb2b462 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Wed, 25 Mar 2015 17:49:47 +0000
-Subject: [PATCH 034/156] Adding bcm2835-sdhost driver, and an overlay to
+Subject: [PATCH 034/168] Adding bcm2835-sdhost driver, and an overlay to
  enable it
 
 BCM2835 has two SD card interfaces. This driver uses the other one.
diff --git a/target/linux/brcm2708/patches-4.4/0035-cma-Add-vc_cma-driver-to-enable-use-of-CMA.patch b/target/linux/brcm2708/patches-4.4/0035-cma-Add-vc_cma-driver-to-enable-use-of-CMA.patch
index b825c7a..8d28f78 100644
--- a/target/linux/brcm2708/patches-4.4/0035-cma-Add-vc_cma-driver-to-enable-use-of-CMA.patch
+++ b/target/linux/brcm2708/patches-4.4/0035-cma-Add-vc_cma-driver-to-enable-use-of-CMA.patch
@@ -1,7 +1,7 @@
-From c6f15fd48c94d179e6e829cee2c36c2b4dc9a07d Mon Sep 17 00:00:00 2001
+From 876bcc4c3644b2d31406c2dfc081c72bfd3c021f Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 3 Jul 2013 00:31:47 +0100
-Subject: [PATCH 035/156] cma: Add vc_cma driver to enable use of CMA
+Subject: [PATCH 035/168] cma: Add vc_cma driver to enable use of CMA
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0036-bcm2708-alsa-sound-driver.patch b/target/linux/brcm2708/patches-4.4/0036-bcm2708-alsa-sound-driver.patch
index 57d4ba0..15da3f5 100644
--- a/target/linux/brcm2708/patches-4.4/0036-bcm2708-alsa-sound-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0036-bcm2708-alsa-sound-driver.patch
@@ -1,7 +1,7 @@
-From 26d9897700046c008240842bafec44eed727df89 Mon Sep 17 00:00:00 2001
+From a625586fff6b75c938cb15719417e899bce344bb Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Mon, 26 Mar 2012 22:15:50 +0100
-Subject: [PATCH 036/156] bcm2708: alsa sound driver
+Subject: [PATCH 036/168] bcm2708: alsa sound driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0037-bcm2708-vchiq-driver.patch b/target/linux/brcm2708/patches-4.4/0037-bcm2708-vchiq-driver.patch
index 554fdc7..ca4fd77 100644
--- a/target/linux/brcm2708/patches-4.4/0037-bcm2708-vchiq-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0037-bcm2708-vchiq-driver.patch
@@ -1,7 +1,7 @@
-From ad0b56e0e4c45cbc6014f6befcb53ffc05dff857 Mon Sep 17 00:00:00 2001
+From 6dd87d798ceea902825e463f0a86d12af1861254 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Tue, 2 Jul 2013 23:42:01 +0100
-Subject: [PATCH 037/156] bcm2708 vchiq driver
+Subject: [PATCH 037/168] bcm2708 vchiq driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0038-vc_mem-Add-vc_mem-driver.patch b/target/linux/brcm2708/patches-4.4/0038-vc_mem-Add-vc_mem-driver.patch
index 3a02267..6416e74 100644
--- a/target/linux/brcm2708/patches-4.4/0038-vc_mem-Add-vc_mem-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0038-vc_mem-Add-vc_mem-driver.patch
@@ -1,7 +1,7 @@
-From 431b30a19d76bc784aa609481c43121092b81f86 Mon Sep 17 00:00:00 2001
+From aaa3b99e6622e06e410f4bf09184a4102329e83c Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 17 Jun 2015 16:07:06 +0100
-Subject: [PATCH 038/156] vc_mem: Add vc_mem driver
+Subject: [PATCH 038/168] vc_mem: Add vc_mem driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0039-vcsm-VideoCore-shared-memory-service-for-BCM2835.patch b/target/linux/brcm2708/patches-4.4/0039-vcsm-VideoCore-shared-memory-service-for-BCM2835.patch
index 2298b68..ca0099c 100644
--- a/target/linux/brcm2708/patches-4.4/0039-vcsm-VideoCore-shared-memory-service-for-BCM2835.patch
+++ b/target/linux/brcm2708/patches-4.4/0039-vcsm-VideoCore-shared-memory-service-for-BCM2835.patch
@@ -1,7 +1,7 @@
-From d70f57c3da95fc54dfd702cb3d521cc3a9cc9850 Mon Sep 17 00:00:00 2001
+From c2e01cfa50e61bc7da5a2bdfe75469dbaec0dc9d Mon Sep 17 00:00:00 2001
 From: Tim Gover <tgover at broadcom.com>
 Date: Tue, 22 Jul 2014 15:41:04 +0100
-Subject: [PATCH 039/156] vcsm: VideoCore shared memory service for BCM2835
+Subject: [PATCH 039/168] vcsm: VideoCore shared memory service for BCM2835
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0040-Add-dev-gpiomem-device-for-rootless-user-GPIO-access.patch b/target/linux/brcm2708/patches-4.4/0040-Add-dev-gpiomem-device-for-rootless-user-GPIO-access.patch
index 240aab9..9803914 100644
--- a/target/linux/brcm2708/patches-4.4/0040-Add-dev-gpiomem-device-for-rootless-user-GPIO-access.patch
+++ b/target/linux/brcm2708/patches-4.4/0040-Add-dev-gpiomem-device-for-rootless-user-GPIO-access.patch
@@ -1,7 +1,7 @@
-From a582dfc468cbb9176054bdcc02dce40a0e0441e6 Mon Sep 17 00:00:00 2001
+From 5ed8955a5151c829e1f3574a0f4ebc2dddbe823c Mon Sep 17 00:00:00 2001
 From: Luke Wren <luke at raspberrypi.org>
 Date: Fri, 21 Aug 2015 23:14:48 +0100
-Subject: [PATCH 040/156] Add /dev/gpiomem device for rootless user GPIO access
+Subject: [PATCH 040/168] Add /dev/gpiomem device for rootless user GPIO access
 
 Signed-off-by: Luke Wren <luke at raspberrypi.org>
 
diff --git a/target/linux/brcm2708/patches-4.4/0041-Add-SMI-driver.patch b/target/linux/brcm2708/patches-4.4/0041-Add-SMI-driver.patch
index a0da87a..269ee85 100644
--- a/target/linux/brcm2708/patches-4.4/0041-Add-SMI-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0041-Add-SMI-driver.patch
@@ -1,7 +1,7 @@
-From 7ccd5e32f6e98f1522a3e471e4afeef564497264 Mon Sep 17 00:00:00 2001
+From fae999f2f5a54404c30b4db0f1f37f7726a1794e Mon Sep 17 00:00:00 2001
 From: Luke Wren <wren6991 at gmail.com>
 Date: Sat, 5 Sep 2015 01:14:45 +0100
-Subject: [PATCH 041/156] Add SMI driver
+Subject: [PATCH 041/168] Add SMI driver
 
 Signed-off-by: Luke Wren <wren6991 at gmail.com>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0042-Add-SMI-NAND-driver.patch b/target/linux/brcm2708/patches-4.4/0042-Add-SMI-NAND-driver.patch
index 2807310..65d4388 100644
--- a/target/linux/brcm2708/patches-4.4/0042-Add-SMI-NAND-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0042-Add-SMI-NAND-driver.patch
@@ -1,7 +1,7 @@
-From 06301e219cb176ca2917ad7e51fc9cf9897cf52b Mon Sep 17 00:00:00 2001
+From c6f11578e6ffe1729fb542876e05a15397fa5284 Mon Sep 17 00:00:00 2001
 From: Luke Wren <wren6991 at gmail.com>
 Date: Sat, 5 Sep 2015 01:16:10 +0100
-Subject: [PATCH 042/156] Add SMI NAND driver
+Subject: [PATCH 042/168] Add SMI NAND driver
 
 Signed-off-by: Luke Wren <wren6991 at gmail.com>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0043-lirc-added-support-for-RaspberryPi-GPIO.patch b/target/linux/brcm2708/patches-4.4/0043-lirc-added-support-for-RaspberryPi-GPIO.patch
index 466bea3..aa505d7 100644
--- a/target/linux/brcm2708/patches-4.4/0043-lirc-added-support-for-RaspberryPi-GPIO.patch
+++ b/target/linux/brcm2708/patches-4.4/0043-lirc-added-support-for-RaspberryPi-GPIO.patch
@@ -1,7 +1,7 @@
-From 38d02987b33c187e2a02794c0b97c28d270f1d9b Mon Sep 17 00:00:00 2001
+From cda9c9e9471e02232446b190af873bd73005ba12 Mon Sep 17 00:00:00 2001
 From: Aron Szabo <aron at aron.ws>
 Date: Sat, 16 Jun 2012 12:15:55 +0200
-Subject: [PATCH 043/156] lirc: added support for RaspberryPi GPIO
+Subject: [PATCH 043/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0044-Add-cpufreq-driver.patch b/target/linux/brcm2708/patches-4.4/0044-Add-cpufreq-driver.patch
index 3d48bf9..8606b56 100644
--- a/target/linux/brcm2708/patches-4.4/0044-Add-cpufreq-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0044-Add-cpufreq-driver.patch
@@ -1,7 +1,7 @@
-From c2a1eecef94520be7c785cf6d23aca9c695122f5 Mon Sep 17 00:00:00 2001
+From 4286563db25efb9a1afeb9e98d101d3835301864 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 3 Jul 2013 00:49:20 +0100
-Subject: [PATCH 044/156] Add cpufreq driver
+Subject: [PATCH 044/168] Add cpufreq driver
 
 Signed-off-by: popcornmix <popcornmix at gmail.com>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0045-Added-hwmon-thermal-driver-for-reporting-core-temper.patch b/target/linux/brcm2708/patches-4.4/0045-Added-hwmon-thermal-driver-for-reporting-core-temper.patch
index 72af401..ca461da 100644
--- a/target/linux/brcm2708/patches-4.4/0045-Added-hwmon-thermal-driver-for-reporting-core-temper.patch
+++ b/target/linux/brcm2708/patches-4.4/0045-Added-hwmon-thermal-driver-for-reporting-core-temper.patch
@@ -1,7 +1,7 @@
-From 76ad29cef7e6dc73d7f9c3cd3578783d1daefa6d Mon Sep 17 00:00:00 2001
+From 5963457da8dfb3943f0a0f1be861f43b3e7c628a Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Tue, 26 Mar 2013 19:24:24 +0000
-Subject: [PATCH 045/156] Added hwmon/thermal driver for reporting core
+Subject: [PATCH 045/168] Added hwmon/thermal driver for reporting core
  temperature. Thanks Dorian
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
diff --git a/target/linux/brcm2708/patches-4.4/0046-Add-Chris-Boot-s-i2c-driver.patch b/target/linux/brcm2708/patches-4.4/0046-Add-Chris-Boot-s-i2c-driver.patch
index dec288d..726b073 100644
--- a/target/linux/brcm2708/patches-4.4/0046-Add-Chris-Boot-s-i2c-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0046-Add-Chris-Boot-s-i2c-driver.patch
@@ -1,7 +1,7 @@
-From aac476eac7be9830cbda14fe82afa7d4afbd41d2 Mon Sep 17 00:00:00 2001
+From 5240c216b62c98a51e9d325e751da93f5e7c1292 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 17 Jun 2015 15:44:08 +0100
-Subject: [PATCH 046/156] Add Chris Boot's i2c driver
+Subject: [PATCH 046/168] Add Chris Boot's i2c driver
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0047-char-broadcom-Add-vcio-module.patch b/target/linux/brcm2708/patches-4.4/0047-char-broadcom-Add-vcio-module.patch
index 74b4303..e395cc1 100644
--- a/target/linux/brcm2708/patches-4.4/0047-char-broadcom-Add-vcio-module.patch
+++ b/target/linux/brcm2708/patches-4.4/0047-char-broadcom-Add-vcio-module.patch
@@ -1,7 +1,7 @@
-From 8e1245bf1c5553baec76ccb0deb521df84a3f48f Mon Sep 17 00:00:00 2001
+From f4352fa5ac8fa3a97bf67a8eda8fd6aaf3a7275f Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Fri, 26 Jun 2015 14:27:06 +0200
-Subject: [PATCH 047/156] char: broadcom: Add vcio module
+Subject: [PATCH 047/168] char: broadcom: Add vcio module
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0048-firmware-bcm2835-Support-ARCH_BCM270x.patch b/target/linux/brcm2708/patches-4.4/0048-firmware-bcm2835-Support-ARCH_BCM270x.patch
index e574082..59001d4 100644
--- a/target/linux/brcm2708/patches-4.4/0048-firmware-bcm2835-Support-ARCH_BCM270x.patch
+++ b/target/linux/brcm2708/patches-4.4/0048-firmware-bcm2835-Support-ARCH_BCM270x.patch
@@ -1,7 +1,7 @@
-From bf182799da48b6072c783fed452a752715b9b479 Mon Sep 17 00:00:00 2001
+From 0af54c15f6e3658e86d3a2043f81a3386427d089 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Fri, 26 Jun 2015 14:25:01 +0200
-Subject: [PATCH 048/156] firmware: bcm2835: Support ARCH_BCM270x
+Subject: [PATCH 048/168] firmware: bcm2835: Support ARCH_BCM270x
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0049-bcm2835-add-v4l2-camera-device.patch b/target/linux/brcm2708/patches-4.4/0049-bcm2835-add-v4l2-camera-device.patch
index ca6ddeb..5282e30 100644
--- a/target/linux/brcm2708/patches-4.4/0049-bcm2835-add-v4l2-camera-device.patch
+++ b/target/linux/brcm2708/patches-4.4/0049-bcm2835-add-v4l2-camera-device.patch
@@ -1,7 +1,7 @@
-From f4ccd72c0038efded59351ceb59dc0a1f227890c Mon Sep 17 00:00:00 2001
+From fcb6ac97c9bfcdc9a2a27231199f90e7614510a7 Mon Sep 17 00:00:00 2001
 From: Vincent Sanders <vincent.sanders at collabora.co.uk>
 Date: Wed, 30 Jan 2013 12:45:18 +0000
-Subject: [PATCH 049/156] bcm2835: add v4l2 camera device
+Subject: [PATCH 049/168] bcm2835: add v4l2 camera device
 
 - Supports raw YUV capture, preview, JPEG and H264.
 - Uses videobuf2 for data transfer, using dma_buf.
diff --git a/target/linux/brcm2708/patches-4.4/0050-scripts-Add-mkknlimg-and-knlinfo-scripts-from-tools-.patch b/target/linux/brcm2708/patches-4.4/0050-scripts-Add-mkknlimg-and-knlinfo-scripts-from-tools-.patch
index a73ed2b..a6287f2 100644
--- a/target/linux/brcm2708/patches-4.4/0050-scripts-Add-mkknlimg-and-knlinfo-scripts-from-tools-.patch
+++ b/target/linux/brcm2708/patches-4.4/0050-scripts-Add-mkknlimg-and-knlinfo-scripts-from-tools-.patch
@@ -1,7 +1,7 @@
-From a98c2f7958c16abd5d1536f80c241ec83ee99b86 Mon Sep 17 00:00:00 2001
+From 635e933db39f5f84ef6b1a714eb62c454d53e1ba Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 11 May 2015 09:00:42 +0100
-Subject: [PATCH 050/156] scripts: Add mkknlimg and knlinfo scripts from tools
+Subject: [PATCH 050/168] scripts: Add mkknlimg and knlinfo scripts from tools
  repo
 
 The Raspberry Pi firmware looks for a trailer on the kernel image to
diff --git a/target/linux/brcm2708/patches-4.4/0051-fdt-Add-support-for-the-CONFIG_CMDLINE_EXTEND-option.patch b/target/linux/brcm2708/patches-4.4/0051-fdt-Add-support-for-the-CONFIG_CMDLINE_EXTEND-option.patch
index 662834d..9f935ba 100644
--- a/target/linux/brcm2708/patches-4.4/0051-fdt-Add-support-for-the-CONFIG_CMDLINE_EXTEND-option.patch
+++ b/target/linux/brcm2708/patches-4.4/0051-fdt-Add-support-for-the-CONFIG_CMDLINE_EXTEND-option.patch
@@ -1,7 +1,7 @@
-From eafa669fc02f9d7aa9d6fb0376558217d5d432e1 Mon Sep 17 00:00:00 2001
+From fcb412174e34332e9fbf3e2bb8825e05dadbf309 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 5 Dec 2014 17:26:26 +0000
-Subject: [PATCH 051/156] fdt: Add support for the CONFIG_CMDLINE_EXTEND option
+Subject: [PATCH 051/168] fdt: Add support for the CONFIG_CMDLINE_EXTEND option
 
 ---
  drivers/of/fdt.c | 29 ++++++++++++++++++++++++-----
diff --git a/target/linux/brcm2708/patches-4.4/0052-BCM2708-Add-core-Device-Tree-support.patch b/target/linux/brcm2708/patches-4.4/0052-BCM2708-Add-core-Device-Tree-support.patch
index 12e7b86..8d7586e 100644
--- a/target/linux/brcm2708/patches-4.4/0052-BCM2708-Add-core-Device-Tree-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0052-BCM2708-Add-core-Device-Tree-support.patch
@@ -1,7 +1,7 @@
-From 1bf87715f0e3eb28ca753ec6cc4d189e8bc0de66 Mon Sep 17 00:00:00 2001
+From 19ff438f15d8bb788ef6b8b732ab9f46fbbe30c6 Mon Sep 17 00:00:00 2001
 From: notro <notro at tronnes.org>
 Date: Wed, 9 Jul 2014 14:46:08 +0200
-Subject: [PATCH 052/156] BCM2708: Add core Device Tree support
+Subject: [PATCH 052/168] BCM2708: Add core Device Tree support
 
 Add the bare minimum needed to boot BCM2708 from a Device Tree.
 
diff --git a/target/linux/brcm2708/patches-4.4/0053-bcm2835-Match-with-BCM2708-Device-Trees.patch b/target/linux/brcm2708/patches-4.4/0053-bcm2835-Match-with-BCM2708-Device-Trees.patch
index 25e0c6b..3263659 100644
--- a/target/linux/brcm2708/patches-4.4/0053-bcm2835-Match-with-BCM2708-Device-Trees.patch
+++ b/target/linux/brcm2708/patches-4.4/0053-bcm2835-Match-with-BCM2708-Device-Trees.patch
@@ -1,7 +1,7 @@
-From 3ee2870ef7f0aa7c48a7cd1ae532aa9e1ac4f6ce Mon Sep 17 00:00:00 2001
+From 93bcb73d169d1788f76a959e20fc638db7eb0d2f Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Sat, 15 Aug 2015 20:47:07 +0200
-Subject: [PATCH 053/156] bcm2835: Match with BCM2708 Device Trees
+Subject: [PATCH 053/168] bcm2835: Match with BCM2708 Device Trees
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0054-fbdev-add-FBIOCOPYAREA-ioctl.patch b/target/linux/brcm2708/patches-4.4/0054-fbdev-add-FBIOCOPYAREA-ioctl.patch
index 6f6ebb5..d10104a 100644
--- a/target/linux/brcm2708/patches-4.4/0054-fbdev-add-FBIOCOPYAREA-ioctl.patch
+++ b/target/linux/brcm2708/patches-4.4/0054-fbdev-add-FBIOCOPYAREA-ioctl.patch
@@ -1,7 +1,7 @@
-From 1d6ca03eff36dc3d5675554fb1cb4db6ebeb7e74 Mon Sep 17 00:00:00 2001
+From 7adac11facda40260108198d60e648b4075c379b Mon Sep 17 00:00:00 2001
 From: Siarhei Siamashka <siarhei.siamashka at gmail.com>
 Date: Mon, 17 Jun 2013 13:32:11 +0300
-Subject: [PATCH 054/156] fbdev: add FBIOCOPYAREA ioctl
+Subject: [PATCH 054/168] fbdev: add FBIOCOPYAREA ioctl
 
 Based on the patch authored by Ali Gholami Rudi at
     https://lkml.org/lkml/2009/7/13/153
diff --git a/target/linux/brcm2708/patches-4.4/0058-Speed-up-console-framebuffer-imageblit-function.patch b/target/linux/brcm2708/patches-4.4/0058-Speed-up-console-framebuffer-imageblit-function.patch
index dc3fb81..4e0943e 100644
--- a/target/linux/brcm2708/patches-4.4/0058-Speed-up-console-framebuffer-imageblit-function.patch
+++ b/target/linux/brcm2708/patches-4.4/0058-Speed-up-console-framebuffer-imageblit-function.patch
@@ -1,7 +1,7 @@
-From b070d3d1d6e0896607f3f4978c072cc33af62f80 Mon Sep 17 00:00:00 2001
+From 640ecbe7294a916696be388eeec36079e083e3aa Mon Sep 17 00:00:00 2001
 From: Harm Hanemaaijer <fgenfb at yahoo.com>
 Date: Thu, 20 Jun 2013 20:21:39 +0200
-Subject: [PATCH 058/156] Speed up console framebuffer imageblit function
+Subject: [PATCH 058/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0059-Allow-mac-address-to-be-set-in-smsc95xx.patch b/target/linux/brcm2708/patches-4.4/0059-Allow-mac-address-to-be-set-in-smsc95xx.patch
index e3d2687..c19fac9 100644
--- a/target/linux/brcm2708/patches-4.4/0059-Allow-mac-address-to-be-set-in-smsc95xx.patch
+++ b/target/linux/brcm2708/patches-4.4/0059-Allow-mac-address-to-be-set-in-smsc95xx.patch
@@ -1,7 +1,7 @@
-From 4a5e988e0730b19eaca3df7c279d9b38f69e9860 Mon Sep 17 00:00:00 2001
+From 123c2c4f326b503f7b314392038be549b63d884c Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Tue, 26 Mar 2013 17:26:38 +0000
-Subject: [PATCH 059/156] Allow mac address to be set in smsc95xx
+Subject: [PATCH 059/168] Allow mac address to be set in smsc95xx
 
 Signed-off-by: popcornmix <popcornmix at gmail.com>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0060-enabling-the-realtime-clock-1-wire-chip-DS1307-and-1.patch b/target/linux/brcm2708/patches-4.4/0060-enabling-the-realtime-clock-1-wire-chip-DS1307-and-1.patch
index 8ed4c08..5112c83 100644
--- a/target/linux/brcm2708/patches-4.4/0060-enabling-the-realtime-clock-1-wire-chip-DS1307-and-1.patch
+++ b/target/linux/brcm2708/patches-4.4/0060-enabling-the-realtime-clock-1-wire-chip-DS1307-and-1.patch
@@ -1,7 +1,7 @@
-From 4d386cf6aeac54f49224ac0b400cf58c6ba227d9 Mon Sep 17 00:00:00 2001
+From 8a8e0a6fdad100be16dadc83978715b614233403 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 8 May 2013 11:46:50 +0100
-Subject: [PATCH 060/156] enabling the realtime clock 1-wire chip DS1307 and
+Subject: [PATCH 060/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0061-Added-Device-IDs-for-August-DVB-T-205.patch b/target/linux/brcm2708/patches-4.4/0061-Added-Device-IDs-for-August-DVB-T-205.patch
index 915cac7..45d46d9 100644
--- a/target/linux/brcm2708/patches-4.4/0061-Added-Device-IDs-for-August-DVB-T-205.patch
+++ b/target/linux/brcm2708/patches-4.4/0061-Added-Device-IDs-for-August-DVB-T-205.patch
@@ -1,7 +1,7 @@
-From dbdc294a9b911c943d5214fefb5143e40dba056d Mon Sep 17 00:00:00 2001
+From 55390fc970567047c5c6eed5c20eafb90ba8897c Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 3 Jul 2013 00:54:08 +0100
-Subject: [PATCH 061/156] Added Device IDs for August DVB-T 205
+Subject: [PATCH 061/168] Added Device IDs for August DVB-T 205
 
 ---
  drivers/media/usb/dvb-usb-v2/rtl28xxu.c | 4 ++++
diff --git a/target/linux/brcm2708/patches-4.4/0062-config-Enable-CONFIG_MEMCG-but-leave-it-disabled-due.patch b/target/linux/brcm2708/patches-4.4/0062-config-Enable-CONFIG_MEMCG-but-leave-it-disabled-due.patch
index 03a603c..d7ae3d2 100644
--- a/target/linux/brcm2708/patches-4.4/0062-config-Enable-CONFIG_MEMCG-but-leave-it-disabled-due.patch
+++ b/target/linux/brcm2708/patches-4.4/0062-config-Enable-CONFIG_MEMCG-but-leave-it-disabled-due.patch
@@ -1,7 +1,7 @@
-From 3bbfaaf97f167d4f889c41822c4e767947fd1995 Mon Sep 17 00:00:00 2001
+From b44cec45cada85521193a20dd68db914eb6061f2 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 18 Dec 2013 22:16:19 +0000
-Subject: [PATCH 062/156] config: Enable CONFIG_MEMCG, but leave it disabled
+Subject: [PATCH 062/168] config: Enable CONFIG_MEMCG, but leave it disabled
  (due to memory cost). Enable with cgroup_enable=memory.
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0063-ASoC-Add-support-for-PCM5102A-codec.patch b/target/linux/brcm2708/patches-4.4/0063-ASoC-Add-support-for-PCM5102A-codec.patch
index 689c341..95ab327 100644
--- a/target/linux/brcm2708/patches-4.4/0063-ASoC-Add-support-for-PCM5102A-codec.patch
+++ b/target/linux/brcm2708/patches-4.4/0063-ASoC-Add-support-for-PCM5102A-codec.patch
@@ -1,7 +1,7 @@
-From 58218d451343867c4b18909c7c11cd348a6ce343 Mon Sep 17 00:00:00 2001
+From 0ced3034dc9f65650b2a6cf1224c54e257fee031 Mon Sep 17 00:00:00 2001
 From: Florian Meier <florian.meier at koalo.de>
 Date: Fri, 22 Nov 2013 14:59:51 +0100
-Subject: [PATCH 063/156] ASoC: Add support for PCM5102A codec
+Subject: [PATCH 063/168] ASoC: Add support for PCM5102A codec
 
 Some definitions to support the PCM5102A codec
 by Texas Instruments.
diff --git a/target/linux/brcm2708/patches-4.4/0064-ASoC-Add-support-for-HifiBerry-DAC.patch b/target/linux/brcm2708/patches-4.4/0064-ASoC-Add-support-for-HifiBerry-DAC.patch
index f9721f7..261ff27 100644
--- a/target/linux/brcm2708/patches-4.4/0064-ASoC-Add-support-for-HifiBerry-DAC.patch
+++ b/target/linux/brcm2708/patches-4.4/0064-ASoC-Add-support-for-HifiBerry-DAC.patch
@@ -1,7 +1,7 @@
-From 062c5f7da781aac9e13c959e6b84359cc71e790e Mon Sep 17 00:00:00 2001
+From 167fcf7906091c22b3b69f357d1c22ee985fc067 Mon Sep 17 00:00:00 2001
 From: Florian Meier <florian.meier at koalo.de>
 Date: Fri, 22 Nov 2013 19:19:08 +0100
-Subject: [PATCH 064/156] ASoC: Add support for HifiBerry DAC
+Subject: [PATCH 064/168] ASoC: Add support for HifiBerry DAC
 
 This adds a machine driver for the HifiBerry DAC.
 It is a sound card that can
diff --git a/target/linux/brcm2708/patches-4.4/0065-ASoC-Add-support-for-Rpi-DAC.patch b/target/linux/brcm2708/patches-4.4/0065-ASoC-Add-support-for-Rpi-DAC.patch
index e4885f7..329556d 100644
--- a/target/linux/brcm2708/patches-4.4/0065-ASoC-Add-support-for-Rpi-DAC.patch
+++ b/target/linux/brcm2708/patches-4.4/0065-ASoC-Add-support-for-Rpi-DAC.patch
@@ -1,7 +1,7 @@
-From 698c90d19c77b07426d8b5825d7053b8ba5d8bc3 Mon Sep 17 00:00:00 2001
+From 9423093cab907ef169e58e6eb955bbec7da3b8b3 Mon Sep 17 00:00:00 2001
 From: Florian Meier <florian.meier at koalo.de>
 Date: Fri, 22 Nov 2013 19:21:34 +0100
-Subject: [PATCH 065/156] ASoC: Add support for Rpi-DAC
+Subject: [PATCH 065/168] ASoC: Add support for Rpi-DAC
 
 ---
  sound/soc/bcm/Kconfig       |   7 +++
diff --git a/target/linux/brcm2708/patches-4.4/0066-ASoC-wm8804-Implement-MCLK-configuration-options-add.patch b/target/linux/brcm2708/patches-4.4/0066-ASoC-wm8804-Implement-MCLK-configuration-options-add.patch
index 944812b..8421ab5 100644
--- a/target/linux/brcm2708/patches-4.4/0066-ASoC-wm8804-Implement-MCLK-configuration-options-add.patch
+++ b/target/linux/brcm2708/patches-4.4/0066-ASoC-wm8804-Implement-MCLK-configuration-options-add.patch
@@ -1,7 +1,7 @@
-From 41b19bff4474377f327d058488e1424ad74452e3 Mon Sep 17 00:00:00 2001
+From b33f525c8cdb727f8c54cf9b6a17c7186534d97b Mon Sep 17 00:00:00 2001
 From: Daniel Matuschek <info at crazy-audio.com>
 Date: Wed, 15 Jan 2014 21:41:23 +0100
-Subject: [PATCH 066/156] ASoC: wm8804: Implement MCLK configuration options,
+Subject: [PATCH 066/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0067-ASoC-BCM-Add-support-for-HiFiBerry-Digi.-Driver-is-b.patch b/target/linux/brcm2708/patches-4.4/0067-ASoC-BCM-Add-support-for-HiFiBerry-Digi.-Driver-is-b.patch
index d70bf53..e817487 100644
--- a/target/linux/brcm2708/patches-4.4/0067-ASoC-BCM-Add-support-for-HiFiBerry-Digi.-Driver-is-b.patch
+++ b/target/linux/brcm2708/patches-4.4/0067-ASoC-BCM-Add-support-for-HiFiBerry-Digi.-Driver-is-b.patch
@@ -1,7 +1,7 @@
-From 7408f4b6cc7b535f9af624a5a7da7e8012448acd Mon Sep 17 00:00:00 2001
+From 988b6534fdc24961f929eaaa5963807fb9211dca Mon Sep 17 00:00:00 2001
 From: Daniel Matuschek <info at crazy-audio.com>
 Date: Wed, 15 Jan 2014 21:42:08 +0100
-Subject: [PATCH 067/156] ASoC: BCM:Add support for HiFiBerry Digi. Driver is
+Subject: [PATCH 067/168] ASoC: BCM:Add support for HiFiBerry Digi. Driver is
  based on the patched WM8804 driver.
 
 Signed-off-by: Daniel Matuschek <daniel at matuschek.net>
diff --git a/target/linux/brcm2708/patches-4.4/0068-ASoC-wm8804-Set-idle_bias_off-to-false-Idle-bias-has.patch b/target/linux/brcm2708/patches-4.4/0068-ASoC-wm8804-Set-idle_bias_off-to-false-Idle-bias-has.patch
index 9ede8fd..62e2d57 100644
--- a/target/linux/brcm2708/patches-4.4/0068-ASoC-wm8804-Set-idle_bias_off-to-false-Idle-bias-has.patch
+++ b/target/linux/brcm2708/patches-4.4/0068-ASoC-wm8804-Set-idle_bias_off-to-false-Idle-bias-has.patch
@@ -1,7 +1,7 @@
-From b44c52875239b2e3ae992ca27212f71b8f77765f Mon Sep 17 00:00:00 2001
+From e2a013dae5d99243d060b102a551c732c8892f6e Mon Sep 17 00:00:00 2001
 From: Daniel Matuschek <info at crazy-audio.com>
 Date: Thu, 16 Jan 2014 07:36:35 +0100
-Subject: [PATCH 068/156] ASoC: wm8804: Set idle_bias_off to false Idle bias
+Subject: [PATCH 068/168] ASoC: wm8804: Set idle_bias_off to false Idle bias
  has been change to remove warning on driver startup
 
 Signed-off-by: Daniel Matuschek <daniel at matuschek.net>
diff --git a/target/linux/brcm2708/patches-4.4/0069-Add-IQaudIO-Sound-Card-support-for-Raspberry-Pi.patch b/target/linux/brcm2708/patches-4.4/0069-Add-IQaudIO-Sound-Card-support-for-Raspberry-Pi.patch
index 42bbb41..44d3c61 100644
--- a/target/linux/brcm2708/patches-4.4/0069-Add-IQaudIO-Sound-Card-support-for-Raspberry-Pi.patch
+++ b/target/linux/brcm2708/patches-4.4/0069-Add-IQaudIO-Sound-Card-support-for-Raspberry-Pi.patch
@@ -1,7 +1,7 @@
-From 5c7f1224804dd5dc7d5dbcd208432261266f7595 Mon Sep 17 00:00:00 2001
+From df9e40355c65455ac09e776d4be72bc741cc15c7 Mon Sep 17 00:00:00 2001
 From: Gordon Garrity <gordon at iqaudio.com>
 Date: Sat, 8 Mar 2014 16:56:57 +0000
-Subject: [PATCH 069/156] Add IQaudIO Sound Card support for Raspberry Pi
+Subject: [PATCH 069/168] Add IQaudIO Sound Card support for Raspberry Pi
 
 Set a limit of 0dB on Digital Volume Control
 
diff --git a/target/linux/brcm2708/patches-4.4/0070-hid-Reduce-default-mouse-polling-interval-to-60Hz.patch b/target/linux/brcm2708/patches-4.4/0070-hid-Reduce-default-mouse-polling-interval-to-60Hz.patch
index 98704e5..9c93348 100644
--- a/target/linux/brcm2708/patches-4.4/0070-hid-Reduce-default-mouse-polling-interval-to-60Hz.patch
+++ b/target/linux/brcm2708/patches-4.4/0070-hid-Reduce-default-mouse-polling-interval-to-60Hz.patch
@@ -1,7 +1,7 @@
-From 6804db582a5c59d572eb0d4b5fb84204928e33bf Mon Sep 17 00:00:00 2001
+From 5cd803e46b6c27eec5100e0c54cfce282594c18e Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Mon, 14 Jul 2014 22:02:09 +0100
-Subject: [PATCH 070/156] hid: Reduce default mouse polling interval to 60Hz
+Subject: [PATCH 070/168] hid: Reduce default mouse polling interval to 60Hz
 
 Reduces overhead when using X
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0071-Added-support-for-HiFiBerry-DAC.patch b/target/linux/brcm2708/patches-4.4/0071-Added-support-for-HiFiBerry-DAC.patch
index dc88906..d73dd27 100644
--- a/target/linux/brcm2708/patches-4.4/0071-Added-support-for-HiFiBerry-DAC.patch
+++ b/target/linux/brcm2708/patches-4.4/0071-Added-support-for-HiFiBerry-DAC.patch
@@ -1,7 +1,7 @@
-From cfa429e2830a4a720740098790f4a5fe8fca0486 Mon Sep 17 00:00:00 2001
+From c5af62cb34849f923c4d56e77dbd05f3601f66de Mon Sep 17 00:00:00 2001
 From: Daniel Matuschek <info at crazy-audio.com>
 Date: Mon, 4 Aug 2014 10:06:56 +0200
-Subject: [PATCH 071/156] Added support for HiFiBerry DAC+
+Subject: [PATCH 071/168] 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.
diff --git a/target/linux/brcm2708/patches-4.4/0072-Added-driver-for-HiFiBerry-Amp-amplifier-add-on-boar.patch b/target/linux/brcm2708/patches-4.4/0072-Added-driver-for-HiFiBerry-Amp-amplifier-add-on-boar.patch
index d50ff6a..bb0a2b5 100644
--- a/target/linux/brcm2708/patches-4.4/0072-Added-driver-for-HiFiBerry-Amp-amplifier-add-on-boar.patch
+++ b/target/linux/brcm2708/patches-4.4/0072-Added-driver-for-HiFiBerry-Amp-amplifier-add-on-boar.patch
@@ -1,7 +1,7 @@
-From eb7a554225c0ac786a6795f330b8ccf7454b5ff8 Mon Sep 17 00:00:00 2001
+From b7fa2fcfbeb3e4a311f1e7156ea09cd405b3732d Mon Sep 17 00:00:00 2001
 From: Daniel Matuschek <info at crazy-audio.com>
 Date: Mon, 4 Aug 2014 11:09:58 +0200
-Subject: [PATCH 072/156] Added driver for HiFiBerry Amp amplifier add-on board
+Subject: [PATCH 072/168] 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.
diff --git a/target/linux/brcm2708/patches-4.4/0073-Update-ds1307-driver-for-device-tree-support.patch b/target/linux/brcm2708/patches-4.4/0073-Update-ds1307-driver-for-device-tree-support.patch
index 956b053..1e48477 100644
--- a/target/linux/brcm2708/patches-4.4/0073-Update-ds1307-driver-for-device-tree-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0073-Update-ds1307-driver-for-device-tree-support.patch
@@ -1,7 +1,7 @@
-From 0944a852d7cc31e1112559b6f6bc2d81724c96a3 Mon Sep 17 00:00:00 2001
+From 859e650e04952a1b36c032c4d0453d57a6ee38a6 Mon Sep 17 00:00:00 2001
 From: Ryan Coe <bluemrp9 at gmail.com>
 Date: Sat, 31 Jan 2015 18:25:49 -0700
-Subject: [PATCH 073/156] Update ds1307 driver for device-tree support
+Subject: [PATCH 073/168] Update ds1307 driver for device-tree support
 
 Signed-off-by: Ryan Coe <bluemrp9 at gmail.com>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0074-BCM270x_DT-Add-pwr_led-and-the-required-input-trigge.patch b/target/linux/brcm2708/patches-4.4/0074-BCM270x_DT-Add-pwr_led-and-the-required-input-trigge.patch
index 506068e..8cbdcd2 100644
--- a/target/linux/brcm2708/patches-4.4/0074-BCM270x_DT-Add-pwr_led-and-the-required-input-trigge.patch
+++ b/target/linux/brcm2708/patches-4.4/0074-BCM270x_DT-Add-pwr_led-and-the-required-input-trigge.patch
@@ -1,7 +1,7 @@
-From 70cae40081cad507c562148d047afe05334675ad Mon Sep 17 00:00:00 2001
+From e84ef9a6e6bdc501869136135afc8d5c1514d306 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 6 Feb 2015 13:50:57 +0000
-Subject: [PATCH 074/156] BCM270x_DT: Add pwr_led, and the required "input"
+Subject: [PATCH 074/168] BCM270x_DT: Add pwr_led, and the required "input"
  trigger
 
 The "input" trigger makes the associated GPIO an input.  This is to support
diff --git a/target/linux/brcm2708/patches-4.4/0075-enc28j60-Add-device-tree-compatible-string-and-an-ov.patch b/target/linux/brcm2708/patches-4.4/0075-enc28j60-Add-device-tree-compatible-string-and-an-ov.patch
index 7aa80d2..bfbc100 100644
--- a/target/linux/brcm2708/patches-4.4/0075-enc28j60-Add-device-tree-compatible-string-and-an-ov.patch
+++ b/target/linux/brcm2708/patches-4.4/0075-enc28j60-Add-device-tree-compatible-string-and-an-ov.patch
@@ -1,7 +1,7 @@
-From e697bb5943f0c2c51bedc7b194059ea4da1e26f7 Mon Sep 17 00:00:00 2001
+From 54d7e76ee9be5f2a0acd21bb37b797fc96157bec Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 27 Feb 2015 15:10:24 +0000
-Subject: [PATCH 075/156] enc28j60: Add device tree compatible string and an
+Subject: [PATCH 075/168] enc28j60: Add device tree compatible string and an
  overlay
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0076-Add-driver-for-rpi-proto.patch b/target/linux/brcm2708/patches-4.4/0076-Add-driver-for-rpi-proto.patch
index 4b57a99..e351379 100644
--- a/target/linux/brcm2708/patches-4.4/0076-Add-driver-for-rpi-proto.patch
+++ b/target/linux/brcm2708/patches-4.4/0076-Add-driver-for-rpi-proto.patch
@@ -1,7 +1,7 @@
-From 8a8d68121ff5145452a0645123119847ddba9396 Mon Sep 17 00:00:00 2001
+From d264ac63d491c11ffaa84d6b767b92a71adce588 Mon Sep 17 00:00:00 2001
 From: Waldemar Brodkorb <wbrodkorb at conet.de>
 Date: Wed, 25 Mar 2015 09:26:17 +0100
-Subject: [PATCH 076/156] Add driver for rpi-proto
+Subject: [PATCH 076/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0077-config-Add-default-configs.patch b/target/linux/brcm2708/patches-4.4/0077-config-Add-default-configs.patch
index 2b6e42c..d769dba 100644
--- a/target/linux/brcm2708/patches-4.4/0077-config-Add-default-configs.patch
+++ b/target/linux/brcm2708/patches-4.4/0077-config-Add-default-configs.patch
@@ -1,7 +1,7 @@
-From adc027efa7b5703f0d452fff7a821570776da786 Mon Sep 17 00:00:00 2001
+From bbd2a6a0eb3a2fd47b45c46faa4a34d8058417a1 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Mon, 13 Apr 2015 17:16:29 +0100
-Subject: [PATCH 077/156] config: Add default configs
+Subject: [PATCH 077/168] config: Add default configs
 
 ---
  arch/arm/configs/bcm2709_defconfig | 1254 +++++++++++++++++++++++++++++++++++
diff --git a/target/linux/brcm2708/patches-4.4/0078-bcm2835-bcm2835_defconfig.patch b/target/linux/brcm2708/patches-4.4/0078-bcm2835-bcm2835_defconfig.patch
index 87c57da..76471d3 100644
--- a/target/linux/brcm2708/patches-4.4/0078-bcm2835-bcm2835_defconfig.patch
+++ b/target/linux/brcm2708/patches-4.4/0078-bcm2835-bcm2835_defconfig.patch
@@ -1,7 +1,7 @@
-From d36556c5965dacf7335068a3c4af4613be6268ed Mon Sep 17 00:00:00 2001
+From cc82a1629fcd54cb8ec5360bac4551dc5efddd82 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Wed, 29 Apr 2015 17:24:02 +0200
-Subject: [PATCH 078/156] bcm2835: bcm2835_defconfig
+Subject: [PATCH 078/168] bcm2835: bcm2835_defconfig
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
diff --git a/target/linux/brcm2708/patches-4.4/0079-rpi-ft5406-Add-touchscreen-driver-for-pi-LCD-display.patch b/target/linux/brcm2708/patches-4.4/0079-rpi-ft5406-Add-touchscreen-driver-for-pi-LCD-display.patch
index 399435c..484bc3d 100644
--- a/target/linux/brcm2708/patches-4.4/0079-rpi-ft5406-Add-touchscreen-driver-for-pi-LCD-display.patch
+++ b/target/linux/brcm2708/patches-4.4/0079-rpi-ft5406-Add-touchscreen-driver-for-pi-LCD-display.patch
@@ -1,7 +1,7 @@
-From 3a15b5f0db3f90c4534a01a8631d1d0be94e3957 Mon Sep 17 00:00:00 2001
+From 0a2a40524aefba7404d3709e06b00356423185fa Mon Sep 17 00:00:00 2001
 From: Gordon Hollingworth <gordon at raspberrypi.org>
 Date: Tue, 12 May 2015 14:47:56 +0100
-Subject: [PATCH 079/156] rpi-ft5406: Add touchscreen driver for pi LCD display
+Subject: [PATCH 079/168] rpi-ft5406: Add touchscreen driver for pi LCD display
 
 Fix driver detection failure Check that the buffer response is non-zero meaning the touchscreen was detected
 
diff --git a/target/linux/brcm2708/patches-4.4/0080-Improve-__copy_to_user-and-__copy_from_user-performa.patch b/target/linux/brcm2708/patches-4.4/0080-Improve-__copy_to_user-and-__copy_from_user-performa.patch
index 001e34d..7f44377 100644
--- a/target/linux/brcm2708/patches-4.4/0080-Improve-__copy_to_user-and-__copy_from_user-performa.patch
+++ b/target/linux/brcm2708/patches-4.4/0080-Improve-__copy_to_user-and-__copy_from_user-performa.patch
@@ -1,7 +1,7 @@
-From 2195d7057b15258644aa186dc4784757dfc2291a Mon Sep 17 00:00:00 2001
+From 9d5a11e5546c033a5ac6cb157509b665e52ec88e Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 13 Oct 2014 11:47:53 +0100
-Subject: [PATCH 080/156] Improve __copy_to_user and __copy_from_user
+Subject: [PATCH 080/168] Improve __copy_to_user and __copy_from_user
  performance
 
 Provide a __copy_from_user that uses memcpy. On BCM2708, use
diff --git a/target/linux/brcm2708/patches-4.4/0081-gpio-poweroff-Allow-it-to-work-on-Raspberry-Pi.patch b/target/linux/brcm2708/patches-4.4/0081-gpio-poweroff-Allow-it-to-work-on-Raspberry-Pi.patch
index 90c25d9..50f2dd6 100644
--- a/target/linux/brcm2708/patches-4.4/0081-gpio-poweroff-Allow-it-to-work-on-Raspberry-Pi.patch
+++ b/target/linux/brcm2708/patches-4.4/0081-gpio-poweroff-Allow-it-to-work-on-Raspberry-Pi.patch
@@ -1,7 +1,7 @@
-From 4a8b44e4db451f80235221dd558d95aface19148 Mon Sep 17 00:00:00 2001
+From 0bfaa51b24ba5743bd2505a83a2372d1dd2e79e5 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Thu, 25 Jun 2015 12:16:11 +0100
-Subject: [PATCH 081/156] gpio-poweroff: Allow it to work on Raspberry Pi
+Subject: [PATCH 081/168] 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
diff --git a/target/linux/brcm2708/patches-4.4/0082-spidev-Add-spidev-compatible-string-to-silence-warni.patch b/target/linux/brcm2708/patches-4.4/0082-spidev-Add-spidev-compatible-string-to-silence-warni.patch
index 7673a81..c762e7e 100644
--- a/target/linux/brcm2708/patches-4.4/0082-spidev-Add-spidev-compatible-string-to-silence-warni.patch
+++ b/target/linux/brcm2708/patches-4.4/0082-spidev-Add-spidev-compatible-string-to-silence-warni.patch
@@ -1,7 +1,7 @@
-From 1aae6581fac6cf69e0772d13338b44c90eeab969 Mon Sep 17 00:00:00 2001
+From ea24939d53493c6f4598951360cc73b83084febc Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 14 Jul 2015 10:26:09 +0100
-Subject: [PATCH 082/156] spidev: Add "spidev" compatible string to silence
+Subject: [PATCH 082/168] spidev: Add "spidev" compatible string to silence
  warning
 
 See: https://github.com/raspberrypi/linux/issues/1054
diff --git a/target/linux/brcm2708/patches-4.4/0083-scripts-dtc-Add-overlay-support.patch b/target/linux/brcm2708/patches-4.4/0083-scripts-dtc-Add-overlay-support.patch
index aa03cee..898407f 100644
--- a/target/linux/brcm2708/patches-4.4/0083-scripts-dtc-Add-overlay-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0083-scripts-dtc-Add-overlay-support.patch
@@ -1,7 +1,7 @@
-From 1f1e162b80815e9cb308c14ad4425a314686a813 Mon Sep 17 00:00:00 2001
+From 22eca32e988260e71004c11d3b9e68530ba0dbda Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 14 Jul 2015 17:00:18 +0100
-Subject: [PATCH 083/156] scripts/dtc: Add overlay support
+Subject: [PATCH 083/168] scripts/dtc: Add overlay support
 
 ---
  scripts/dtc/checks.c                 |  119 ++-
diff --git a/target/linux/brcm2708/patches-4.4/0084-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch b/target/linux/brcm2708/patches-4.4/0084-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch
index d07af4d..61f6938 100644
--- a/target/linux/brcm2708/patches-4.4/0084-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0084-mfd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch
@@ -1,7 +1,7 @@
-From b3ca8734955b9bbf611e58444f7e4ab239f5c54a Mon Sep 17 00:00:00 2001
+From 51d5fb1cab3960bd9a7f571a2c93a7233872715b Mon Sep 17 00:00:00 2001
 From: Phil Elwell <pelwell at users.noreply.github.com>
 Date: Tue, 14 Jul 2015 14:32:47 +0100
-Subject: [PATCH 084/156] mfd: Add Raspberry Pi Sense HAT core driver
+Subject: [PATCH 084/168] mfd: Add Raspberry Pi Sense HAT core driver
 
 ---
  drivers/input/joystick/Kconfig           |   8 +
diff --git a/target/linux/brcm2708/patches-4.4/0085-RaspiDAC3-support.patch b/target/linux/brcm2708/patches-4.4/0085-RaspiDAC3-support.patch
index 1531848..9e1bf61 100644
--- a/target/linux/brcm2708/patches-4.4/0085-RaspiDAC3-support.patch
+++ b/target/linux/brcm2708/patches-4.4/0085-RaspiDAC3-support.patch
@@ -1,7 +1,7 @@
-From 305847dcc80fa3e3ffccd0e6c77b45d0a54ed185 Mon Sep 17 00:00:00 2001
+From dff86ffdd5928efdc5fdce1d5c187933500c04c0 Mon Sep 17 00:00:00 2001
 From: Jan Grulich <jan at grulich.eu>
 Date: Mon, 24 Aug 2015 16:03:47 +0100
-Subject: [PATCH 085/156] RaspiDAC3 support
+Subject: [PATCH 085/168] RaspiDAC3 support
 
 Signed-off-by: Jan Grulich <jan at grulich.eu>
 
diff --git a/target/linux/brcm2708/patches-4.4/0086-tpa6130a2-Add-headphone-switch-control.patch b/target/linux/brcm2708/patches-4.4/0086-tpa6130a2-Add-headphone-switch-control.patch
index 1ba13a5..e50402b 100644
--- a/target/linux/brcm2708/patches-4.4/0086-tpa6130a2-Add-headphone-switch-control.patch
+++ b/target/linux/brcm2708/patches-4.4/0086-tpa6130a2-Add-headphone-switch-control.patch
@@ -1,7 +1,7 @@
-From 1f384a47d40c8f7112d6ea3b9b20442a089f63bb Mon Sep 17 00:00:00 2001
+From a865d15839104f87bc02dc5c700bacbd40383fa8 Mon Sep 17 00:00:00 2001
 From: Jan Grulich <jan at grulich.eu>
 Date: Mon, 24 Aug 2015 16:02:34 +0100
-Subject: [PATCH 086/156] tpa6130a2: Add headphone switch control
+Subject: [PATCH 086/168] tpa6130a2: Add headphone switch control
 
 Signed-off-by: Jan Grulich <jan at grulich.eu>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0087-irq-bcm2835-Fix-building-with-2708.patch b/target/linux/brcm2708/patches-4.4/0087-irq-bcm2835-Fix-building-with-2708.patch
index a2d8290..a650c81 100644
--- a/target/linux/brcm2708/patches-4.4/0087-irq-bcm2835-Fix-building-with-2708.patch
+++ b/target/linux/brcm2708/patches-4.4/0087-irq-bcm2835-Fix-building-with-2708.patch
@@ -1,7 +1,7 @@
-From e14cfb794033608cb17a1537d5cceaeb3842c41a Mon Sep 17 00:00:00 2001
+From 19aad31db7c0f6ae08f5f92459f07ed577fd07ae Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Mon, 28 Sep 2015 23:38:59 +0100
-Subject: [PATCH 087/156] irq-bcm2835: Fix building with 2708
+Subject: [PATCH 087/168] irq-bcm2835: Fix building with 2708
 
 ---
  drivers/irqchip/irq-bcm2835.c | 3 ++-
diff --git a/target/linux/brcm2708/patches-4.4/0088-rpi_display-add-backlight-driver-and-overlay.patch b/target/linux/brcm2708/patches-4.4/0088-rpi_display-add-backlight-driver-and-overlay.patch
index 9fa8290..0762929 100644
--- a/target/linux/brcm2708/patches-4.4/0088-rpi_display-add-backlight-driver-and-overlay.patch
+++ b/target/linux/brcm2708/patches-4.4/0088-rpi_display-add-backlight-driver-and-overlay.patch
@@ -1,7 +1,7 @@
-From e6699e6b06d539e29869d751f1cb666192d045c0 Mon Sep 17 00:00:00 2001
+From b5d21ebea4533dccafecb7b436d6fbf5fc087ed9 Mon Sep 17 00:00:00 2001
 From: P33M <P33M at github.com>
 Date: Wed, 21 Oct 2015 14:55:21 +0100
-Subject: [PATCH 088/156] rpi_display: add backlight driver and overlay
+Subject: [PATCH 088/168] rpi_display: add backlight driver and overlay
 
 Add a mailbox-driven backlight controller for the Raspberry Pi DSI
 touchscreen display. Requires updated GPU firmware to recognise the
diff --git a/target/linux/brcm2708/patches-4.4/0089-bcm2835-dma-Fix-up-convert-to-DMA-pool.patch b/target/linux/brcm2708/patches-4.4/0089-bcm2835-dma-Fix-up-convert-to-DMA-pool.patch
index 4ab11d4..c67b0f1 100644
--- a/target/linux/brcm2708/patches-4.4/0089-bcm2835-dma-Fix-up-convert-to-DMA-pool.patch
+++ b/target/linux/brcm2708/patches-4.4/0089-bcm2835-dma-Fix-up-convert-to-DMA-pool.patch
@@ -1,7 +1,7 @@
-From 66bd6f87c5477a16d94c8cf8879919632508813f Mon Sep 17 00:00:00 2001
+From 2790e7787763ffe9993c67f87483d0854e3c5d05 Mon Sep 17 00:00:00 2001
 From: Matthias Reichl <hias at horus.com>
 Date: Mon, 16 Nov 2015 14:05:35 +0000
-Subject: [PATCH 089/156] bcm2835-dma: Fix up convert to DMA pool
+Subject: [PATCH 089/168] bcm2835-dma: Fix up convert to DMA pool
 
 ---
  drivers/dma/bcm2835-dma.c | 36 ++++++++++++++++++++++++++----------
diff --git a/target/linux/brcm2708/patches-4.4/0090-scripts-Multi-platform-support-for-mkknlimg-and-knli.patch b/target/linux/brcm2708/patches-4.4/0090-scripts-Multi-platform-support-for-mkknlimg-and-knli.patch
index 10bd75f..d54d790 100644
--- a/target/linux/brcm2708/patches-4.4/0090-scripts-Multi-platform-support-for-mkknlimg-and-knli.patch
+++ b/target/linux/brcm2708/patches-4.4/0090-scripts-Multi-platform-support-for-mkknlimg-and-knli.patch
@@ -1,7 +1,7 @@
-From 6e5a9e29f92463a7c3e0230f8c8ea9001bda2bff Mon Sep 17 00:00:00 2001
+From 81a9ba8cb5e1640fb363c876e5043288dd7df2e3 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Wed, 11 Nov 2015 11:38:59 +0000
-Subject: [PATCH 090/156] scripts: Multi-platform support for mkknlimg and
+Subject: [PATCH 090/168] scripts: Multi-platform support for mkknlimg and
  knlinfo
 
 The firmware uses tags in the kernel trailer to choose which dtb file
diff --git a/target/linux/brcm2708/patches-4.4/0091-drm-vc4-Add-suport-for-3D-rendering-using-the-V3D-en.patch b/target/linux/brcm2708/patches-4.4/0091-drm-vc4-Add-suport-for-3D-rendering-using-the-V3D-en.patch
index 3814f7b..78d9485 100644
--- a/target/linux/brcm2708/patches-4.4/0091-drm-vc4-Add-suport-for-3D-rendering-using-the-V3D-en.patch
+++ b/target/linux/brcm2708/patches-4.4/0091-drm-vc4-Add-suport-for-3D-rendering-using-the-V3D-en.patch
@@ -1,7 +1,7 @@
-From 9fcd3d8e07364a62bc57770f54a2e1b0b232bb17 Mon Sep 17 00:00:00 2001
+From 64aff3e1cc5856542bc971394e8278177f4eecbb Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 2 Mar 2015 13:01:12 -0800
-Subject: [PATCH 091/156] drm/vc4: Add suport for 3D rendering using the V3D
+Subject: [PATCH 091/168] drm/vc4: Add suport for 3D rendering using the V3D
  engine.
 
 This is a squash of the out-of-tree development series.  Since that
diff --git a/target/linux/brcm2708/patches-4.4/0092-drm-vc4-Force-HDMI-to-connected.patch b/target/linux/brcm2708/patches-4.4/0092-drm-vc4-Force-HDMI-to-connected.patch
index 188b518..e8b6325 100644
--- a/target/linux/brcm2708/patches-4.4/0092-drm-vc4-Force-HDMI-to-connected.patch
+++ b/target/linux/brcm2708/patches-4.4/0092-drm-vc4-Force-HDMI-to-connected.patch
@@ -1,7 +1,7 @@
-From 4fae622e03263fa61e1d56ba13ea8d8802d5e64f Mon Sep 17 00:00:00 2001
+From 2f8913d19dd0b0994eca6d1ba08f0d8f1036181e Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Wed, 14 Oct 2015 11:32:14 -0700
-Subject: [PATCH 092/156] drm/vc4: Force HDMI to connected.
+Subject: [PATCH 092/168] drm/vc4: Force HDMI to connected.
 
 For some reason on the downstream tree, the HPD GPIO isn't working.
 
diff --git a/target/linux/brcm2708/patches-4.4/0093-drm-vc4-bo-cache-locking-fixes.patch b/target/linux/brcm2708/patches-4.4/0093-drm-vc4-bo-cache-locking-fixes.patch
index f73a115..6ce876d 100644
--- a/target/linux/brcm2708/patches-4.4/0093-drm-vc4-bo-cache-locking-fixes.patch
+++ b/target/linux/brcm2708/patches-4.4/0093-drm-vc4-bo-cache-locking-fixes.patch
@@ -1,7 +1,7 @@
-From ca6e3e079d54eae4839bd5d4cf16ed504be66d96 Mon Sep 17 00:00:00 2001
+From e68af71f50daf80fd4bb1bdb6d526f42705e3a7e Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 19 Oct 2015 08:23:18 -0700
-Subject: [PATCH 093/156] drm/vc4: bo cache locking fixes.
+Subject: [PATCH 093/168] drm/vc4: bo cache locking fixes.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0094-drm-vc4-bo-cache-locking-cleanup.patch b/target/linux/brcm2708/patches-4.4/0094-drm-vc4-bo-cache-locking-cleanup.patch
index e6d917b..ff3cfad 100644
--- a/target/linux/brcm2708/patches-4.4/0094-drm-vc4-bo-cache-locking-cleanup.patch
+++ b/target/linux/brcm2708/patches-4.4/0094-drm-vc4-bo-cache-locking-cleanup.patch
@@ -1,7 +1,7 @@
-From 05987e4b471d4408e11e218886015bbd09b13edf Mon Sep 17 00:00:00 2001
+From 52ad82f0b80bc067388958922435c5c3105a0f32 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 19 Oct 2015 08:29:41 -0700
-Subject: [PATCH 094/156] drm/vc4: bo cache locking cleanup.
+Subject: [PATCH 094/168] drm/vc4: bo cache locking cleanup.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0095-drm-vc4-Use-job_lock-to-protect-seqno_cb_list.patch b/target/linux/brcm2708/patches-4.4/0095-drm-vc4-Use-job_lock-to-protect-seqno_cb_list.patch
index a970d04..a9b2c56 100644
--- a/target/linux/brcm2708/patches-4.4/0095-drm-vc4-Use-job_lock-to-protect-seqno_cb_list.patch
+++ b/target/linux/brcm2708/patches-4.4/0095-drm-vc4-Use-job_lock-to-protect-seqno_cb_list.patch
@@ -1,7 +1,7 @@
-From 72d3af528b1ac1e2606d252d49f3f50281976f5c Mon Sep 17 00:00:00 2001
+From 1ab7f53df20611bc607a41ae237b243bffe41f39 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 19 Oct 2015 08:32:24 -0700
-Subject: [PATCH 095/156] drm/vc4: Use job_lock to protect seqno_cb_list.
+Subject: [PATCH 095/168] drm/vc4: Use job_lock to protect seqno_cb_list.
 
 We're (mostly) not supposed to be using struct_mutex in drivers these
 days.
diff --git a/target/linux/brcm2708/patches-4.4/0096-drm-vc4-Drop-struct_mutex-around-CL-validation.patch b/target/linux/brcm2708/patches-4.4/0096-drm-vc4-Drop-struct_mutex-around-CL-validation.patch
index 468ac5a..73a7c33 100644
--- a/target/linux/brcm2708/patches-4.4/0096-drm-vc4-Drop-struct_mutex-around-CL-validation.patch
+++ b/target/linux/brcm2708/patches-4.4/0096-drm-vc4-Drop-struct_mutex-around-CL-validation.patch
@@ -1,7 +1,7 @@
-From 1eba33023a05b04c591b212fbd5d3f19115c49b3 Mon Sep 17 00:00:00 2001
+From 5eecf7feec1660cdcc8d0a4552bbc4e9f84c9ee3 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 19 Oct 2015 08:44:35 -0700
-Subject: [PATCH 096/156] drm/vc4: Drop struct_mutex around CL validation.
+Subject: [PATCH 096/168] drm/vc4: Drop struct_mutex around CL validation.
 
 We were using it so that we could make sure that shader validation
 state didn't change while we were validating, but now shader
diff --git a/target/linux/brcm2708/patches-4.4/0097-drm-vc4-Drop-struct_mutex-around-CL-validation.patch b/target/linux/brcm2708/patches-4.4/0097-drm-vc4-Drop-struct_mutex-around-CL-validation.patch
index 7f14eb7..7184800 100644
--- a/target/linux/brcm2708/patches-4.4/0097-drm-vc4-Drop-struct_mutex-around-CL-validation.patch
+++ b/target/linux/brcm2708/patches-4.4/0097-drm-vc4-Drop-struct_mutex-around-CL-validation.patch
@@ -1,7 +1,7 @@
-From ec1275865fd40eff9420aa4475da0a09a065e381 Mon Sep 17 00:00:00 2001
+From 8206751d5e7043baa5f5f2c2560b3f3d25741818 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 19 Oct 2015 08:44:35 -0700
-Subject: [PATCH 097/156] drm/vc4: Drop struct_mutex around CL validation.
+Subject: [PATCH 097/168] drm/vc4: Drop struct_mutex around CL validation.
 
 We were using it so that we could make sure that shader validation
 state didn't change while we were validating, but now shader
diff --git a/target/linux/brcm2708/patches-4.4/0098-drm-vc4-Add-support-for-more-display-plane-formats.patch b/target/linux/brcm2708/patches-4.4/0098-drm-vc4-Add-support-for-more-display-plane-formats.patch
index a71e3ff..13c843d 100644
--- a/target/linux/brcm2708/patches-4.4/0098-drm-vc4-Add-support-for-more-display-plane-formats.patch
+++ b/target/linux/brcm2708/patches-4.4/0098-drm-vc4-Add-support-for-more-display-plane-formats.patch
@@ -1,7 +1,7 @@
-From 605806b44e12f9e9a88bfab65b5af00c2319edef Mon Sep 17 00:00:00 2001
+From 5cdc8514a72d52012e5ff486d9450e65081c856f Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Tue, 20 Oct 2015 13:59:15 +0100
-Subject: [PATCH 098/156] drm/vc4: Add support for more display plane formats.
+Subject: [PATCH 098/168] drm/vc4: Add support for more display plane formats.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0099-drm-vc4-No-need-to-stop-the-stopped-threads.patch b/target/linux/brcm2708/patches-4.4/0099-drm-vc4-No-need-to-stop-the-stopped-threads.patch
index e4b0572..7a6b3ab 100644
--- a/target/linux/brcm2708/patches-4.4/0099-drm-vc4-No-need-to-stop-the-stopped-threads.patch
+++ b/target/linux/brcm2708/patches-4.4/0099-drm-vc4-No-need-to-stop-the-stopped-threads.patch
@@ -1,7 +1,7 @@
-From 97a02955d447e975998b6e57febd7c304cac4ab1 Mon Sep 17 00:00:00 2001
+From 847acc0fbb40e8ef25f59fc63f95f85b1cfaece6 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 23 Oct 2015 12:31:56 +0100
-Subject: [PATCH 099/156] drm/vc4: No need to stop the stopped threads.
+Subject: [PATCH 099/168] drm/vc4: No need to stop the stopped threads.
 
 This was leftover debug code from the hackdriver.  We never submit
 unless the thread is already idle.
diff --git a/target/linux/brcm2708/patches-4.4/0100-drm-vc4-Remove-extra-barrier-s-aroudn-CTnCA-CTnEA-se.patch b/target/linux/brcm2708/patches-4.4/0100-drm-vc4-Remove-extra-barrier-s-aroudn-CTnCA-CTnEA-se.patch
index 753259d..0843961 100644
--- a/target/linux/brcm2708/patches-4.4/0100-drm-vc4-Remove-extra-barrier-s-aroudn-CTnCA-CTnEA-se.patch
+++ b/target/linux/brcm2708/patches-4.4/0100-drm-vc4-Remove-extra-barrier-s-aroudn-CTnCA-CTnEA-se.patch
@@ -1,7 +1,7 @@
-From 5a0dd0a09aab3f1f82c70ec298d86c794ee65097 Mon Sep 17 00:00:00 2001
+From 699d494febfac7ff6356a9579bf12fe68b5480a9 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 23 Oct 2015 12:33:43 +0100
-Subject: [PATCH 100/156] drm/vc4: Remove extra barrier()s aroudn CTnCA/CTnEA
+Subject: [PATCH 100/168] drm/vc4: Remove extra barrier()s aroudn CTnCA/CTnEA
  setup.
 
 The writel() that these expand to already does barriers.
diff --git a/target/linux/brcm2708/patches-4.4/0101-drm-vc4-Fix-a-typo-in-a-V3D-debug-register.patch b/target/linux/brcm2708/patches-4.4/0101-drm-vc4-Fix-a-typo-in-a-V3D-debug-register.patch
index 70f64d8..6b39218 100644
--- a/target/linux/brcm2708/patches-4.4/0101-drm-vc4-Fix-a-typo-in-a-V3D-debug-register.patch
+++ b/target/linux/brcm2708/patches-4.4/0101-drm-vc4-Fix-a-typo-in-a-V3D-debug-register.patch
@@ -1,7 +1,7 @@
-From f966476880d65aea0246d0d1f04377dd628a79fd Mon Sep 17 00:00:00 2001
+From 33388931e0eb14a5ddf2a23f2d71239ecc725686 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 23 Oct 2015 14:57:22 +0100
-Subject: [PATCH 101/156] drm/vc4: Fix a typo in a V3D debug register.
+Subject: [PATCH 101/168] drm/vc4: Fix a typo in a V3D debug register.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0102-drm-vc4-Enable-VC4-modules-and-increase-CMA-size-wit.patch b/target/linux/brcm2708/patches-4.4/0102-drm-vc4-Enable-VC4-modules-and-increase-CMA-size-wit.patch
index d306d84..b499795 100644
--- a/target/linux/brcm2708/patches-4.4/0102-drm-vc4-Enable-VC4-modules-and-increase-CMA-size-wit.patch
+++ b/target/linux/brcm2708/patches-4.4/0102-drm-vc4-Enable-VC4-modules-and-increase-CMA-size-wit.patch
@@ -1,7 +1,7 @@
-From 885697c1ff9e687315f0be69b775782aa135e663 Mon Sep 17 00:00:00 2001
+From b20feeacc1dc4f6e5474e29b9ffe6ee1c177d259 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 2 Nov 2015 17:07:33 +0000
-Subject: [PATCH 102/156] drm/vc4: Enable VC4 modules, and increase CMA size
+Subject: [PATCH 102/168] drm/vc4: Enable VC4 modules, and increase CMA size
  with overlay
 
 If using the overlay, be careful not to boot to GUI or run startx,
diff --git a/target/linux/brcm2708/patches-4.4/0103-squash-fixups.patch b/target/linux/brcm2708/patches-4.4/0103-squash-fixups.patch
index 3a9ca62..c91f674 100644
--- a/target/linux/brcm2708/patches-4.4/0103-squash-fixups.patch
+++ b/target/linux/brcm2708/patches-4.4/0103-squash-fixups.patch
@@ -1,7 +1,7 @@
-From 80eea644edd68fdac2cea19c872099442c19e1a9 Mon Sep 17 00:00:00 2001
+From 856a9eef9311f456450792f6be612c7cdb34e12d Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 18 Nov 2015 18:29:58 +0000
-Subject: [PATCH 103/156] squash: fixups
+Subject: [PATCH 103/168] squash: fixups
 
 ---
  drivers/gpu/drm/vc4/Kconfig   | 2 +-
diff --git a/target/linux/brcm2708/patches-4.4/0104-squash-add-missing-vc4-kms-v3d-overlay.dtb-to-makefi.patch b/target/linux/brcm2708/patches-4.4/0104-squash-add-missing-vc4-kms-v3d-overlay.dtb-to-makefi.patch
index 2a85650..c413376 100644
--- a/target/linux/brcm2708/patches-4.4/0104-squash-add-missing-vc4-kms-v3d-overlay.dtb-to-makefi.patch
+++ b/target/linux/brcm2708/patches-4.4/0104-squash-add-missing-vc4-kms-v3d-overlay.dtb-to-makefi.patch
@@ -1,7 +1,7 @@
-From 904d9d3406dab59220fd39d217cde63ba19db742 Mon Sep 17 00:00:00 2001
+From a9d03d82467ab7e1cd623cf286bc2373ef5a99b4 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 18 Nov 2015 20:26:03 +0000
-Subject: [PATCH 104/156] squash: add missing vc4-kms-v3d-overlay.dtb to
+Subject: [PATCH 104/168] squash: add missing vc4-kms-v3d-overlay.dtb to
  makefile
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0105-clk-bcm2835-Also-build-the-driver-for-downstream-ker.patch b/target/linux/brcm2708/patches-4.4/0105-clk-bcm2835-Also-build-the-driver-for-downstream-ker.patch
index 4badc1f..cff7b09 100644
--- a/target/linux/brcm2708/patches-4.4/0105-clk-bcm2835-Also-build-the-driver-for-downstream-ker.patch
+++ b/target/linux/brcm2708/patches-4.4/0105-clk-bcm2835-Also-build-the-driver-for-downstream-ker.patch
@@ -1,7 +1,7 @@
-From 0f26b51ac18a46df8d12ba38754b865e77cda370 Mon Sep 17 00:00:00 2001
+From 6d0d0324670ec0b661c5068652035d687c835cdc Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 12 Oct 2015 11:23:34 -0700
-Subject: [PATCH 105/156] clk: bcm2835: Also build the driver for downstream
+Subject: [PATCH 105/168] clk: bcm2835: Also build the driver for downstream
  kernels.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
diff --git a/target/linux/brcm2708/patches-4.4/0106-dts-Added-overlay-for-gpio_ir_recv-driver.patch b/target/linux/brcm2708/patches-4.4/0106-dts-Added-overlay-for-gpio_ir_recv-driver.patch
index a80d2a5..5e7379e 100644
--- a/target/linux/brcm2708/patches-4.4/0106-dts-Added-overlay-for-gpio_ir_recv-driver.patch
+++ b/target/linux/brcm2708/patches-4.4/0106-dts-Added-overlay-for-gpio_ir_recv-driver.patch
@@ -1,7 +1,7 @@
-From d85c99545b883d49484f834b191472f079badc0e Mon Sep 17 00:00:00 2001
+From 42d730f2fe46b800af910acd54b96adc88015b4e Mon Sep 17 00:00:00 2001
 From: Holger Steinhaus <hsteinhaus at gmx.de>
 Date: Sat, 14 Nov 2015 18:37:43 +0100
-Subject: [PATCH 106/156] dts: Added overlay for gpio_ir_recv driver
+Subject: [PATCH 106/168] dts: Added overlay for gpio_ir_recv driver
 
 ---
  arch/arm/boot/dts/overlays/Makefile            |  1 +
diff --git a/target/linux/brcm2708/patches-4.4/0107-Build-i2c_gpio-module-and-add-a-device-tree-overlay-.patch b/target/linux/brcm2708/patches-4.4/0107-Build-i2c_gpio-module-and-add-a-device-tree-overlay-.patch
index 435a523..4cdcb15 100644
--- a/target/linux/brcm2708/patches-4.4/0107-Build-i2c_gpio-module-and-add-a-device-tree-overlay-.patch
+++ b/target/linux/brcm2708/patches-4.4/0107-Build-i2c_gpio-module-and-add-a-device-tree-overlay-.patch
@@ -1,7 +1,7 @@
-From 12fed1205023386a5b87d8215f35a2a3ac10ba7d Mon Sep 17 00:00:00 2001
+From d4e6317cbc032bf5b0d3b14278201ab8d2b7990c Mon Sep 17 00:00:00 2001
 From: Alistair Buxton <a.j.buxton at gmail.com>
 Date: Sun, 1 Nov 2015 22:27:56 +0000
-Subject: [PATCH 107/156] Build i2c_gpio module and add a device tree overlay
+Subject: [PATCH 107/168] Build i2c_gpio module and add a device tree overlay
  to configure it.
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0108-New-overlay-for-PiScreen2r.patch b/target/linux/brcm2708/patches-4.4/0108-New-overlay-for-PiScreen2r.patch
index dcb5086..bd95e5f 100644
--- a/target/linux/brcm2708/patches-4.4/0108-New-overlay-for-PiScreen2r.patch
+++ b/target/linux/brcm2708/patches-4.4/0108-New-overlay-for-PiScreen2r.patch
@@ -1,7 +1,7 @@
-From 22e4c6ba056df97c6cacf0510b6cb06c52b11a9a Mon Sep 17 00:00:00 2001
+From f0a3bf11c12c3fcf23d46a7252078f7adef20787 Mon Sep 17 00:00:00 2001
 From: mwilliams03 <mark.mwilliams at gmail.com>
 Date: Sun, 18 Oct 2015 17:07:24 -0700
-Subject: [PATCH 108/156] New overlay for PiScreen2r
+Subject: [PATCH 108/168] New overlay for PiScreen2r
 
 ---
  arch/arm/boot/dts/overlays/Makefile               |   1 +
diff --git a/target/linux/brcm2708/patches-4.4/0109-dts-Added-overlay-for-Adafruit-PiTFT-2.8-capacitive-.patch b/target/linux/brcm2708/patches-4.4/0109-dts-Added-overlay-for-Adafruit-PiTFT-2.8-capacitive-.patch
index 929fcdf..16c3889 100644
--- a/target/linux/brcm2708/patches-4.4/0109-dts-Added-overlay-for-Adafruit-PiTFT-2.8-capacitive-.patch
+++ b/target/linux/brcm2708/patches-4.4/0109-dts-Added-overlay-for-Adafruit-PiTFT-2.8-capacitive-.patch
@@ -1,7 +1,7 @@
-From 1ad530e17f7d114b4c0b73d2c5f9a332e59f5b6e Mon Sep 17 00:00:00 2001
+From ebf516c01f8b9bd3c971cd4a5b180d702c051eec Mon Sep 17 00:00:00 2001
 From: Ondrej Wisniewski <ondrej.wisniewski at gmail.com>
 Date: Fri, 6 Nov 2015 15:01:28 +0100
-Subject: [PATCH 109/156] dts: Added overlay for Adafruit PiTFT 2.8" capacitive
+Subject: [PATCH 109/168] dts: Added overlay for Adafruit PiTFT 2.8" capacitive
  touch screen
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0110-Add-support-for-the-HiFiBerry-DAC-Pro.patch b/target/linux/brcm2708/patches-4.4/0110-Add-support-for-the-HiFiBerry-DAC-Pro.patch
index 421b18a..94dc7af 100644
--- a/target/linux/brcm2708/patches-4.4/0110-Add-support-for-the-HiFiBerry-DAC-Pro.patch
+++ b/target/linux/brcm2708/patches-4.4/0110-Add-support-for-the-HiFiBerry-DAC-Pro.patch
@@ -1,7 +1,7 @@
-From 92a639f7362cb40bce4eb0019967e7d84aed90d1 Mon Sep 17 00:00:00 2001
+From 64301a198384da1c5df6e52bc4a9a3fd649be35a Mon Sep 17 00:00:00 2001
 From: Stuart MacLean <stuart at hifiberry.com>
 Date: Fri, 2 Oct 2015 15:12:59 +0100
-Subject: [PATCH 110/156] Add support for the HiFiBerry DAC+ Pro.
+Subject: [PATCH 110/168] Add support for the HiFiBerry DAC+ Pro.
 
 The HiFiBerry DAC+ and DAC+ Pro products both use the existing bcm sound driver with the DAC+ Pro having a special clock device driver representing the two high precision oscillators.
 
diff --git a/target/linux/brcm2708/patches-4.4/0111-BCM270X_DT-Add-at86rf233-overlay.patch b/target/linux/brcm2708/patches-4.4/0111-BCM270X_DT-Add-at86rf233-overlay.patch
index 16178ac..21abf3b 100644
--- a/target/linux/brcm2708/patches-4.4/0111-BCM270X_DT-Add-at86rf233-overlay.patch
+++ b/target/linux/brcm2708/patches-4.4/0111-BCM270X_DT-Add-at86rf233-overlay.patch
@@ -1,7 +1,7 @@
-From aae673201fa2bd432a47654d9bcd9edc872d456f Mon Sep 17 00:00:00 2001
+From 48ae14a094e984fbb73a8bdfebc1df11b89c2ab9 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 5 Oct 2015 10:47:45 +0100
-Subject: [PATCH 111/156] BCM270X_DT: Add at86rf233 overlay
+Subject: [PATCH 111/168] BCM270X_DT: Add at86rf233 overlay
 
 Add an overlay to support the Atmel AT86RF233 WPAN transceiver on spi0.0.
 
diff --git a/target/linux/brcm2708/patches-4.4/0112-mm-Remove-the-PFN-busy-warning.patch b/target/linux/brcm2708/patches-4.4/0112-mm-Remove-the-PFN-busy-warning.patch
index e575072..196bb49 100644
--- a/target/linux/brcm2708/patches-4.4/0112-mm-Remove-the-PFN-busy-warning.patch
+++ b/target/linux/brcm2708/patches-4.4/0112-mm-Remove-the-PFN-busy-warning.patch
@@ -1,7 +1,7 @@
-From a9a5e18e7a34a6a34e917c8f74b935697ea5f641 Mon Sep 17 00:00:00 2001
+From e709cbb80c1403ff20b3f9cd38f9a51706bd3843 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Thu, 18 Dec 2014 16:07:15 -0800
-Subject: [PATCH 112/156] mm: Remove the PFN busy warning
+Subject: [PATCH 112/168] mm: Remove the PFN busy warning
 
 See commit dae803e165a11bc88ca8dbc07a11077caf97bbcb -- the warning is
 expected sometimes when using CMA.  However, that commit still spams
diff --git a/target/linux/brcm2708/patches-4.4/0113-drm-Put-an-optional-field-in-the-driver-struct-for-G.patch b/target/linux/brcm2708/patches-4.4/0113-drm-Put-an-optional-field-in-the-driver-struct-for-G.patch
index 6849a3f..515e7fc 100644
--- a/target/linux/brcm2708/patches-4.4/0113-drm-Put-an-optional-field-in-the-driver-struct-for-G.patch
+++ b/target/linux/brcm2708/patches-4.4/0113-drm-Put-an-optional-field-in-the-driver-struct-for-G.patch
@@ -1,7 +1,7 @@
-From 486a03e437e2472aa0d88cd77ef4a4394d895085 Mon Sep 17 00:00:00 2001
+From ef5f182bfe1bb4db2dc62ad6bf5e7d04a65588ea Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Wed, 19 Nov 2014 12:06:38 -0800
-Subject: [PATCH 113/156] drm: Put an optional field in the driver struct for
+Subject: [PATCH 113/168] drm: Put an optional field in the driver struct for
  GEM obj struct size.
 
 This allows a driver to derive from the CMA object without copying all
diff --git a/target/linux/brcm2708/patches-4.4/0114-drm-vc4-Add-an-interface-for-capturing-the-GPU-state.patch b/target/linux/brcm2708/patches-4.4/0114-drm-vc4-Add-an-interface-for-capturing-the-GPU-state.patch
index 5d52f3e..896509f 100644
--- a/target/linux/brcm2708/patches-4.4/0114-drm-vc4-Add-an-interface-for-capturing-the-GPU-state.patch
+++ b/target/linux/brcm2708/patches-4.4/0114-drm-vc4-Add-an-interface-for-capturing-the-GPU-state.patch
@@ -1,7 +1,7 @@
-From 26f5cbc4987fd09baddaf390ba9ce63de92481c5 Mon Sep 17 00:00:00 2001
+From 01599050cad58cb917f65d94f0dd3e3f132945de Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 30 Oct 2015 10:09:02 -0700
-Subject: [PATCH 114/156] drm/vc4: Add an interface for capturing the GPU state
+Subject: [PATCH 114/168] drm/vc4: Add an interface for capturing the GPU state
  after a hang.
 
 This can be parsed with vc4-gpu-tools tools for trying to figure out
diff --git a/target/linux/brcm2708/patches-4.4/0115-drm-vc4-Update-a-bunch-of-code-to-match-upstream-sub.patch b/target/linux/brcm2708/patches-4.4/0115-drm-vc4-Update-a-bunch-of-code-to-match-upstream-sub.patch
index c42a1f0..4090777 100644
--- a/target/linux/brcm2708/patches-4.4/0115-drm-vc4-Update-a-bunch-of-code-to-match-upstream-sub.patch
+++ b/target/linux/brcm2708/patches-4.4/0115-drm-vc4-Update-a-bunch-of-code-to-match-upstream-sub.patch
@@ -1,7 +1,7 @@
-From 3643e31e7808587e5f4a2619bdd355848ac88737 Mon Sep 17 00:00:00 2001
+From 5ffd3702a2ffe9f4de6c1295e2daeb7a817e9210 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 4 Dec 2015 11:35:34 -0800
-Subject: [PATCH 115/156] drm/vc4: Update a bunch of code to match upstream
+Subject: [PATCH 115/168] drm/vc4: Update a bunch of code to match upstream
  submission.
 
 This gets almost everything matching, except for the MSAA support and
diff --git a/target/linux/brcm2708/patches-4.4/0116-drm-Use-the-driver-s-gem_object_free-function-from-C.patch b/target/linux/brcm2708/patches-4.4/0116-drm-Use-the-driver-s-gem_object_free-function-from-C.patch
index 4589ebb..4b06554 100644
--- a/target/linux/brcm2708/patches-4.4/0116-drm-Use-the-driver-s-gem_object_free-function-from-C.patch
+++ b/target/linux/brcm2708/patches-4.4/0116-drm-Use-the-driver-s-gem_object_free-function-from-C.patch
@@ -1,7 +1,7 @@
-From 95ab064c34db2cc7e99a003277e824aa29a60d98 Mon Sep 17 00:00:00 2001
+From 9881ae090403d0c2b3920b43369cacdaba56c997 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 11 Dec 2015 19:45:03 -0800
-Subject: [PATCH 116/156] drm: Use the driver's gem_object_free function from
+Subject: [PATCH 116/168] drm: Use the driver's gem_object_free function from
  CMA helpers.
 
 VC4 wraps the CMA objects in its own structures, so it needs to do its
diff --git a/target/linux/brcm2708/patches-4.4/0117-drm-vc4-Add-support-for-MSAA-rendering.patch b/target/linux/brcm2708/patches-4.4/0117-drm-vc4-Add-support-for-MSAA-rendering.patch
index ff487a3..209b6d4 100644
--- a/target/linux/brcm2708/patches-4.4/0117-drm-vc4-Add-support-for-MSAA-rendering.patch
+++ b/target/linux/brcm2708/patches-4.4/0117-drm-vc4-Add-support-for-MSAA-rendering.patch
@@ -1,7 +1,7 @@
-From fe77db4395ed0fbceb058f7b49dc3b3db57c2868 Mon Sep 17 00:00:00 2001
+From 190fa965b08a0c8fa17cf26d25368e0d092cebb5 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Fri, 17 Jul 2015 13:15:50 -0700
-Subject: [PATCH 117/156] drm/vc4: Add support for MSAA rendering.
+Subject: [PATCH 117/168] drm/vc4: Add support for MSAA rendering.
 
 For MSAA, you set a bit in the binner that halves the size of tiles in
 each direction, so you can pack 4 samples per pixel in the tile
diff --git a/target/linux/brcm2708/patches-4.4/0118-drm-vc4-A-few-more-non-functional-changes-to-sync-to.patch b/target/linux/brcm2708/patches-4.4/0118-drm-vc4-A-few-more-non-functional-changes-to-sync-to.patch
index 33db01d..bf55602 100644
--- a/target/linux/brcm2708/patches-4.4/0118-drm-vc4-A-few-more-non-functional-changes-to-sync-to.patch
+++ b/target/linux/brcm2708/patches-4.4/0118-drm-vc4-A-few-more-non-functional-changes-to-sync-to.patch
@@ -1,7 +1,7 @@
-From ea95a310d42c86fa9ebd87d01d486c81770868b9 Mon Sep 17 00:00:00 2001
+From 5dce16461b9bbff0d58acb63b850b9e928669ce5 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Tue, 8 Dec 2015 14:00:43 -0800
-Subject: [PATCH 118/156] drm/vc4: A few more non-functional changes to sync to
+Subject: [PATCH 118/168] drm/vc4: A few more non-functional changes to sync to
  upstream.
 
 At this point all that's left is the force-enable of HDMI connector,
diff --git a/target/linux/brcm2708/patches-4.4/0119-drm-vc4-Use-hpd-gpios-for-HDMI-GPIO-like-what-landed.patch b/target/linux/brcm2708/patches-4.4/0119-drm-vc4-Use-hpd-gpios-for-HDMI-GPIO-like-what-landed.patch
index ff82c53..3511469 100644
--- a/target/linux/brcm2708/patches-4.4/0119-drm-vc4-Use-hpd-gpios-for-HDMI-GPIO-like-what-landed.patch
+++ b/target/linux/brcm2708/patches-4.4/0119-drm-vc4-Use-hpd-gpios-for-HDMI-GPIO-like-what-landed.patch
@@ -1,7 +1,7 @@
-From bcf38dfc39fe93414a48efd6a1455605c678922e Mon Sep 17 00:00:00 2001
+From 9596cf4efaa44e9daefe8b3aad6666e835c8d5f0 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Tue, 15 Dec 2015 23:46:32 +0000
-Subject: [PATCH 119/156] drm/vc4: Use "hpd-gpios" for HDMI GPIO, like what
+Subject: [PATCH 119/168] drm/vc4: Use "hpd-gpios" for HDMI GPIO, like what
  landed upstream.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
diff --git a/target/linux/brcm2708/patches-4.4/0120-drm-vc4-Synchronize-validation-code-for-v2-submissio.patch b/target/linux/brcm2708/patches-4.4/0120-drm-vc4-Synchronize-validation-code-for-v2-submissio.patch
index a1bb4bd..79366f6 100644
--- a/target/linux/brcm2708/patches-4.4/0120-drm-vc4-Synchronize-validation-code-for-v2-submissio.patch
+++ b/target/linux/brcm2708/patches-4.4/0120-drm-vc4-Synchronize-validation-code-for-v2-submissio.patch
@@ -1,7 +1,7 @@
-From 9f0ff9b7b05f3cc8b644f3976f24ba1779687578 Mon Sep 17 00:00:00 2001
+From 353d93c09a5e016c7f8ddc1ff1ece8304c809a47 Mon Sep 17 00:00:00 2001
 From: Eric Anholt <eric at anholt.net>
 Date: Mon, 7 Dec 2015 12:35:01 -0800
-Subject: [PATCH 120/156] drm/vc4: Synchronize validation code for v2
+Subject: [PATCH 120/168] drm/vc4: Synchronize validation code for v2
  submission upstream.
 
 Signed-off-by: Eric Anholt <eric at anholt.net>
diff --git a/target/linux/brcm2708/patches-4.4/0121-MMC-Do-not-use-mmc_debug-if-CONFIG_MMC_BCM2835-is-no.patch b/target/linux/brcm2708/patches-4.4/0121-MMC-Do-not-use-mmc_debug-if-CONFIG_MMC_BCM2835-is-no.patch
index 74640ab..2da166e 100644
--- a/target/linux/brcm2708/patches-4.4/0121-MMC-Do-not-use-mmc_debug-if-CONFIG_MMC_BCM2835-is-no.patch
+++ b/target/linux/brcm2708/patches-4.4/0121-MMC-Do-not-use-mmc_debug-if-CONFIG_MMC_BCM2835-is-no.patch
@@ -1,7 +1,7 @@
-From b39af51026fc692ecc3e2155d4012bd4449ab686 Mon Sep 17 00:00:00 2001
+From a2cb02ae906e0983dd5bf12634e8842453ec0625 Mon Sep 17 00:00:00 2001
 From: janluca <janluca at zedat.fu-berlin.de>
 Date: Sun, 27 Dec 2015 14:34:04 +0100
-Subject: [PATCH 121/156] MMC: Do not use mmc_debug if CONFIG_MMC_BCM2835 is
+Subject: [PATCH 121/168] MMC: Do not use mmc_debug if CONFIG_MMC_BCM2835 is
  not set
 
 If CONFIG_MMC_BCM2835 was not set the compiling of the kernel failed
diff --git a/target/linux/brcm2708/patches-4.4/0122-Extend-clock-timeout-fix-modprobe-baudrate-parameter.patch b/target/linux/brcm2708/patches-4.4/0122-Extend-clock-timeout-fix-modprobe-baudrate-parameter.patch
index eb8d284..b1d6868 100644
--- a/target/linux/brcm2708/patches-4.4/0122-Extend-clock-timeout-fix-modprobe-baudrate-parameter.patch
+++ b/target/linux/brcm2708/patches-4.4/0122-Extend-clock-timeout-fix-modprobe-baudrate-parameter.patch
@@ -1,7 +1,7 @@
-From dcca9b8b2f79033b8d0bbaacacc2726c74fc094e Mon Sep 17 00:00:00 2001
+From 70c626ce1cc005daaaa08f06c98842d6ec65f51a Mon Sep 17 00:00:00 2001
 From: Devon Fyson <devonfyson at gmail.com>
 Date: Wed, 30 Dec 2015 16:40:47 -0500
-Subject: [PATCH 122/156] Extend clock timeout, fix modprobe baudrate
+Subject: [PATCH 122/168] Extend clock timeout, fix modprobe baudrate
  parameter.
 
 Set the BSC_CLKT clock streching timeout to 35ms as per SMBus specs.\n- Increase priority of baudrate parameter passed to modprobe (in /etc/modprobe.d/*.conf or command line). Currently custom baudrates don't work because they are overridden by clock-frequency in the platform_device passed to the function.
diff --git a/target/linux/brcm2708/patches-4.4/0123-bcm270x_dt-Add-dwc2-and-dwc-otg-overlays.patch b/target/linux/brcm2708/patches-4.4/0123-bcm270x_dt-Add-dwc2-and-dwc-otg-overlays.patch
index 96349db..bbcaf3c 100644
--- a/target/linux/brcm2708/patches-4.4/0123-bcm270x_dt-Add-dwc2-and-dwc-otg-overlays.patch
+++ b/target/linux/brcm2708/patches-4.4/0123-bcm270x_dt-Add-dwc2-and-dwc-otg-overlays.patch
@@ -1,7 +1,7 @@
-From 48f5e9485618e81c4559429a07faafe854cd39c0 Mon Sep 17 00:00:00 2001
+From daf846db2125b86b88b860d8e68cb4c6bf6301d1 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf at tronnes.org>
 Date: Thu, 31 Dec 2015 16:44:58 +0100
-Subject: [PATCH 123/156] bcm270x_dt: Add dwc2 and dwc-otg overlays
+Subject: [PATCH 123/168] bcm270x_dt: Add dwc2 and dwc-otg overlays
 
 ---
  arch/arm/boot/dts/overlays/Makefile            |  2 ++
diff --git a/target/linux/brcm2708/patches-4.4/0124-BCM270X_DT-Add-the-sdtweak-overlay-for-tuning-sdhost.patch b/target/linux/brcm2708/patches-4.4/0124-BCM270X_DT-Add-the-sdtweak-overlay-for-tuning-sdhost.patch
index 4fc5507..35f79e1 100644
--- a/target/linux/brcm2708/patches-4.4/0124-BCM270X_DT-Add-the-sdtweak-overlay-for-tuning-sdhost.patch
+++ b/target/linux/brcm2708/patches-4.4/0124-BCM270X_DT-Add-the-sdtweak-overlay-for-tuning-sdhost.patch
@@ -1,7 +1,7 @@
-From 1c2a3feefc21f0d4050de15d54a07219c90d6ef1 Mon Sep 17 00:00:00 2001
+From dd50fb34d79a4e639b3e7a14d6819b486c8fc449 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 4 Jan 2016 14:42:17 +0000
-Subject: [PATCH 124/156] BCM270X_DT: Add the sdtweak overlay, for tuning
+Subject: [PATCH 124/168] BCM270X_DT: Add the sdtweak overlay, for tuning
  sdhost
 
 The sdhost overlay declares the sdhost interface and allows parameters
diff --git a/target/linux/brcm2708/patches-4.4/0125-bcm2835-mmc-Don-t-override-bus-width-capabilities-fr.patch b/target/linux/brcm2708/patches-4.4/0125-bcm2835-mmc-Don-t-override-bus-width-capabilities-fr.patch
index 4ca386d..83f3079 100644
--- a/target/linux/brcm2708/patches-4.4/0125-bcm2835-mmc-Don-t-override-bus-width-capabilities-fr.patch
+++ b/target/linux/brcm2708/patches-4.4/0125-bcm2835-mmc-Don-t-override-bus-width-capabilities-fr.patch
@@ -1,7 +1,7 @@
-From 318f2b30c2d6760e17a68580370fe62cc65b6db7 Mon Sep 17 00:00:00 2001
+From 5afa5de5ac1733886233735967e5aa78e369038d Mon Sep 17 00:00:00 2001
 From: Andrew Litt <ajlitt at splunge.net>
 Date: Mon, 11 Jan 2016 07:54:21 +0000
-Subject: [PATCH 125/156] bcm2835-mmc: Don't override bus width capabilities
+Subject: [PATCH 125/168] bcm2835-mmc: Don't override bus width capabilities
  from devicetree
 
 Take out the force setting of the MMC_CAP_4_BIT_DATA host capability
diff --git a/target/linux/brcm2708/patches-4.4/0126-SDIO-overlay-add-bus_width-parameter.patch b/target/linux/brcm2708/patches-4.4/0126-SDIO-overlay-add-bus_width-parameter.patch
index 661b923..d958b31 100644
--- a/target/linux/brcm2708/patches-4.4/0126-SDIO-overlay-add-bus_width-parameter.patch
+++ b/target/linux/brcm2708/patches-4.4/0126-SDIO-overlay-add-bus_width-parameter.patch
@@ -1,7 +1,7 @@
-From 2716dea6b98618f690884fcb8569fd381888f515 Mon Sep 17 00:00:00 2001
+From 5496af4470e98e52558b4024550e537085b8de62 Mon Sep 17 00:00:00 2001
 From: Andrew Litt <ajlitt at splunge.net>
 Date: Mon, 11 Jan 2016 07:55:54 +0000
-Subject: [PATCH 126/156] SDIO-overlay: add bus_width parameter
+Subject: [PATCH 126/168] SDIO-overlay: add bus_width parameter
 
 Allow setting of the SDIO bus width capability of the bcm2835-mmc
 host.  This is helpful when only a 1 bit wide bus is connected
diff --git a/target/linux/brcm2708/patches-4.4/0127-FIXUP-BCM270X_DT-random-HWRNG-dtparam-default-is-on.patch b/target/linux/brcm2708/patches-4.4/0127-FIXUP-BCM270X_DT-random-HWRNG-dtparam-default-is-on.patch
index 5990b7c..adeccd2 100644
--- a/target/linux/brcm2708/patches-4.4/0127-FIXUP-BCM270X_DT-random-HWRNG-dtparam-default-is-on.patch
+++ b/target/linux/brcm2708/patches-4.4/0127-FIXUP-BCM270X_DT-random-HWRNG-dtparam-default-is-on.patch
@@ -1,7 +1,7 @@
-From 489fa9a9725c1c1512b6427a7a3d805e6c6c80df Mon Sep 17 00:00:00 2001
+From 43f82c40ba1b7ad4ab6095e033da7587fc0afa67 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 8 Jan 2016 13:42:06 +0000
-Subject: [PATCH 127/156] FIXUP BCM270X_DT: "random" (HWRNG) dtparam default is
+Subject: [PATCH 127/168] FIXUP BCM270X_DT: "random" (HWRNG) dtparam default is
  on
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0128-bcm2835-extend-allowed-range-of-channels-and-sampler.patch b/target/linux/brcm2708/patches-4.4/0128-bcm2835-extend-allowed-range-of-channels-and-sampler.patch
index f867570..6b74d20 100644
--- a/target/linux/brcm2708/patches-4.4/0128-bcm2835-extend-allowed-range-of-channels-and-sampler.patch
+++ b/target/linux/brcm2708/patches-4.4/0128-bcm2835-extend-allowed-range-of-channels-and-sampler.patch
@@ -1,7 +1,7 @@
-From 5b4731b45fa872e21bca7cba7d11b656bbd0f2a0 Mon Sep 17 00:00:00 2001
+From 372aa92bfa1dae17a1fb27e39f7e3ca93e134659 Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:41:45 +0100
-Subject: [PATCH 128/156] bcm2835: extend allowed range of channels and
+Subject: [PATCH 128/168] bcm2835: extend allowed range of channels and
  samplerates
 
 Allow everything the videocore accepts.
diff --git a/target/linux/brcm2708/patches-4.4/0129-bcm2835-restrict-channels-rate-to-8-960000.patch b/target/linux/brcm2708/patches-4.4/0129-bcm2835-restrict-channels-rate-to-8-960000.patch
index 3a3653b..bfcd5fa 100644
--- a/target/linux/brcm2708/patches-4.4/0129-bcm2835-restrict-channels-rate-to-8-960000.patch
+++ b/target/linux/brcm2708/patches-4.4/0129-bcm2835-restrict-channels-rate-to-8-960000.patch
@@ -1,7 +1,7 @@
-From 49e46ec03b6dafecec9b2380a3a4444e6d0ea726 Mon Sep 17 00:00:00 2001
+From 7ed0e2fdfaf8fb027d7277b534c8dd914177a0fc Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:42:18 +0100
-Subject: [PATCH 129/156] bcm2835: restrict channels*rate to 8*960000
+Subject: [PATCH 129/168] bcm2835: restrict channels*rate to 8*960000
 
 This is required at least for SPDIF. If the bitrate goes above,
 videocore will either resample the audio or corrupt it due to
diff --git a/target/linux/brcm2708/patches-4.4/0130-rpi-update-vc_vchi_audioserv_defs.h.patch b/target/linux/brcm2708/patches-4.4/0130-rpi-update-vc_vchi_audioserv_defs.h.patch
index 7f08cee..97d2646 100644
--- a/target/linux/brcm2708/patches-4.4/0130-rpi-update-vc_vchi_audioserv_defs.h.patch
+++ b/target/linux/brcm2708/patches-4.4/0130-rpi-update-vc_vchi_audioserv_defs.h.patch
@@ -1,7 +1,7 @@
-From 8d0fb551420eb11b534a106573e1fb262593175a Mon Sep 17 00:00:00 2001
+From 6ce00cdf452beb6b9935d81c8385e44bc644647e Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:42:48 +0100
-Subject: [PATCH 130/156] rpi: update vc_vchi_audioserv_defs.h
+Subject: [PATCH 130/168] rpi: update vc_vchi_audioserv_defs.h
 
 Add audioserv 3 extensions. The changes were taken from the paste
 linked here:
diff --git a/target/linux/brcm2708/patches-4.4/0131-bcm2835-implement-channel-map-API.patch b/target/linux/brcm2708/patches-4.4/0131-bcm2835-implement-channel-map-API.patch
index 99de1e3..3660275 100644
--- a/target/linux/brcm2708/patches-4.4/0131-bcm2835-implement-channel-map-API.patch
+++ b/target/linux/brcm2708/patches-4.4/0131-bcm2835-implement-channel-map-API.patch
@@ -1,7 +1,7 @@
-From a437f8b7abb2e016b199d964de926fa390d0552c Mon Sep 17 00:00:00 2001
+From f6e3a539a99be9d13b9ef0e8624ea0ee0bac4ea2 Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:43:12 +0100
-Subject: [PATCH 131/156] bcm2835: implement channel map API
+Subject: [PATCH 131/168] bcm2835: implement channel map API
 
 Report all layouts supported by the HDMI protocol to userspace.
 Make the videocore set the correct layout according to the
diff --git a/target/linux/brcm2708/patches-4.4/0132-bcm2835-access-controls-under-the-audio-mutex.patch b/target/linux/brcm2708/patches-4.4/0132-bcm2835-access-controls-under-the-audio-mutex.patch
index 76b3d0c..38c31fc 100644
--- a/target/linux/brcm2708/patches-4.4/0132-bcm2835-access-controls-under-the-audio-mutex.patch
+++ b/target/linux/brcm2708/patches-4.4/0132-bcm2835-access-controls-under-the-audio-mutex.patch
@@ -1,7 +1,7 @@
-From 9c1692e00be5be644aef95ca6e16b3b50be05e39 Mon Sep 17 00:00:00 2001
+From 8d9f3d7b0f4a3f17b67194c1feaed390a487b449 Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:43:35 +0100
-Subject: [PATCH 132/156] bcm2835: access controls under the audio mutex
+Subject: [PATCH 132/168] bcm2835: access controls under the audio mutex
 
 I don't think the ALSA framework provides any kind of automatic
 synchronization within the control callbacks. We most likely need
diff --git a/target/linux/brcm2708/patches-4.4/0133-bcm2835-always-use-2-4-8-channels-for-multichannel-l.patch b/target/linux/brcm2708/patches-4.4/0133-bcm2835-always-use-2-4-8-channels-for-multichannel-l.patch
index aecc0b8..01fcdbf 100644
--- a/target/linux/brcm2708/patches-4.4/0133-bcm2835-always-use-2-4-8-channels-for-multichannel-l.patch
+++ b/target/linux/brcm2708/patches-4.4/0133-bcm2835-always-use-2-4-8-channels-for-multichannel-l.patch
@@ -1,7 +1,7 @@
-From 77f9e51079d33d5a84c1b737e13ed6e6a9fd3903 Mon Sep 17 00:00:00 2001
+From aeea388e3bd84389098e7bb21e6ccdc6533f4e7d Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:44:03 +0100
-Subject: [PATCH 133/156] bcm2835: always use 2/4/8 channels for multichannel
+Subject: [PATCH 133/168] bcm2835: always use 2/4/8 channels for multichannel
  layouts
 
 Pad the unused channels with NA. This means userspace needs to write
diff --git a/target/linux/brcm2708/patches-4.4/0134-bcm2835-only-allow-stereo-if-analogue-jack-is-select.patch b/target/linux/brcm2708/patches-4.4/0134-bcm2835-only-allow-stereo-if-analogue-jack-is-select.patch
index e7bdfc7..022ea35 100644
--- a/target/linux/brcm2708/patches-4.4/0134-bcm2835-only-allow-stereo-if-analogue-jack-is-select.patch
+++ b/target/linux/brcm2708/patches-4.4/0134-bcm2835-only-allow-stereo-if-analogue-jack-is-select.patch
@@ -1,7 +1,7 @@
-From 22606ad9e0d809ce0d4e12b51d5b4c6507f89c2d Mon Sep 17 00:00:00 2001
+From ff60431afd4898e4c04b965daf6a7c26b50c8ed7 Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:44:24 +0100
-Subject: [PATCH 134/156] bcm2835: only allow stereo if analogue jack is
+Subject: [PATCH 134/168] bcm2835: only allow stereo if analogue jack is
  selected
 
 Sending more than 2 channels to videocore while outputting to analogue
diff --git a/target/linux/brcm2708/patches-4.4/0135-bcm2835-interpolate-audio-delay.patch b/target/linux/brcm2708/patches-4.4/0135-bcm2835-interpolate-audio-delay.patch
index 0c49841..2d5595f 100644
--- a/target/linux/brcm2708/patches-4.4/0135-bcm2835-interpolate-audio-delay.patch
+++ b/target/linux/brcm2708/patches-4.4/0135-bcm2835-interpolate-audio-delay.patch
@@ -1,7 +1,7 @@
-From d53d9217b5906b4046c12c7ddd56911e447de9f2 Mon Sep 17 00:00:00 2001
+From d0c77433fe4b7cf36762f68297e7beb30dd58800 Mon Sep 17 00:00:00 2001
 From: wm4 <wm4 at nowhere>
 Date: Wed, 13 Jan 2016 19:44:47 +0100
-Subject: [PATCH 135/156] bcm2835: interpolate audio delay
+Subject: [PATCH 135/168] bcm2835: interpolate audio delay
 
 It appears the GPU only sends us a message all 10ms to update
 the playback progress. Other than this, the playback position
diff --git a/target/linux/brcm2708/patches-4.4/0136-bcm2835-sdhost-Add-workaround-for-odd-behaviour-on-s.patch b/target/linux/brcm2708/patches-4.4/0136-bcm2835-sdhost-Add-workaround-for-odd-behaviour-on-s.patch
index bbfcbfa..7bcbbbf 100644
--- a/target/linux/brcm2708/patches-4.4/0136-bcm2835-sdhost-Add-workaround-for-odd-behaviour-on-s.patch
+++ b/target/linux/brcm2708/patches-4.4/0136-bcm2835-sdhost-Add-workaround-for-odd-behaviour-on-s.patch
@@ -1,7 +1,7 @@
-From f99bed36f644ebf32e90f49559aac7a663a9fa59 Mon Sep 17 00:00:00 2001
+From 97f25499cf806aa35d082d74f53c2e39248660f9 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 19 Jan 2016 17:16:38 +0000
-Subject: [PATCH 136/156] bcm2835-sdhost: Add workaround for odd behaviour on
+Subject: [PATCH 136/168] bcm2835-sdhost: Add workaround for odd behaviour on
  some cards
 
 For reasons not understood, the sdhost driver fails when reading
diff --git a/target/linux/brcm2708/patches-4.4/0137-bcm2835-sdhost-Add-debug_flags-dtparam.patch b/target/linux/brcm2708/patches-4.4/0137-bcm2835-sdhost-Add-debug_flags-dtparam.patch
index 099ec19..afc5f0d 100644
--- a/target/linux/brcm2708/patches-4.4/0137-bcm2835-sdhost-Add-debug_flags-dtparam.patch
+++ b/target/linux/brcm2708/patches-4.4/0137-bcm2835-sdhost-Add-debug_flags-dtparam.patch
@@ -1,7 +1,7 @@
-From 14c85ba09ef4df26073d9430c1a42fd39a1e3019 Mon Sep 17 00:00:00 2001
+From d3d7fe0e1c22f54ef1aff0c0da72bc607488fcec Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 22 Jan 2016 16:03:24 +0000
-Subject: [PATCH 137/156] bcm2835-sdhost: Add debug_flags dtparam
+Subject: [PATCH 137/168] bcm2835-sdhost: Add debug_flags dtparam
 
 Bit zero disables the single-read-sectors map:
 
diff --git a/target/linux/brcm2708/patches-4.4/0138-BCM270X_DT-Add-sdio_overclock-parameter-to-sdio-over.patch b/target/linux/brcm2708/patches-4.4/0138-BCM270X_DT-Add-sdio_overclock-parameter-to-sdio-over.patch
index 9d0e83a..9d82ff0 100644
--- a/target/linux/brcm2708/patches-4.4/0138-BCM270X_DT-Add-sdio_overclock-parameter-to-sdio-over.patch
+++ b/target/linux/brcm2708/patches-4.4/0138-BCM270X_DT-Add-sdio_overclock-parameter-to-sdio-over.patch
@@ -1,7 +1,7 @@
-From 94dab6838e9ba91d6da49d864b0f408a89f08ce5 Mon Sep 17 00:00:00 2001
+From 9e3e4a6cb589bdbc5ebbd74364cbae7cbbb7707e Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 25 Jan 2016 09:12:06 +0000
-Subject: [PATCH 138/156] BCM270X_DT: Add sdio_overclock parameter to sdio
+Subject: [PATCH 138/168] BCM270X_DT: Add sdio_overclock parameter to sdio
  overlay
 
 The sdio_overclock parameter is like the overclock_50 parameter, i.e.
diff --git a/target/linux/brcm2708/patches-4.4/0139-rtc-ds1307-add-support-for-the-DT-property-wakeup-so.patch b/target/linux/brcm2708/patches-4.4/0139-rtc-ds1307-add-support-for-the-DT-property-wakeup-so.patch
index 8e93021..dbd4419 100644
--- a/target/linux/brcm2708/patches-4.4/0139-rtc-ds1307-add-support-for-the-DT-property-wakeup-so.patch
+++ b/target/linux/brcm2708/patches-4.4/0139-rtc-ds1307-add-support-for-the-DT-property-wakeup-so.patch
@@ -1,7 +1,7 @@
-From 480a2a2365b4fda2c6bdb96a6ce8bc0b64899fe4 Mon Sep 17 00:00:00 2001
+From b631269745e646ce33c476a3bcbf23bb2d539b9f Mon Sep 17 00:00:00 2001
 From: Michael Lange <linuxstuff at milaw.biz>
 Date: Thu, 21 Jan 2016 18:10:16 +0100
-Subject: [PATCH 139/156] rtc: ds1307: add support for the DT property
+Subject: [PATCH 139/168] rtc: ds1307: add support for the DT property
  'wakeup-source'
 
 For RTC chips with no IRQ directly connected to the SoC, the RTC chip
diff --git a/target/linux/brcm2708/patches-4.4/0140-dt-overlay-add-wittypi-overlay.dts.patch b/target/linux/brcm2708/patches-4.4/0140-dt-overlay-add-wittypi-overlay.dts.patch
index 5036a24..86d1ba9 100644
--- a/target/linux/brcm2708/patches-4.4/0140-dt-overlay-add-wittypi-overlay.dts.patch
+++ b/target/linux/brcm2708/patches-4.4/0140-dt-overlay-add-wittypi-overlay.dts.patch
@@ -1,7 +1,7 @@
-From 267ba829941af9b8be4faa22067d24bdef85f4a3 Mon Sep 17 00:00:00 2001
+From b5686192a043947f79be44eb4ee39e6542eebd2d Mon Sep 17 00:00:00 2001
 From: vitalogy <vitalogy_github at milaw.biz>
 Date: Tue, 19 Jan 2016 07:02:02 +0100
-Subject: [PATCH 140/156] dt-overlay: add wittypi-overlay.dts
+Subject: [PATCH 140/168] dt-overlay: add wittypi-overlay.dts
 
 ---
  arch/arm/boot/dts/overlays/wittypi-overlay.dts | 44 ++++++++++++++++++++++++++
diff --git a/target/linux/brcm2708/patches-4.4/0141-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-Pi2.patch b/target/linux/brcm2708/patches-4.4/0141-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-Pi2.patch
index 40624db..276274f 100644
--- a/target/linux/brcm2708/patches-4.4/0141-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-Pi2.patch
+++ b/target/linux/brcm2708/patches-4.4/0141-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-Pi2.patch
@@ -1,7 +1,7 @@
-From 403252ab4bc6c77f2859410e6fa22f3c2bded3e5 Mon Sep 17 00:00:00 2001
+From a5c9830895becdfcc8b43a9bdde6521f621d6720 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Wed, 3 Feb 2016 16:12:54 +0000
-Subject: [PATCH 141/156] BCM270X_DT: Disable DMA for bcm2835-sdhost on Pi2
+Subject: [PATCH 141/168] BCM270X_DT: Disable DMA for bcm2835-sdhost on Pi2
 
 This is an interim patch to verify that problems seen with
 some cards can be worked around at the expense of an increased
diff --git a/target/linux/brcm2708/patches-4.4/0142-FIXUP-i2c_bcm2708-Don-t-change-module-baudrate-param.patch b/target/linux/brcm2708/patches-4.4/0142-FIXUP-i2c_bcm2708-Don-t-change-module-baudrate-param.patch
index e2f4ba4..cf8735d 100644
--- a/target/linux/brcm2708/patches-4.4/0142-FIXUP-i2c_bcm2708-Don-t-change-module-baudrate-param.patch
+++ b/target/linux/brcm2708/patches-4.4/0142-FIXUP-i2c_bcm2708-Don-t-change-module-baudrate-param.patch
@@ -1,7 +1,7 @@
-From 3b0e6758d12a326405c257fe074dab570b1de92e Mon Sep 17 00:00:00 2001
+From 6cc3a41bbbe8d410e927426968f7ebd0bc1afb37 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 19 Jan 2016 16:28:05 +0000
-Subject: [PATCH 142/156] FIXUP i2c_bcm2708: Don't change module baudrate
+Subject: [PATCH 142/168] FIXUP i2c_bcm2708: Don't change module baudrate
  parameter
 
 Overwriting the baudrate module parameter creates an apparent
diff --git a/target/linux/brcm2708/patches-4.4/0143-Allow-up-to-24dB-digital-gain-to-be-applied-when-usi.patch b/target/linux/brcm2708/patches-4.4/0143-Allow-up-to-24dB-digital-gain-to-be-applied-when-usi.patch
index 258210b..6483b8d 100644
--- a/target/linux/brcm2708/patches-4.4/0143-Allow-up-to-24dB-digital-gain-to-be-applied-when-usi.patch
+++ b/target/linux/brcm2708/patches-4.4/0143-Allow-up-to-24dB-digital-gain-to-be-applied-when-usi.patch
@@ -1,7 +1,7 @@
-From e7fc348fed61518907205603a7d0d6038cecfa1f Mon Sep 17 00:00:00 2001
+From a20068c47e58a9844bf71570f31044fc59e416e2 Mon Sep 17 00:00:00 2001
 From: Digital Dreamtime <clive.messer at digitaldreamtime.co.uk>
 Date: Thu, 4 Feb 2016 14:14:44 +0000
-Subject: [PATCH 143/156] Allow up to 24dB digital gain to be applied when
+Subject: [PATCH 143/168] Allow up to 24dB digital gain to be applied when
  using IQAudIO DAC+
 
 24db_digital_gain DT param can be used to specify that PCM512x
diff --git a/target/linux/brcm2708/patches-4.4/0144-Limit-PCM512x-Digital-gain-to-0dB-by-default-with-Hi.patch b/target/linux/brcm2708/patches-4.4/0144-Limit-PCM512x-Digital-gain-to-0dB-by-default-with-Hi.patch
index 539449d..8ed2d80 100644
--- a/target/linux/brcm2708/patches-4.4/0144-Limit-PCM512x-Digital-gain-to-0dB-by-default-with-Hi.patch
+++ b/target/linux/brcm2708/patches-4.4/0144-Limit-PCM512x-Digital-gain-to-0dB-by-default-with-Hi.patch
@@ -1,7 +1,7 @@
-From 9084d0c769be7aaf552eeaa27eac948226bc10cc Mon Sep 17 00:00:00 2001
+From 8bbb44ba140c40a66f7e0acb6e1237fd646b7d81 Mon Sep 17 00:00:00 2001
 From: Digital Dreamtime <clive.messer at digitaldreamtime.co.uk>
 Date: Thu, 4 Feb 2016 20:04:00 +0000
-Subject: [PATCH 144/156] Limit PCM512x "Digital" gain to 0dB by default with
+Subject: [PATCH 144/168] Limit PCM512x "Digital" gain to 0dB by default with
  HiFiBerry DAC+
 
 24db_digital_gain DT param can be used to specify that PCM512x
diff --git a/target/linux/brcm2708/patches-4.4/0145-BCM270X_DT-Adjust-overlay-README-formatting.patch b/target/linux/brcm2708/patches-4.4/0145-BCM270X_DT-Adjust-overlay-README-formatting.patch
index 77cd99d..5586b35 100644
--- a/target/linux/brcm2708/patches-4.4/0145-BCM270X_DT-Adjust-overlay-README-formatting.patch
+++ b/target/linux/brcm2708/patches-4.4/0145-BCM270X_DT-Adjust-overlay-README-formatting.patch
@@ -1,7 +1,7 @@
-From 009cff59681047c60bf29cbdb8bb323b8d52e020 Mon Sep 17 00:00:00 2001
+From a2da6703c48730cb28c7c3d0eb3be8e1392037e3 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 8 Feb 2016 09:46:33 +0000
-Subject: [PATCH 145/156] BCM270X_DT: Adjust overlay README formatting
+Subject: [PATCH 145/168] BCM270X_DT: Adjust overlay README formatting
 
 ---
  arch/arm/boot/dts/overlays/README | 420 +++++++++++++++++++-------------------
diff --git a/target/linux/brcm2708/patches-4.4/0146-FIXUP-Overlay-README-Restore-spaces-deleted-in-error.patch b/target/linux/brcm2708/patches-4.4/0146-FIXUP-Overlay-README-Restore-spaces-deleted-in-error.patch
index 0373cf0..786f6a9 100644
--- a/target/linux/brcm2708/patches-4.4/0146-FIXUP-Overlay-README-Restore-spaces-deleted-in-error.patch
+++ b/target/linux/brcm2708/patches-4.4/0146-FIXUP-Overlay-README-Restore-spaces-deleted-in-error.patch
@@ -1,7 +1,7 @@
-From 88506d9d1ba9f40f613d77f3301621c7a29541a0 Mon Sep 17 00:00:00 2001
+From 037ae923841027a935bfa8087f27f3b82eeb0b7d Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 8 Feb 2016 12:53:44 +0000
-Subject: [PATCH 146/156] FIXUP: Overlay README - Restore spaces deleted in
+Subject: [PATCH 146/168] FIXUP: Overlay README - Restore spaces deleted in
  error
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0147-pinctrl-bcm2835-Fix-cut-and-paste-error-in-pull-pars.patch b/target/linux/brcm2708/patches-4.4/0147-pinctrl-bcm2835-Fix-cut-and-paste-error-in-pull-pars.patch
index 405499b..5ed87bd 100644
--- a/target/linux/brcm2708/patches-4.4/0147-pinctrl-bcm2835-Fix-cut-and-paste-error-in-pull-pars.patch
+++ b/target/linux/brcm2708/patches-4.4/0147-pinctrl-bcm2835-Fix-cut-and-paste-error-in-pull-pars.patch
@@ -1,7 +1,7 @@
-From adebf09ba85b5844c24fa3bde1c78d836454209c Mon Sep 17 00:00:00 2001
+From b960dcd7028b16d993e452976781acfccb6736b6 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 9 Feb 2016 09:52:13 +0000
-Subject: [PATCH 147/156] pinctrl-bcm2835: Fix cut-and-paste error in "pull"
+Subject: [PATCH 147/168] pinctrl-bcm2835: Fix cut-and-paste error in "pull"
  parsing
 
 The DT bindings for pinctrl-bcm2835 allow both the function and pull
diff --git a/target/linux/brcm2708/patches-4.4/0148-Revert-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-.patch b/target/linux/brcm2708/patches-4.4/0148-Revert-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-.patch
index a7e37e0..fbb03f0 100644
--- a/target/linux/brcm2708/patches-4.4/0148-Revert-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-.patch
+++ b/target/linux/brcm2708/patches-4.4/0148-Revert-BCM270X_DT-Disable-DMA-for-bcm2835-sdhost-on-.patch
@@ -1,7 +1,7 @@
-From a961bf36c70269046bba0a62e3fa96398f2ba4c7 Mon Sep 17 00:00:00 2001
+From 20c0c7ef1f6e9c4c9100a8b85470eecaadfdd41a Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Thu, 11 Feb 2016 17:30:49 +0000
-Subject: [PATCH 148/156] Revert "BCM270X_DT: Disable DMA for bcm2835-sdhost on
+Subject: [PATCH 148/168] Revert "BCM270X_DT: Disable DMA for bcm2835-sdhost on
  Pi2"
 
 This reverts commit 9c1adcc07a40f762fd4ac580f07646784de135e1.
diff --git a/target/linux/brcm2708/patches-4.4/0149-bcm2835-sdhost-Major-revision.patch b/target/linux/brcm2708/patches-4.4/0149-bcm2835-sdhost-Major-revision.patch
index b2c7e76..503c431 100644
--- a/target/linux/brcm2708/patches-4.4/0149-bcm2835-sdhost-Major-revision.patch
+++ b/target/linux/brcm2708/patches-4.4/0149-bcm2835-sdhost-Major-revision.patch
@@ -1,7 +1,7 @@
-From a4f91101191bacec678b5aab26f3d5a23880731d Mon Sep 17 00:00:00 2001
+From b290aecaa10e020314c1fc9f7107930e1f449557 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Thu, 11 Feb 2016 16:51:01 +0000
-Subject: [PATCH 149/156] bcm2835-sdhost: Major revision
+Subject: [PATCH 149/168] bcm2835-sdhost: Major revision
 
 This is a significant revision of the bcm2835-sdhost driver. It
 improves on the original in a number of ways:
diff --git a/target/linux/brcm2708/patches-4.4/0150-BCM270X_DT-Add-dtparams-for-the-SD-interface.patch b/target/linux/brcm2708/patches-4.4/0150-BCM270X_DT-Add-dtparams-for-the-SD-interface.patch
index 0a2c129..fb3324f 100644
--- a/target/linux/brcm2708/patches-4.4/0150-BCM270X_DT-Add-dtparams-for-the-SD-interface.patch
+++ b/target/linux/brcm2708/patches-4.4/0150-BCM270X_DT-Add-dtparams-for-the-SD-interface.patch
@@ -1,7 +1,7 @@
-From 21e15ef5922cdfeb205a633f8720fde9d01fa074 Mon Sep 17 00:00:00 2001
+From 1143be0cdbb5ee7c2f2bc00917671572be832119 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Fri, 12 Feb 2016 15:38:00 +0000
-Subject: [PATCH 150/156] BCM270X_DT: Add dtparams for the SD interface
+Subject: [PATCH 150/168] BCM270X_DT: Add dtparams for the SD interface
 
 Add new base dtparams sd_overclock, sd_force_pio, sd_pio_limit
 and sd_debug.
diff --git a/target/linux/brcm2708/patches-4.4/0151-dcw_otg-trim-xfer-length-when-buffer-larger-than-all.patch b/target/linux/brcm2708/patches-4.4/0151-dcw_otg-trim-xfer-length-when-buffer-larger-than-all.patch
index 62342c2..83f7983 100644
--- a/target/linux/brcm2708/patches-4.4/0151-dcw_otg-trim-xfer-length-when-buffer-larger-than-all.patch
+++ b/target/linux/brcm2708/patches-4.4/0151-dcw_otg-trim-xfer-length-when-buffer-larger-than-all.patch
@@ -1,7 +1,7 @@
-From 5c7f4533904206fc11e2073e709598a65da19e10 Mon Sep 17 00:00:00 2001
+From 8f140ffcf31d4a7506eb2940f4f32042aa37d4b6 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Fri, 12 Feb 2016 14:50:25 +0000
-Subject: [PATCH 151/156] dcw_otg: trim xfer length when buffer larger than
+Subject: [PATCH 151/168] dcw_otg: trim xfer length when buffer larger than
  allocated size is received
 
 ---
diff --git a/target/linux/brcm2708/patches-4.4/0152-bcm2835-sdhost-Restore-ATOMIC-flag-to-PIO-sg-mapping.patch b/target/linux/brcm2708/patches-4.4/0152-bcm2835-sdhost-Restore-ATOMIC-flag-to-PIO-sg-mapping.patch
index a7fbc44..e9f29cf 100644
--- a/target/linux/brcm2708/patches-4.4/0152-bcm2835-sdhost-Restore-ATOMIC-flag-to-PIO-sg-mapping.patch
+++ b/target/linux/brcm2708/patches-4.4/0152-bcm2835-sdhost-Restore-ATOMIC-flag-to-PIO-sg-mapping.patch
@@ -1,7 +1,7 @@
-From 8e6120c43831dc99923873d061c88355cc9bd7a2 Mon Sep 17 00:00:00 2001
+From feef519c2dfe230cc796afa636af9bd34573688c Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Mon, 15 Feb 2016 10:00:27 +0000
-Subject: [PATCH 152/156] bcm2835-sdhost: Restore ATOMIC flag to PIO sg mapping
+Subject: [PATCH 152/168] bcm2835-sdhost: Restore ATOMIC flag to PIO sg mapping
 
 Allocation problems have been seen in a wireless driver, and
 this is the only change which might have been responsible.
diff --git a/target/linux/brcm2708/patches-4.4/0153-Revert-Add-blk_pos-parameter-to-mmc-multi_io_quirk-c.patch b/target/linux/brcm2708/patches-4.4/0153-Revert-Add-blk_pos-parameter-to-mmc-multi_io_quirk-c.patch
index d4e70dd..dcff89f 100644
--- a/target/linux/brcm2708/patches-4.4/0153-Revert-Add-blk_pos-parameter-to-mmc-multi_io_quirk-c.patch
+++ b/target/linux/brcm2708/patches-4.4/0153-Revert-Add-blk_pos-parameter-to-mmc-multi_io_quirk-c.patch
@@ -1,7 +1,7 @@
-From 0d6fe4a3f833f52e53d3dd0150c41c6433a93827 Mon Sep 17 00:00:00 2001
+From c9c409c6a15b885fa1171a92de9769eb69143799 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Tue, 16 Feb 2016 08:47:56 +0000
-Subject: [PATCH 153/156] Revert "Add blk_pos parameter to mmc multi_io_quirk
+Subject: [PATCH 153/168] Revert "Add blk_pos parameter to mmc multi_io_quirk
  callback"
 
 This reverts commit aab95f9b10e8c3d32de2bf163b86f220c88214fe.
diff --git a/target/linux/brcm2708/patches-4.4/0154-Updated-smsc95xx-driver-to-check-for-a-valid-MAC-add.patch b/target/linux/brcm2708/patches-4.4/0154-Updated-smsc95xx-driver-to-check-for-a-valid-MAC-add.patch
index a0ad74e..aaf68d6 100644
--- a/target/linux/brcm2708/patches-4.4/0154-Updated-smsc95xx-driver-to-check-for-a-valid-MAC-add.patch
+++ b/target/linux/brcm2708/patches-4.4/0154-Updated-smsc95xx-driver-to-check-for-a-valid-MAC-add.patch
@@ -1,7 +1,7 @@
-From 5d85ccece7da421c1453abe9e86d1717fa8d7ab7 Mon Sep 17 00:00:00 2001
+From 85d2cfac4109162493fd05169ebf470c03ba9523 Mon Sep 17 00:00:00 2001
 From: Craig Roberts <cjr at craigroberts.net>
 Date: Tue, 16 Feb 2016 10:03:42 +0000
-Subject: [PATCH 154/156] Updated smsc95xx driver to check for a valid MAC
+Subject: [PATCH 154/168] Updated smsc95xx driver to check for a valid MAC
  address in eeprom before using smsc95xx.macaddr parameter passed on command
  line.
 
diff --git a/target/linux/brcm2708/patches-4.4/0155-dcw_otg-Make-trimming-messages-less-noisy.patch b/target/linux/brcm2708/patches-4.4/0155-dcw_otg-Make-trimming-messages-less-noisy.patch
index f9cf4ab..7a3819a 100644
--- a/target/linux/brcm2708/patches-4.4/0155-dcw_otg-Make-trimming-messages-less-noisy.patch
+++ b/target/linux/brcm2708/patches-4.4/0155-dcw_otg-Make-trimming-messages-less-noisy.patch
@@ -1,7 +1,7 @@
-From 12c2b6ced08e0f96bee3522ed3a3eb38f1770291 Mon Sep 17 00:00:00 2001
+From f1146e1e22e5ad206c5a00b78fa00f2d24035355 Mon Sep 17 00:00:00 2001
 From: popcornmix <popcornmix at gmail.com>
 Date: Wed, 17 Feb 2016 19:02:31 +0000
-Subject: [PATCH 155/156] dcw_otg: Make trimming messages less noisy
+Subject: [PATCH 155/168] dcw_otg: Make trimming messages less noisy
 
 ---
  drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c | 6 ++++--
diff --git a/target/linux/brcm2708/patches-4.4/0156-BCM270X_DT-at86rf233-overlay-drop-to-3MHz.patch b/target/linux/brcm2708/patches-4.4/0156-BCM270X_DT-at86rf233-overlay-drop-to-3MHz.patch
index 7df9187..0435963 100644
--- a/target/linux/brcm2708/patches-4.4/0156-BCM270X_DT-at86rf233-overlay-drop-to-3MHz.patch
+++ b/target/linux/brcm2708/patches-4.4/0156-BCM270X_DT-at86rf233-overlay-drop-to-3MHz.patch
@@ -1,7 +1,7 @@
-From 8941fe4985a1cc8f800be00224c6a2e741789d03 Mon Sep 17 00:00:00 2001
+From dedffc7865eeb3176f6753b742f5ef59a031ab79 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil at raspberrypi.org>
 Date: Thu, 18 Feb 2016 15:28:14 +0000
-Subject: [PATCH 156/156] BCM270X_DT: at86rf233 overlay - drop to 3MHz
+Subject: [PATCH 156/168] BCM270X_DT: at86rf233 overlay - drop to 3MHz
 
 The consensus is that 6MHz is too fast, but that 3MHz is OK.
 
diff --git a/target/linux/brcm2708/patches-4.4/0157-bcm2835-sdhost-Downgrade-log-message-status.patch b/target/linux/brcm2708/patches-4.4/0157-bcm2835-sdhost-Downgrade-log-message-status.patch
new file mode 100644
index 0000000..3edeaf8
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0157-bcm2835-sdhost-Downgrade-log-message-status.patch
@@ -0,0 +1,22 @@
+From 40361874fee10c2c4fe1244b76184f9a3f25e57d Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil at raspberrypi.org>
+Date: Fri, 19 Feb 2016 12:04:48 +0000
+Subject: [PATCH 157/168] bcm2835-sdhost: Downgrade log message status
+
+---
+ drivers/mmc/host/bcm2835-sdhost.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/mmc/host/bcm2835-sdhost.c
++++ b/drivers/mmc/host/bcm2835-sdhost.c
+@@ -232,8 +232,8 @@ static void log_init(u32 bus_to_phys)
+ 	sdhost_log_buf = dma_zalloc_coherent(NULL, LOG_SIZE, &sdhost_log_addr,
+ 					     GFP_KERNEL);
+ 	if (sdhost_log_buf) {
+-		pr_err("sdhost: log_buf @ %p (%x)\n",
+-		       sdhost_log_buf, sdhost_log_addr);
++		pr_info("sdhost: log_buf @ %p (%x)\n",
++			sdhost_log_buf, sdhost_log_addr);
+ 		timer_base = ioremap_nocache(bus_to_phys + 0x7e003000, SZ_4K);
+ 		if (!timer_base)
+ 			pr_err("sdhost: failed to remap timer\n");
diff --git a/target/linux/brcm2708/patches-4.4/0158-config-Enable-HCI-over-UARTs.patch b/target/linux/brcm2708/patches-4.4/0158-config-Enable-HCI-over-UARTs.patch
new file mode 100644
index 0000000..b2822da
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0158-config-Enable-HCI-over-UARTs.patch
@@ -0,0 +1,33 @@
+From c14c0a8fc5fd2ef0a9887e64f00751072e4be18b Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil at raspberrypi.org>
+Date: Fri, 15 Jan 2016 16:48:27 +0000
+Subject: [PATCH 158/168] config: Enable HCI over UARTs
+
+---
+ arch/arm/configs/bcm2709_defconfig | 3 +++
+ arch/arm/configs/bcmrpi_defconfig  | 2 ++
+ 2 files changed, 5 insertions(+)
+
+--- a/arch/arm/configs/bcm2709_defconfig
++++ b/arch/arm/configs/bcm2709_defconfig
+@@ -376,6 +376,9 @@ CONFIG_BT_BNEP_PROTO_FILTER=y
+ CONFIG_BT_HIDP=m
+ CONFIG_BT_6LOWPAN=m
+ CONFIG_BT_HCIBTUSB=m
++CONFIG_BT_HCIUART=m
++CONFIG_BT_HCIUART_3WIRE=y
++CONFIG_BT_HCIUART_BCM=y
+ CONFIG_BT_HCIBCM203X=m
+ CONFIG_BT_HCIBPA10X=m
+ CONFIG_BT_HCIBFUSB=m
+--- a/arch/arm/configs/bcmrpi_defconfig
++++ b/arch/arm/configs/bcmrpi_defconfig
+@@ -370,6 +370,8 @@ CONFIG_BT_HIDP=m
+ CONFIG_BT_6LOWPAN=m
+ CONFIG_BT_HCIBTUSB=m
+ CONFIG_BT_HCIUART=m
++CONFIG_BT_HCIUART_3WIRE=y
++CONFIG_BT_HCIUART_BCM=y
+ CONFIG_BT_HCIBCM203X=m
+ CONFIG_BT_HCIBPA10X=m
+ CONFIG_BT_HCIBFUSB=m
diff --git a/target/linux/brcm2708/patches-4.4/0159-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch b/target/linux/brcm2708/patches-4.4/0159-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch
new file mode 100644
index 0000000..1319449
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0159-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch
@@ -0,0 +1,23 @@
+From c3587eda872375110aba7680b431b2a318f3e913 Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil at raspberrypi.org>
+Date: Thu, 17 Dec 2015 13:37:07 +0000
+Subject: [PATCH 159/168] hci_h5: Don't send conf_req when ACTIVE
+
+Without this patch, a modem and kernel can continuously bombard each
+other with conf_req and conf_rsp messages, in a demented game of tag.
+---
+ drivers/bluetooth/hci_h5.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/bluetooth/hci_h5.c
++++ b/drivers/bluetooth/hci_h5.c
+@@ -314,7 +314,8 @@ static void h5_handle_internal_rx(struct
+ 		h5_link_control(hu, conf_req, 3);
+ 	} else if (memcmp(data, conf_req, 2) == 0) {
+ 		h5_link_control(hu, conf_rsp, 2);
+-		h5_link_control(hu, conf_req, 3);
++		if (h5->state != H5_ACTIVE)
++		    h5_link_control(hu, conf_req, 3);
+ 	} else if (memcmp(data, conf_rsp, 2) == 0) {
+ 		if (H5_HDR_LEN(hdr) > 2)
+ 			h5->tx_win = (data[2] & 7);
diff --git a/target/linux/brcm2708/patches-4.4/0160-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch b/target/linux/brcm2708/patches-4.4/0160-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch
new file mode 100644
index 0000000..5fc4aae
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0160-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch
@@ -0,0 +1,29 @@
+From f9289c3059f96101c00c8884954e9e5030cc07bf Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil at raspberrypi.org>
+Date: Tue, 23 Feb 2016 17:26:48 +0000
+Subject: [PATCH 160/168] amba_pl011: Don't use DT aliases for numbering
+
+The pl011 driver looks for DT aliases of the form "serial<n>",
+and if found uses <n> as the device ID. This can cause
+/dev/ttyAMA0 to become /dev/ttyAMA1, which is confusing if the
+other serial port is provided by the 8250 driver which doesn't
+use the same logic.
+---
+ drivers/tty/serial/amba-pl011.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/drivers/tty/serial/amba-pl011.c
++++ b/drivers/tty/serial/amba-pl011.c
+@@ -2313,7 +2313,12 @@ static int pl011_setup_port(struct devic
+ 	if (IS_ERR(base))
+ 		return PTR_ERR(base);
+ 
++	/* Don't use DT serial<n> aliases - it causes the device to
++	   be renumbered to ttyAMA1 if it is the second serial port in the
++	   system, even though the other one is ttyS0. The 8250 driver
++	   doesn't use this logic, so always remains ttyS0.
+ 	index = pl011_probe_dt_alias(index, dev);
++	*/
+ 
+ 	uap->old_cr = 0;
+ 	uap->port.dev = dev;
diff --git a/target/linux/brcm2708/patches-4.4/0161-clk-bcm2835-Add-bindings-for-the-auxiliary-periphera.patch b/target/linux/brcm2708/patches-4.4/0161-clk-bcm2835-Add-bindings-for-the-auxiliary-periphera.patch
new file mode 100644
index 0000000..6da193a
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0161-clk-bcm2835-Add-bindings-for-the-auxiliary-periphera.patch
@@ -0,0 +1,72 @@
+From 7c6c857c68a3744a9a092b5e953b56e2c49fc332 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric at anholt.net>
+Date: Tue, 15 Dec 2015 15:35:57 -0800
+Subject: [PATCH 161/168] clk: bcm2835: Add bindings for the auxiliary
+ peripheral clock gates.
+
+These will be used for enabling UART1, SPI1, and SPI2.
+
+Signed-off-by: Eric Anholt <eric at anholt.net>
+Acked-by: Rob Herring <robh at kernel.org>
+Signed-off-by: Michael Turquette <mturquette at baylibre.com>
+---
+ .../bindings/clock/brcm,bcm2835-aux-clock.txt      | 31 ++++++++++++++++++++++
+ include/dt-bindings/clock/bcm2835-aux.h            | 17 ++++++++++++
+ 2 files changed, 48 insertions(+)
+ create mode 100644 Documentation/devicetree/bindings/clock/brcm,bcm2835-aux-clock.txt
+ create mode 100644 include/dt-bindings/clock/bcm2835-aux.h
+
+--- /dev/null
++++ b/Documentation/devicetree/bindings/clock/brcm,bcm2835-aux-clock.txt
+@@ -0,0 +1,31 @@
++Broadcom BCM2835 auxiliary peripheral support
++
++This binding uses the common clock binding:
++    Documentation/devicetree/bindings/clock/clock-bindings.txt
++
++The auxiliary peripherals (UART, SPI1, and SPI2) have a small register
++area controlling clock gating to the peripherals, and providing an IRQ
++status register.
++
++Required properties:
++- compatible:	Should be "brcm,bcm2835-aux"
++- #clock-cells:	Should be <1>. The permitted clock-specifier values can be
++		  found in include/dt-bindings/clock/bcm2835-aux.h
++- reg:		Specifies base physical address and size of the registers
++- clocks:	The parent clock phandle
++
++Example:
++
++	clocks: cprman at 7e101000 {
++		compatible = "brcm,bcm2835-cprman";
++		#clock-cells = <1>;
++		reg = <0x7e101000 0x2000>;
++		clocks = <&clk_osc>;
++	};
++
++	aux: aux at 0x7e215004 {
++		compatible = "brcm,bcm2835-aux";
++		#clock-cells = <1>;
++		reg = <0x7e215000 0x8>;
++		clocks = <&clocks BCM2835_CLOCK_VPU>;
++	};
+--- /dev/null
++++ b/include/dt-bindings/clock/bcm2835-aux.h
+@@ -0,0 +1,17 @@
++/*
++ * Copyright (C) 2015 Broadcom Corporation
++ *
++ * This program 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 version 2.
++ *
++ * This program is distributed "as is" WITHOUT ANY WARRANTY of any
++ * kind, whether express or implied; without even the implied warranty
++ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU General Public License for more details.
++ */
++
++#define BCM2835_AUX_CLOCK_UART		0
++#define BCM2835_AUX_CLOCK_SPI1		1
++#define BCM2835_AUX_CLOCK_SPI2		2
++#define BCM2835_AUX_CLOCK_COUNT		3
diff --git a/target/linux/brcm2708/patches-4.4/0162-clk-bcm2835-Add-a-driver-for-the-auxiliary-periphera.patch b/target/linux/brcm2708/patches-4.4/0162-clk-bcm2835-Add-a-driver-for-the-auxiliary-periphera.patch
new file mode 100644
index 0000000..6218471
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0162-clk-bcm2835-Add-a-driver-for-the-auxiliary-periphera.patch
@@ -0,0 +1,118 @@
+From c8cb8408b42966dc660ff80ecd2fddd641a60447 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric at anholt.net>
+Date: Tue, 15 Dec 2015 15:35:58 -0800
+Subject: [PATCH 162/168] clk: bcm2835: Add a driver for the auxiliary
+ peripheral clock gates.
+
+There are a pair of SPI masters and a mini UART that were last minute
+additions.  As a result, they didn't get integrated in the same way as
+the other gates off of the VPU clock in CPRMAN.
+
+Signed-off-by: Eric Anholt <eric at anholt.net>
+Signed-off-by: Michael Turquette <mturquette at baylibre.com>
+
+updated Makefile to preserve the rasoberry pi architectures
+---
+ drivers/clk/bcm/Makefile          |  1 +
+ drivers/clk/bcm/clk-bcm2835-aux.c | 85 +++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 86 insertions(+)
+ create mode 100644 drivers/clk/bcm/clk-bcm2835-aux.c
+
+--- a/drivers/clk/bcm/Makefile
++++ b/drivers/clk/bcm/Makefile
+@@ -4,6 +4,7 @@ obj-$(CONFIG_CLK_BCM_KONA)	+= clk-bcm281
+ obj-$(CONFIG_CLK_BCM_KONA)	+= clk-bcm21664.o
+ obj-$(CONFIG_COMMON_CLK_IPROC)	+= clk-iproc-armpll.o clk-iproc-pll.o clk-iproc-asiu.o
+ obj-$(CONFIG_ARCH_BCM2835)$(CONFIG_ARCH_BCM2708)$(CONFIG_ARCH_BCM2709)	+= clk-bcm2835.o
++obj-$(CONFIG_ARCH_BCM2835)	+= clk-bcm2835-aux.o
+ obj-$(CONFIG_COMMON_CLK_IPROC)	+= clk-ns2.o
+ obj-$(CONFIG_ARCH_BCM_CYGNUS)	+= clk-cygnus.o
+ obj-$(CONFIG_ARCH_BCM_NSP)	+= clk-nsp.o
+--- /dev/null
++++ b/drivers/clk/bcm/clk-bcm2835-aux.c
+@@ -0,0 +1,85 @@
++/*
++ * Copyright (C) 2015 Broadcom
++ *
++ * This program 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.
++ *
++ * 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 <linux/clk.h>
++#include <linux/clk-provider.h>
++#include <linux/clk/bcm2835.h>
++#include <linux/module.h>
++#include <linux/platform_device.h>
++#include <dt-bindings/clock/bcm2835-aux.h>
++
++#define BCM2835_AUXIRQ		0x00
++#define BCM2835_AUXENB		0x04
++
++static int bcm2835_aux_clk_probe(struct platform_device *pdev)
++{
++	struct device *dev = &pdev->dev;
++	struct clk_onecell_data *onecell;
++	const char *parent;
++	struct clk *parent_clk;
++	struct resource *res;
++	void __iomem *reg, *gate;
++
++	parent_clk = devm_clk_get(dev, NULL);
++	if (IS_ERR(parent_clk))
++		return PTR_ERR(parent_clk);
++	parent = __clk_get_name(parent_clk);
++
++	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
++	reg = devm_ioremap_resource(dev, res);
++	if (!reg)
++		return -ENODEV;
++
++	onecell = devm_kmalloc(dev, sizeof(*onecell), GFP_KERNEL);
++	if (!onecell)
++		return -ENOMEM;
++	onecell->clk_num = BCM2835_AUX_CLOCK_COUNT;
++	onecell->clks = devm_kcalloc(dev, BCM2835_AUX_CLOCK_COUNT,
++				     sizeof(*onecell->clks), GFP_KERNEL);
++	if (!onecell->clks)
++		return -ENOMEM;
++
++	gate = reg + BCM2835_AUXENB;
++	onecell->clks[BCM2835_AUX_CLOCK_UART] =
++		clk_register_gate(dev, "aux_uart", parent, 0, gate, 0, 0, NULL);
++
++	onecell->clks[BCM2835_AUX_CLOCK_SPI1] =
++		clk_register_gate(dev, "aux_spi1", parent, 0, gate, 1, 0, NULL);
++
++	onecell->clks[BCM2835_AUX_CLOCK_SPI2] =
++		clk_register_gate(dev, "aux_spi2", parent, 0, gate, 2, 0, NULL);
++
++	of_clk_add_provider(pdev->dev.of_node, of_clk_src_onecell_get, onecell);
++
++	return 0;
++}
++
++static const struct of_device_id bcm2835_aux_clk_of_match[] = {
++	{ .compatible = "brcm,bcm2835-aux", },
++	{},
++};
++MODULE_DEVICE_TABLE(of, bcm2835_aux_clk_of_match);
++
++static struct platform_driver bcm2835_aux_clk_driver = {
++	.driver = {
++		.name = "bcm2835-aux-clk",
++		.of_match_table = bcm2835_aux_clk_of_match,
++	},
++	.probe          = bcm2835_aux_clk_probe,
++};
++builtin_platform_driver(bcm2835_aux_clk_driver);
++
++MODULE_AUTHOR("Eric Anholt <eric at anholt.net>");
++MODULE_DESCRIPTION("BCM2835 auxiliary peripheral clock driver");
++MODULE_LICENSE("GPL v2");
diff --git a/target/linux/brcm2708/patches-4.4/0163-Aux-SPI-1-2-implementation.patch b/target/linux/brcm2708/patches-4.4/0163-Aux-SPI-1-2-implementation.patch
new file mode 100644
index 0000000..4ddcaf5
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0163-Aux-SPI-1-2-implementation.patch
@@ -0,0 +1,700 @@
+From 1e11757050f8f56fd5393f851a9b5a6276538029 Mon Sep 17 00:00:00 2001
+From: Fraser <github at frasersdev.net>
+Date: Tue, 23 Feb 2016 10:04:37 +1100
+Subject: [PATCH 163/168] Aux SPI 1&2 implementation
+
+Adds aux spi 1 & 2 devices to compatible raspberry PIs.
+* Minor config of the driver build environment to ensure they get built
+for CONFIG_ARCH_BCM2708 & CONFIG_ARCH_BCM2709 devices.
+* Adds the aux spi driver into the defconfigs as a module.
+* Adds the auxiliary and spi1/2 devices into the device tree in a
+disabled state
+* Provides decide tree overlays which enables the devices and gives
+users a degree of control over how they are setup.
+---
+ arch/arm/boot/dts/bcm2708_common.dtsi           | 34 ++++++++-
+ arch/arm/boot/dts/overlays/Makefile             |  6 ++
+ arch/arm/boot/dts/overlays/README               | 99 +++++++++++++++++++++++++
+ arch/arm/boot/dts/overlays/spi1-1cs-overlay.dts | 57 ++++++++++++++
+ arch/arm/boot/dts/overlays/spi1-2cs-overlay.dts | 69 +++++++++++++++++
+ arch/arm/boot/dts/overlays/spi1-3cs-overlay.dts | 81 ++++++++++++++++++++
+ arch/arm/boot/dts/overlays/spi2-1cs-overlay.dts | 57 ++++++++++++++
+ arch/arm/boot/dts/overlays/spi2-2cs-overlay.dts | 69 +++++++++++++++++
+ arch/arm/boot/dts/overlays/spi2-3cs-overlay.dts | 81 ++++++++++++++++++++
+ arch/arm/configs/bcm2709_defconfig              |  1 +
+ arch/arm/configs/bcmrpi_defconfig               |  1 +
+ drivers/clk/bcm/Makefile                        |  2 +-
+ drivers/spi/Kconfig                             |  2 +-
+ 13 files changed, 556 insertions(+), 3 deletions(-)
+ create mode 100644 arch/arm/boot/dts/overlays/spi1-1cs-overlay.dts
+ create mode 100644 arch/arm/boot/dts/overlays/spi1-2cs-overlay.dts
+ create mode 100644 arch/arm/boot/dts/overlays/spi1-3cs-overlay.dts
+ create mode 100644 arch/arm/boot/dts/overlays/spi2-1cs-overlay.dts
+ create mode 100644 arch/arm/boot/dts/overlays/spi2-2cs-overlay.dts
+ create mode 100644 arch/arm/boot/dts/overlays/spi2-3cs-overlay.dts
+
+--- a/arch/arm/boot/dts/bcm2708_common.dtsi
++++ b/arch/arm/boot/dts/bcm2708_common.dtsi
+@@ -1,3 +1,4 @@
++#include <dt-bindings/clock/bcm2835-aux.h>
+ #include "skeleton.dtsi"
+ 
+ / {
+@@ -5,6 +6,7 @@
+ 
+ 	aliases {
+ 		audio = &audio;
++		aux = &aux;
+ 		sound = &sound;
+ 		soc = &soc;
+ 		dma = &dma;
+@@ -19,6 +21,8 @@
+ 		spi0 = &spi0;
+ 		i2c0 = &i2c0;
+ 		uart1 = &uart1;
++		spi1 = &spi1;
++		spi2 = &spi2;
+ 		mmc = &mmc;
+ 		i2c1 = &i2c1;
+ 		i2c2 = &i2c2;
+@@ -186,6 +190,14 @@
+ 			status = "disabled";
+ 		};
+ 
++		aux: aux at 0x7e215004 {
++			compatible = "brcm,bcm2835-aux";
++			#clock-cells = <1>;
++			reg = <0x7e215000 0x8>;
++			clocks = <&clk_core>;
++			status = "disabled";
++		};
++
+ 		uart1: uart at 7e215040 {
+ 			compatible = "brcm,bcm2835-aux-uart", "ns16550";
+ 			reg = <0x7e215040 0x40>;
+@@ -194,7 +206,27 @@
+ 			reg-shift = <2>;
+ 			no-loopback-test;
+ 			status = "disabled";
+-	        };
++		};
++
++		spi1: spi at 7e215080 {
++			compatible = "brcm,bcm2835-aux-spi";
++			reg = <0x7e215080 0x40>, <0x7e215000 0x8>;
++			interrupts = <1 29>;
++			clocks = <&aux BCM2835_AUX_CLOCK_SPI1>;
++			#address-cells = <1>;
++			#size-cells = <0>;
++			status = "disabled";
++		};
++
++		spi2: spi at 7e2150C0 {
++			compatible = "brcm,bcm2835-aux-spi";
++			reg = <0x7e2150C0 0x40>, <0x7e215000 0x8>;
++			interrupts = <1 29>;
++			clocks = <&aux BCM2835_AUX_CLOCK_SPI2>;
++			#address-cells = <1>;
++			#size-cells = <0>;
++			status = "disabled";
++		};
+ 
+ 		mmc: mmc at 7e300000 {
+ 			compatible = "brcm,bcm2835-mmc";
+--- a/arch/arm/boot/dts/overlays/Makefile
++++ b/arch/arm/boot/dts/overlays/Makefile
+@@ -57,6 +57,12 @@ dtb-$(RPI_DT_OVERLAYS) += sdtweak-overla
+ dtb-$(RPI_DT_OVERLAYS) += smi-dev-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += smi-nand-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += smi-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += spi1-1cs-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += spi1-2cs-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += spi1-3cs-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += spi2-1cs-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += spi2-2cs-overlay.dtb
++dtb-$(RPI_DT_OVERLAYS) += spi2-3cs-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += spi-gpio35-39-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += tinylcd35-overlay.dtb
+ dtb-$(RPI_DT_OVERLAYS) += uart1-overlay.dtb
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -713,6 +713,105 @@ Load:   dtoverlay=spi-gpio35-39
+ Params: <None>
+ 
+ 
++Name:   spi1-1cs
++Info:   Enables spi1 with a single chip select (CS) line and associated spidev
++        dev node. The gpio pin number for the CS line and spidev device node
++        creation are configurable.
++        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
++              A+, B+, Zero and PI2 B; as well as the Compute Module.
++Load:   dtoverlay=spi1-1cs,<param>=<val>
++Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
++        cs0_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev1.0 (default
++                                is 'okay' or enabled).
++
++
++Name:   spi1-2cs
++Info:   Enables spi1 with two chip select (CS) lines and associated spidev
++        dev nodes. The gpio pin numbers for the CS lines and spidev device node
++        creation are configurable.
++        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
++              A+, B+, Zero and PI2 B; as well as the Compute Module.
++Load:   dtoverlay=spi1-2cs,<param>=<val>
++Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
++        cs1_pin                 GPIO pin for CS1 (default 17 - BCM SPI1_CE1).
++        cs0_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev1.0 (default
++                                is 'okay' or enabled).
++        cs1_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev1.1 (default
++                                is 'okay' or enabled).
++
++
++Name:   spi1-3cs
++Info:   Enables spi1 with three chip select (CS) lines and associated spidev
++        dev nodes. The gpio pin numbers for the CS lines and spidev device node
++        creation are configurable.
++        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
++              A+, B+, Zero and PI2 B; as well as the Compute Module.
++Load:   dtoverlay=spi1-3cs,<param>=<val>
++Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
++        cs1_pin                 GPIO pin for CS1 (default 17 - BCM SPI1_CE1).
++        cs2_pin                 GPIO pin for CS2 (default 16 - BCM SPI1_CE2).
++        cs0_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev1.0 (default
++                                is 'okay' or enabled).
++        cs1_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev1.1 (default
++                                is 'okay' or enabled).
++        cs2_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev1.2 (default
++                                is 'okay' or enabled).
++
++
++Name:   spi2-1cs
++Info:   Enables spi2 with a single chip select (CS) line and associated spidev
++        dev node. The gpio pin number for the CS line and spidev device node
++        creation are configurable.
++        N.B.: spi2 is only accessible with the Compute Module.
++Load:   dtoverlay=spi2-1cs,<param>=<val>
++Params: cs0_pin                 GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
++        cs0_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev2.0 (default
++                                is 'okay' or enabled).
++
++
++Name:   spi2-2cs
++Info:   Enables spi2 with two chip select (CS) lines and associated spidev
++        dev nodes. The gpio pin numbers for the CS lines and spidev device node
++        creation are configurable.
++        N.B.: spi2 is only accessible with the Compute Module.
++Load:   dtoverlay=spi2-2cs,<param>=<val>
++Params: cs0_pin                 GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
++        cs1_pin                 GPIO pin for CS1 (default 44 - BCM SPI2_CE1).
++        cs0_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev2.0 (default
++                                is 'okay' or enabled).
++        cs1_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev2.1 (default
++                                is 'okay' or enabled).
++
++
++Name:   spi2-3cs
++Info:   Enables spi2 with three chip select (CS) lines and associated spidev
++        dev nodes. The gpio pin numbers for the CS lines and spidev device node
++        creation are configurable.
++        N.B.: spi2 is only accessible with the Compute Module.
++Load:   dtoverlay=spi2-3cs,<param>=<val>
++Params: cs0_pin                 GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
++        cs1_pin                 GPIO pin for CS1 (default 44 - BCM SPI2_CE1).
++        cs2_pin                 GPIO pin for CS2 (default 45 - BCM SPI2_CE2).
++        cs0_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev2.0 (default
++                                is 'okay' or enabled).
++        cs1_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev2.1 (default
++                                is 'okay' or enabled).
++        cs2_spidev              Set to 'disabled' to stop the creation of a
++                                userspace device node /dev/spidev2.2 (default
++                                is 'okay' or enabled).
++
++
+ Name:   tinylcd35
+ Info:   3.5" Color TFT Display by www.tinylcd.com
+         Options: Touch, RTC, keypad
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/spi1-1cs-overlay.dts
+@@ -0,0 +1,57 @@
++/dts-v1/;
++/plugin/;
++
++
++/ {
++	compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
++
++	fragment at 0 {
++		target = <&gpio>;
++		__overlay__ {
++			spi1_pins: spi1_pins {
++				brcm,pins = <19 20 21>;
++				brcm,function = <3>; /* alt4 */
++			};
++
++			spi1_cs_pins: spi1_cs_pins {
++				brcm,pins = <18>;
++				brcm,function = <1>; /* output */
++			};
++		};
++	};
++
++	fragment at 1 {
++		target = <&spi1>;
++		frag1: __overlay__ {
++			/* needed to avoid dtc warning */
++			#address-cells = <1>;
++			#size-cells = <0>;
++			pinctrl-names = "default";
++			pinctrl-0 = <&spi1_pins &spi1_cs_pins>;
++			cs-gpios = <&gpio 18 1>;
++			status = "okay";
++
++			spidev1_0: spidev at 0 {
++				compatible = "spidev";
++				reg = <0>;      /* CE0 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++		};
++	};
++
++	fragment at 2 {
++		target = <&aux>;
++		__overlay__ {
++			status = "okay";
++		};
++	};
++
++	__overrides__ {
++		cs0_pin  = <&spi1_cs_pins>,"brcm,pins:0",
++			   <&frag1>,"cs-gpios:4";
++		cs0_spidev = <&spidev1_0>,"status";
++	};
++};
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/spi1-2cs-overlay.dts
+@@ -0,0 +1,69 @@
++/dts-v1/;
++/plugin/;
++
++
++/ {
++	compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
++
++	fragment at 0 {
++		target = <&gpio>;
++		__overlay__ {
++			spi1_pins: spi1_pins {
++				brcm,pins = <19 20 21>;
++				brcm,function = <3>; /* alt4 */
++			};
++
++			spi1_cs_pins: spi1_cs_pins {
++				brcm,pins = <18 17>;
++				brcm,function = <1>; /* output */
++			};
++		};
++	};
++
++	fragment at 1 {
++		target = <&spi1>;
++		frag1: __overlay__ {
++			/* needed to avoid dtc warning */
++			#address-cells = <1>;
++			#size-cells = <0>;
++			pinctrl-names = "default";
++			pinctrl-0 = <&spi1_pins &spi1_cs_pins>;
++			cs-gpios = <&gpio 18 1>, <&gpio 17 1>;
++			status = "okay";
++
++			spidev1_0: spidev at 0 {
++				compatible = "spidev";
++				reg = <0>;      /* CE0 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++
++			spidev1_1: spidev at 1 {
++				compatible = "spidev";
++				reg = <1>;      /* CE1 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++		};
++	};
++
++	fragment at 2 {
++		target = <&aux>;
++		__overlay__ {
++			status = "okay";
++		};
++	};
++
++	__overrides__ {
++		cs0_pin  = <&spi1_cs_pins>,"brcm,pins:0",
++			   <&frag1>,"cs-gpios:4";
++		cs1_pin  = <&spi1_cs_pins>,"brcm,pins:4",
++			   <&frag1>,"cs-gpios:16";
++		cs0_spidev = <&spidev1_0>,"status";
++		cs1_spidev = <&spidev1_1>,"status";
++	};
++};
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/spi1-3cs-overlay.dts
+@@ -0,0 +1,81 @@
++/dts-v1/;
++/plugin/;
++
++
++/ {
++	compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
++
++	fragment at 0 {
++		target = <&gpio>;
++		__overlay__ {
++			spi1_pins: spi1_pins {
++				brcm,pins = <19 20 21>;
++				brcm,function = <3>; /* alt4 */
++			};
++
++			spi1_cs_pins: spi1_cs_pins {
++				brcm,pins = <18 17 16>;
++				brcm,function = <1>; /* output */
++			};
++		};
++	};
++
++	fragment at 1 {
++		target = <&spi1>;
++		frag1: __overlay__ {
++			/* needed to avoid dtc warning */
++			#address-cells = <1>;
++			#size-cells = <0>;
++			pinctrl-names = "default";
++			pinctrl-0 = <&spi1_pins &spi1_cs_pins>;
++			cs-gpios = <&gpio 18 1>, <&gpio 17 1>, <&gpio 16 1>;
++			status = "okay";
++
++			spidev1_0: spidev at 0 {
++				compatible = "spidev";
++				reg = <0>;      /* CE0 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++
++			spidev1_1: spidev at 1 {
++				compatible = "spidev";
++				reg = <1>;      /* CE1 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++
++			spidev1_2: spidev at 2 {
++				compatible = "spidev";
++				reg = <2>;      /* CE2 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++		};
++	};
++
++	fragment at 2 {
++		target = <&aux>;
++		__overlay__ {
++			status = "okay";
++		};
++	};
++
++	__overrides__ {
++		cs0_pin  = <&spi1_cs_pins>,"brcm,pins:0",
++			   <&frag1>,"cs-gpios:4";
++		cs1_pin  = <&spi1_cs_pins>,"brcm,pins:4",
++			   <&frag1>,"cs-gpios:16";
++		cs2_pin  = <&spi1_cs_pins>,"brcm,pins:8",
++			   <&frag1>,"cs-gpios:28";
++		cs0_spidev = <&spidev1_0>,"status";
++		cs1_spidev = <&spidev1_1>,"status";
++		cs2_spidev = <&spidev1_2>,"status";
++	};
++};
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/spi2-1cs-overlay.dts
+@@ -0,0 +1,57 @@
++/dts-v1/;
++/plugin/;
++
++
++/ {
++	compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
++
++	fragment at 0 {
++		target = <&gpio>;
++		__overlay__ {
++			spi2_pins: spi2_pins {
++				brcm,pins = <40 41 42>;
++				brcm,function = <3>; /* alt4 */
++			};
++
++			spi2_cs_pins: spi2_cs_pins {
++				brcm,pins = <43>;
++				brcm,function = <1>; /* output */
++			};
++		};
++	};
++
++	fragment at 1 {
++		target = <&spi2>;
++		frag1: __overlay__ {
++			/* needed to avoid dtc warning */
++			#address-cells = <1>;
++			#size-cells = <0>;
++			pinctrl-names = "default";
++			pinctrl-0 = <&spi2_pins &spi2_cs_pins>;
++			cs-gpios = <&gpio 43 1>;
++			status = "okay";
++
++			spidev2_0: spidev at 0 {
++				compatible = "spidev";
++				reg = <0>;      /* CE0 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++		};
++	};
++
++	fragment at 2 {
++		target = <&aux>;
++		__overlay__ {
++			status = "okay";
++		};
++	};
++
++	__overrides__ {
++		cs0_pin  = <&spi2_cs_pins>,"brcm,pins:0",
++			   <&frag1>,"cs-gpios:4";
++		cs0_spidev = <&spidev2_0>,"status";
++	};
++};
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/spi2-2cs-overlay.dts
+@@ -0,0 +1,69 @@
++/dts-v1/;
++/plugin/;
++
++
++/ {
++	compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
++
++	fragment at 0 {
++		target = <&gpio>;
++		__overlay__ {
++			spi2_pins: spi2_pins {
++				brcm,pins = <40 41 42>;
++				brcm,function = <3>; /* alt4 */
++			};
++
++			spi2_cs_pins: spi2_cs_pins {
++				brcm,pins = <43 44>;
++				brcm,function = <1>; /* output */
++			};
++		};
++	};
++
++	fragment at 1 {
++		target = <&spi2>;
++		frag1: __overlay__ {
++			/* needed to avoid dtc warning */
++			#address-cells = <1>;
++			#size-cells = <0>;
++			pinctrl-names = "default";
++			pinctrl-0 = <&spi2_pins &spi2_cs_pins>;
++			cs-gpios = <&gpio 43 1>, <&gpio 44 1>;
++			status = "okay";
++
++			spidev2_0: spidev at 0 {
++				compatible = "spidev";
++				reg = <0>;      /* CE0 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++
++			spidev2_1: spidev at 1 {
++				compatible = "spidev";
++				reg = <1>;      /* CE1 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++		};
++	};
++
++	fragment at 2 {
++		target = <&aux>;
++		__overlay__ {
++			status = "okay";
++		};
++	};
++
++	__overrides__ {
++		cs0_pin  = <&spi2_cs_pins>,"brcm,pins:0",
++			   <&frag1>,"cs-gpios:4";
++		cs1_pin  = <&spi2_cs_pins>,"brcm,pins:4",
++			   <&frag1>,"cs-gpios:16";
++		cs0_spidev = <&spidev2_0>,"status";
++		cs1_spidev = <&spidev2_1>,"status";
++	};
++};
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/spi2-3cs-overlay.dts
+@@ -0,0 +1,81 @@
++/dts-v1/;
++/plugin/;
++
++
++/ {
++	compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709";
++
++	fragment at 0 {
++		target = <&gpio>;
++		__overlay__ {
++			spi2_pins: spi2_pins {
++				brcm,pins = <40 41 42>;
++				brcm,function = <3>; /* alt4 */
++			};
++
++			spi2_cs_pins: spi2_cs_pins {
++				brcm,pins = <43 44 45>;
++				brcm,function = <1>; /* output */
++			};
++		};
++	};
++
++	fragment at 1 {
++		target = <&spi2>;
++		frag1: __overlay__ {
++			/* needed to avoid dtc warning */
++			#address-cells = <1>;
++			#size-cells = <0>;
++			pinctrl-names = "default";
++			pinctrl-0 = <&spi2_pins &spi2_cs_pins>;
++			cs-gpios = <&gpio 43 1>, <&gpio 44 1>, <&gpio 45 1>;
++			status = "okay";
++
++			spidev2_0: spidev at 0 {
++				compatible = "spidev";
++				reg = <0>;      /* CE0 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++
++			spidev2_1: spidev at 1 {
++				compatible = "spidev";
++				reg = <1>;      /* CE1 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++
++			spidev2_2: spidev at 2 {
++				compatible = "spidev";
++				reg = <2>;      /* CE2 */
++				#address-cells = <1>;
++				#size-cells = <0>;
++				spi-max-frequency = <500000>;
++				status = "okay";
++			};
++		};
++	};
++
++	fragment at 2 {
++		target = <&aux>;
++		__overlay__ {
++			status = "okay";
++		};
++	};
++
++	__overrides__ {
++		cs0_pin  = <&spi2_cs_pins>,"brcm,pins:0",
++			   <&frag1>,"cs-gpios:4";
++		cs1_pin  = <&spi2_cs_pins>,"brcm,pins:4",
++			   <&frag1>,"cs-gpios:16";
++		cs2_pin  = <&spi2_cs_pins>,"brcm,pins:8",
++			   <&frag1>,"cs-gpios:28";
++		cs0_spidev = <&spidev2_0>,"status";
++		cs1_spidev = <&spidev2_1>,"status";
++		cs2_spidev = <&spidev2_2>,"status";
++	};
++};
+--- a/arch/arm/configs/bcm2709_defconfig
++++ b/arch/arm/configs/bcm2709_defconfig
+@@ -601,6 +601,7 @@ CONFIG_I2C_BCM2708=m
+ CONFIG_I2C_GPIO=m
+ CONFIG_SPI=y
+ CONFIG_SPI_BCM2835=m
++CONFIG_SPI_BCM2835AUX=m
+ CONFIG_SPI_SPIDEV=y
+ CONFIG_PPS=m
+ CONFIG_PPS_CLIENT_LDISC=m
+--- a/arch/arm/configs/bcmrpi_defconfig
++++ b/arch/arm/configs/bcmrpi_defconfig
+@@ -593,6 +593,7 @@ CONFIG_I2C_BCM2708=m
+ CONFIG_I2C_GPIO=m
+ CONFIG_SPI=y
+ CONFIG_SPI_BCM2835=m
++CONFIG_SPI_BCM2835AUX=m
+ CONFIG_SPI_SPIDEV=y
+ CONFIG_PPS=m
+ CONFIG_PPS_CLIENT_LDISC=m
+--- a/drivers/clk/bcm/Makefile
++++ b/drivers/clk/bcm/Makefile
+@@ -4,7 +4,7 @@ obj-$(CONFIG_CLK_BCM_KONA)	+= clk-bcm281
+ obj-$(CONFIG_CLK_BCM_KONA)	+= clk-bcm21664.o
+ obj-$(CONFIG_COMMON_CLK_IPROC)	+= clk-iproc-armpll.o clk-iproc-pll.o clk-iproc-asiu.o
+ obj-$(CONFIG_ARCH_BCM2835)$(CONFIG_ARCH_BCM2708)$(CONFIG_ARCH_BCM2709)	+= clk-bcm2835.o
+-obj-$(CONFIG_ARCH_BCM2835)	+= clk-bcm2835-aux.o
++obj-$(CONFIG_ARCH_BCM2835)$(CONFIG_ARCH_BCM2708)$(CONFIG_ARCH_BCM2709)	+= clk-bcm2835-aux.o
+ obj-$(CONFIG_COMMON_CLK_IPROC)	+= clk-ns2.o
+ obj-$(CONFIG_ARCH_BCM_CYGNUS)	+= clk-cygnus.o
+ obj-$(CONFIG_ARCH_BCM_NSP)	+= clk-nsp.o
+--- a/drivers/spi/Kconfig
++++ b/drivers/spi/Kconfig
+@@ -90,7 +90,7 @@ config SPI_BCM2835
+ 
+ config SPI_BCM2835AUX
+ 	tristate "BCM2835 SPI auxiliary controller"
+-	depends on ARCH_BCM2835 || COMPILE_TEST
++	depends on ARCH_BCM2835 || ARCH_BCM2708 || ARCH_BCM2709 || COMPILE_TEST
+ 	depends on GPIOLIB
+ 	help
+ 	  This selects a driver for the Broadcom BCM2835 SPI aux master.
diff --git a/target/linux/brcm2708/patches-4.4/0164-ASoC-bcm-add-missing-.owner-fields-in-sound-card-dri.patch b/target/linux/brcm2708/patches-4.4/0164-ASoC-bcm-add-missing-.owner-fields-in-sound-card-dri.patch
new file mode 100644
index 0000000..b1d0941
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0164-ASoC-bcm-add-missing-.owner-fields-in-sound-card-dri.patch
@@ -0,0 +1,108 @@
+From 8547bb07f9d79874648c6a4aab545fbabe0b4765 Mon Sep 17 00:00:00 2001
+From: Matthias Reichl <hias at horus.com>
+Date: Tue, 23 Feb 2016 17:28:23 +0100
+Subject: [PATCH 164/168] ASoC: bcm: add missing .owner fields in sound card
+ drivers
+
+If snd_soc_card.owner is not set the kernel won't do usage refcounting
+and one can remove the card driver module while it's in use (eg playback
+active) - which leads to a kernel crash.
+
+The missing owner field also prevents ALSA slot ordering
+(options snd slots=module-name1,module-name-2,...) from working with
+the I2S cards as it has no module name to match against.
+
+Fix these issues by setting the .owner field in the snd_soc_card structs.
+
+Signed-off-by: Matthias Reichl <hias at horus.com>
+---
+ sound/soc/bcm/hifiberry_amp.c     | 1 +
+ sound/soc/bcm/hifiberry_dac.c     | 1 +
+ sound/soc/bcm/hifiberry_dacplus.c | 1 +
+ sound/soc/bcm/hifiberry_digi.c    | 1 +
+ sound/soc/bcm/iqaudio-dac.c       | 1 +
+ sound/soc/bcm/raspidac3.c         | 1 +
+ sound/soc/bcm/rpi-dac.c           | 1 +
+ sound/soc/bcm/rpi-proto.c         | 1 +
+ 8 files changed, 8 insertions(+)
+
+--- a/sound/soc/bcm/hifiberry_amp.c
++++ b/sound/soc/bcm/hifiberry_amp.c
+@@ -61,6 +61,7 @@ static struct snd_soc_dai_link snd_rpi_h
+ 
+ static struct snd_soc_card snd_rpi_hifiberry_amp = {
+ 	.name         = "snd_rpi_hifiberry_amp",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_hifiberry_amp_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_hifiberry_amp_dai),
+ };
+--- a/sound/soc/bcm/hifiberry_dac.c
++++ b/sound/soc/bcm/hifiberry_dac.c
+@@ -63,6 +63,7 @@ static struct snd_soc_dai_link snd_rpi_h
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_hifiberry_dac = {
+ 	.name         = "snd_rpi_hifiberry_dac",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_hifiberry_dac_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_hifiberry_dac_dai),
+ };
+--- a/sound/soc/bcm/hifiberry_dacplus.c
++++ b/sound/soc/bcm/hifiberry_dacplus.c
+@@ -287,6 +287,7 @@ static struct snd_soc_dai_link snd_rpi_h
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_hifiberry_dacplus = {
+ 	.name         = "snd_rpi_hifiberry_dacplus",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_hifiberry_dacplus_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_hifiberry_dacplus_dai),
+ };
+--- a/sound/soc/bcm/hifiberry_digi.c
++++ b/sound/soc/bcm/hifiberry_digi.c
+@@ -164,6 +164,7 @@ static struct snd_soc_dai_link snd_rpi_h
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_hifiberry_digi = {
+ 	.name         = "snd_rpi_hifiberry_digi",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_hifiberry_digi_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_hifiberry_digi_dai),
+ };
+--- a/sound/soc/bcm/iqaudio-dac.c
++++ b/sound/soc/bcm/iqaudio-dac.c
+@@ -77,6 +77,7 @@ static struct snd_soc_dai_link snd_rpi_i
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_iqaudio_dac = {
+ 	.name         = "IQaudIODAC",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_iqaudio_dac_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_iqaudio_dac_dai),
+ };
+--- a/sound/soc/bcm/raspidac3.c
++++ b/sound/soc/bcm/raspidac3.c
+@@ -128,6 +128,7 @@ static struct snd_soc_dai_link snd_rpi_r
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_raspidac3 = {
+ 	.name         = "RaspiDAC Rev.3x HiFi Audio Card",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_raspidac3_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_raspidac3_dai),
+ };
+--- a/sound/soc/bcm/rpi-dac.c
++++ b/sound/soc/bcm/rpi-dac.c
+@@ -60,6 +60,7 @@ static struct snd_soc_dai_link snd_rpi_r
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_rpi_dac = {
+ 	.name         = "snd_rpi_rpi_dac",
++	.owner        = THIS_MODULE,
+ 	.dai_link     = snd_rpi_rpi_dac_dai,
+ 	.num_links    = ARRAY_SIZE(snd_rpi_rpi_dac_dai),
+ };
+--- a/sound/soc/bcm/rpi-proto.c
++++ b/sound/soc/bcm/rpi-proto.c
+@@ -91,6 +91,7 @@ static struct snd_soc_dai_link snd_rpi_p
+ /* audio machine driver */
+ static struct snd_soc_card snd_rpi_proto = {
+ 	.name		= "snd_rpi_proto",
++	.owner		= THIS_MODULE,
+ 	.dai_link	= snd_rpi_proto_dai,
+ 	.num_links	= ARRAY_SIZE(snd_rpi_proto_dai),
+ };
diff --git a/target/linux/brcm2708/patches-4.4/0165-smsx95xx-Add-option-to-disable-the-crimes-against-tr.patch b/target/linux/brcm2708/patches-4.4/0165-smsx95xx-Add-option-to-disable-the-crimes-against-tr.patch
new file mode 100644
index 0000000..c80aebf
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0165-smsx95xx-Add-option-to-disable-the-crimes-against-tr.patch
@@ -0,0 +1,44 @@
+From b14062ee42e3fd1d473fa02921df73dec28636e5 Mon Sep 17 00:00:00 2001
+From: popcornmix <popcornmix at gmail.com>
+Date: Wed, 20 Jan 2016 17:50:09 +0000
+Subject: [PATCH 165/168] smsx95xx: Add option to disable the crimes against
+ truesize fix
+
+It may improve iperf numbers on Pi 1, but may generate dmesg warnings and possibly cause network issues
+See issue 1248.
+---
+ drivers/net/usb/smsc95xx.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+ mode change 100755 => 100644 drivers/net/usb/smsc95xx.c
+
+--- a/drivers/net/usb/smsc95xx.c
++++ b/drivers/net/usb/smsc95xx.c
+@@ -75,6 +75,10 @@ static bool turbo_mode = false;
+ module_param(turbo_mode, bool, 0644);
+ MODULE_PARM_DESC(turbo_mode, "Enable multiple frames per Rx transaction");
+ 
++static bool truesize_mode = false;
++module_param(truesize_mode, bool, 0644);
++MODULE_PARM_DESC(truesize_mode, "Report larger truesize value");
++
+ static char *macaddr = ":";
+ module_param(macaddr, charp, 0);
+ MODULE_PARM_DESC(macaddr, "MAC address");
+@@ -1841,6 +1845,8 @@ static int smsc95xx_rx_fixup(struct usbn
+ 				if (dev->net->features & NETIF_F_RXCSUM)
+ 					smsc95xx_rx_csum_offload(skb);
+ 				skb_trim(skb, skb->len - 4); /* remove fcs */
++				if (truesize_mode)
++					skb->truesize = size + sizeof(struct sk_buff);
+ 
+ 				return 1;
+ 			}
+@@ -1858,6 +1864,8 @@ static int smsc95xx_rx_fixup(struct usbn
+ 			if (dev->net->features & NETIF_F_RXCSUM)
+ 				smsc95xx_rx_csum_offload(ax_skb);
+ 			skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */
++			if (truesize_mode)
++				ax_skb->truesize = size + sizeof(struct sk_buff);
+ 
+ 			usbnet_skb_return(dev, ax_skb);
+ 		}
diff --git a/target/linux/brcm2708/patches-4.4/0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch b/target/linux/brcm2708/patches-4.4/0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch
new file mode 100644
index 0000000..50709a9
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch
@@ -0,0 +1,244 @@
+From ed825f99a1cce664b41aa08968234a7ba71f2e13 Mon Sep 17 00:00:00 2001
+From: popcornmix <popcornmix at gmail.com>
+Date: Tue, 23 Feb 2016 19:56:04 +0000
+Subject: [PATCH 166/168] bcm2835-virtgpio: Virtual GPIO driver
+
+Add a virtual GPIO driver that uses the firmware mailbox interface to
+request that the VPU toggles LEDs.
+---
+ arch/arm/configs/bcm2709_defconfig         |   1 +
+ drivers/gpio/Kconfig                       |   6 +
+ drivers/gpio/Makefile                      |   1 +
+ drivers/gpio/gpio-bcm-virt.c               | 180 +++++++++++++++++++++++++++++
+ include/soc/bcm2835/raspberrypi-firmware.h |   1 +
+ 5 files changed, 189 insertions(+)
+ create mode 100644 drivers/gpio/gpio-bcm-virt.c
+
+--- a/arch/arm/configs/bcm2709_defconfig
++++ b/arch/arm/configs/bcm2709_defconfig
+@@ -607,6 +607,7 @@ CONFIG_PPS=m
+ CONFIG_PPS_CLIENT_LDISC=m
+ CONFIG_PPS_CLIENT_GPIO=m
+ CONFIG_GPIO_SYSFS=y
++CONFIG_GPIO_BCM_VIRT=y
+ CONFIG_GPIO_ARIZONA=m
+ CONFIG_GPIO_STMPE=y
+ CONFIG_W1=m
+--- a/drivers/gpio/Kconfig
++++ b/drivers/gpio/Kconfig
+@@ -132,6 +132,12 @@ config GPIO_BCM_KONA
+ 	help
+ 	  Turn on GPIO support for Broadcom "Kona" chips.
+ 
++config GPIO_BCM_VIRT
++	bool "Broadcom Virt GPIO"
++	depends on OF_GPIO && RASPBERRYPI_FIRMWARE && (ARCH_BCM2835 || ARCH_BCM2708 || ARCH_BCM2709 || COMPILE_TEST)
++	help
++	  Turn on virtual GPIO support for Broadcom BCM283X chips.
++
+ config GPIO_BRCMSTB
+ 	tristate "BRCMSTB GPIO support"
+ 	default y if ARCH_BRCMSTB
+--- a/drivers/gpio/Makefile
++++ b/drivers/gpio/Makefile
+@@ -24,6 +24,7 @@ obj-$(CONFIG_GPIO_AMDPT)	+= gpio-amdpt.o
+ obj-$(CONFIG_GPIO_ARIZONA)	+= gpio-arizona.o
+ obj-$(CONFIG_ATH79)		+= gpio-ath79.o
+ obj-$(CONFIG_GPIO_BCM_KONA)	+= gpio-bcm-kona.o
++obj-$(CONFIG_GPIO_BCM_VIRT)	+= gpio-bcm-virt.o
+ obj-$(CONFIG_GPIO_BRCMSTB)	+= gpio-brcmstb.o
+ obj-$(CONFIG_GPIO_BT8XX)	+= gpio-bt8xx.o
+ obj-$(CONFIG_GPIO_CLPS711X)	+= gpio-clps711x.o
+--- /dev/null
++++ b/drivers/gpio/gpio-bcm-virt.c
+@@ -0,0 +1,180 @@
++/*
++ *  brcmvirt GPIO driver
++ *
++ *  Copyright (C) 2012,2013 Dom Cobley <popcornmix at gmail.com>
++ *  Based on gpio-clps711x.c by Alexander Shiyan <shc_work at mail.ru>
++ *
++ * This program 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.
++ */
++
++#include <linux/err.h>
++#include <linux/gpio.h>
++#include <linux/module.h>
++#include <linux/basic_mmio_gpio.h>
++#include <linux/platform_device.h>
++#include <soc/bcm2835/raspberrypi-firmware.h>
++
++#define MODULE_NAME "brcmvirt-gpio"
++#define NUM_GPIO 2
++
++struct brcmvirt_gpio {
++	struct gpio_chip	gc;
++	u32 __iomem		*ts_base;
++	/* two packed 16-bit counts of enabled and disables
++           Allows host to detect a brief enable that was missed */
++	u32			enables_disables[NUM_GPIO];
++};
++
++static int brcmvirt_gpio_dir_in(struct gpio_chip *gc, unsigned off)
++{
++	struct brcmvirt_gpio *gpio;
++	gpio = container_of(gc, struct brcmvirt_gpio, gc);
++	return -EINVAL;
++}
++
++static int brcmvirt_gpio_dir_out(struct gpio_chip *gc, unsigned off, int val)
++{
++	struct brcmvirt_gpio *gpio;
++	gpio = container_of(gc, struct brcmvirt_gpio, gc);
++	return 0;
++}
++
++static int brcmvirt_gpio_get(struct gpio_chip *gc, unsigned off)
++{
++	struct brcmvirt_gpio *gpio;
++	unsigned v;
++	gpio = container_of(gc, struct brcmvirt_gpio, gc);
++	v = readl(gpio->ts_base + off);
++	return (v >> off) & 1;
++}
++
++static void brcmvirt_gpio_set(struct gpio_chip *gc, unsigned off, int val)
++{
++	struct brcmvirt_gpio *gpio;
++	u16 enables, disables;
++	s16 diff;
++	bool lit;
++	gpio = container_of(gc, struct brcmvirt_gpio, gc);
++	enables  = gpio->enables_disables[off] >> 16;
++	disables = gpio->enables_disables[off] >>  0;
++	diff = (s16)(enables - disables);
++	lit = diff > 0;
++	if ((val && lit) || (!val && !lit))
++		return;
++	if (val)
++		enables++;
++	else
++		disables++;
++	diff = (s16)(enables - disables);
++	BUG_ON(diff != 0 && diff != 1);
++	gpio->enables_disables[off] = (enables << 16) | (disables << 0);
++	writel(gpio->enables_disables[off], gpio->ts_base + off);
++}
++
++static int brcmvirt_gpio_probe(struct platform_device *pdev)
++{
++	struct device *dev = &pdev->dev;
++	struct device_node *np = dev->of_node;
++	struct device_node *fw_node;
++	struct rpi_firmware *fw;
++	struct brcmvirt_gpio *ucb;
++	u32 gpiovirtbuf;
++	int err = 0;
++
++	fw_node = of_parse_phandle(np, "firmware", 0);
++	if (!fw_node) {
++		dev_err(dev, "Missing firmware node\n");
++		return -ENOENT;
++	}
++
++	fw = rpi_firmware_get(fw_node);
++	if (!fw)
++		return -EPROBE_DEFER;
++
++	err = rpi_firmware_property(fw, RPI_FIRMWARE_FRAMEBUFFER_GET_GPIOVIRTBUF,
++				    &gpiovirtbuf, sizeof(gpiovirtbuf));
++
++	if (err) {
++		dev_err(dev, "Failed to get gpiovirtbuf\n");
++		goto err;
++	}
++
++	if (!gpiovirtbuf) {
++		dev_err(dev, "No virtgpio buffer\n");
++		err = -ENOENT;
++		goto err;
++	}
++
++	ucb = devm_kzalloc(dev, sizeof *ucb, GFP_KERNEL);
++	if (!ucb) {
++		err = -EINVAL;
++		goto err;
++	}
++
++	// mmap the physical memory
++	gpiovirtbuf &= ~0xc0000000;
++	ucb->ts_base = ioremap(gpiovirtbuf, 4096);
++	if (ucb->ts_base == NULL) {
++		dev_err(dev, "Failed to map physical address\n");
++		err = -ENOENT;
++		goto err;
++	}
++
++	ucb->gc.label = MODULE_NAME;
++	ucb->gc.owner = THIS_MODULE;
++	ucb->gc.dev = dev;
++	ucb->gc.of_node = np;
++	ucb->gc.base = 100;
++	ucb->gc.ngpio = NUM_GPIO;
++
++	ucb->gc.direction_input = brcmvirt_gpio_dir_in;
++	ucb->gc.direction_output = brcmvirt_gpio_dir_out;
++	ucb->gc.get = brcmvirt_gpio_get;
++	ucb->gc.set = brcmvirt_gpio_set;
++	ucb->gc.can_sleep = true;
++
++	err = gpiochip_add(&ucb->gc);
++	if (err)
++		goto err;
++
++	platform_set_drvdata(pdev, ucb);
++
++err:
++	return err;
++
++}
++
++static int brcmvirt_gpio_remove(struct platform_device *pdev)
++{
++	int err = 0;
++	struct brcmvirt_gpio *ucb = platform_get_drvdata(pdev);
++
++	gpiochip_remove(&ucb->gc);
++	iounmap(ucb->ts_base);
++	return err;
++}
++
++static const struct of_device_id __maybe_unused brcmvirt_gpio_ids[] = {
++	{ .compatible = "brcm,bcm2835-virtgpio" },
++	{ }
++};
++MODULE_DEVICE_TABLE(of, brcmvirt_gpio_ids);
++
++static struct platform_driver brcmvirt_gpio_driver = {
++	.driver	= {
++		.name		= MODULE_NAME,
++		.owner		= THIS_MODULE,
++		.of_match_table	= of_match_ptr(brcmvirt_gpio_ids),
++	},
++	.probe	= brcmvirt_gpio_probe,
++	.remove	= brcmvirt_gpio_remove,
++};
++module_platform_driver(brcmvirt_gpio_driver);
++
++MODULE_LICENSE("GPL");
++MODULE_AUTHOR("Dom Cobley <popcornmix at gmail.com>");
++MODULE_DESCRIPTION("brcmvirt GPIO driver");
++MODULE_ALIAS("platform:brcmvirt-gpio");
+--- a/include/soc/bcm2835/raspberrypi-firmware.h
++++ b/include/soc/bcm2835/raspberrypi-firmware.h
+@@ -93,6 +93,7 @@ enum rpi_firmware_property_tag {
+ 	RPI_FIRMWARE_FRAMEBUFFER_GET_OVERSCAN =               0x0004000a,
+ 	RPI_FIRMWARE_FRAMEBUFFER_GET_PALETTE =                0x0004000b,
+ 	RPI_FIRMWARE_FRAMEBUFFER_GET_TOUCHBUF =               0x0004000f,
++	RPI_FIRMWARE_FRAMEBUFFER_GET_GPIOVIRTBUF =            0x00040010,
+ 	RPI_FIRMWARE_FRAMEBUFFER_RELEASE =                    0x00048001,
+ 	RPI_FIRMWARE_FRAMEBUFFER_TEST_PHYSICAL_WIDTH_HEIGHT = 0x00044003,
+ 	RPI_FIRMWARE_FRAMEBUFFER_TEST_VIRTUAL_WIDTH_HEIGHT =  0x00044004,
diff --git a/target/linux/brcm2708/patches-4.4/0167-BCM270X_DT-Add-Pi3-support.patch b/target/linux/brcm2708/patches-4.4/0167-BCM270X_DT-Add-Pi3-support.patch
new file mode 100644
index 0000000..0a7f0ce
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0167-BCM270X_DT-Add-Pi3-support.patch
@@ -0,0 +1,305 @@
+From f0afbcca2b13dcd07575eb77e09b61879a8aadf9 Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil at raspberrypi.org>
+Date: Thu, 21 Jan 2016 17:57:49 +0000
+Subject: [PATCH 167/168] BCM270X_DT: Add Pi3 support
+
+---
+ arch/arm/boot/dts/Makefile            |   1 +
+ arch/arm/boot/dts/bcm2710-rpi-3-b.dts | 174 ++++++++++++++++++++++++++++++++++
+ arch/arm/boot/dts/bcm2710.dtsi        | 102 ++++++++++++++++++++
+ 3 files changed, 277 insertions(+)
+ create mode 100644 arch/arm/boot/dts/bcm2710-rpi-3-b.dts
+ create mode 100644 arch/arm/boot/dts/bcm2710.dtsi
+
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -5,6 +5,7 @@ dtb-$(CONFIG_ARCH_BCM2708) += bcm2708-rp
+ dtb-$(CONFIG_ARCH_BCM2708) += bcm2708-rpi-cm.dtb
+ dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-cm.dtb
+ dtb-$(CONFIG_ARCH_BCM2709) += bcm2709-rpi-2-b.dtb
++dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-3-b.dtb
+ 
+ # Raspberry Pi
+ ifeq ($(CONFIG_ARCH_BCM2708),y)
+--- /dev/null
++++ b/arch/arm/boot/dts/bcm2710-rpi-3-b.dts
+@@ -0,0 +1,174 @@
++/dts-v1/;
++
++#include "bcm2710.dtsi"
++
++/ {
++	compatible = "brcm,bcm2710","brcm,bcm2709";
++	model = "Raspberry Pi 3 Model B";
++};
++
++&gpio {
++	sdhost_pins: sdhost_pins {
++		brcm,pins = <48 49 50 51 52 53>;
++		brcm,function = <4>; /* alt0 */
++	};
++
++	spi0_pins: spi0_pins {
++		brcm,pins = <9 10 11>;
++		brcm,function = <4>; /* alt0 */
++	};
++
++	spi0_cs_pins: spi0_cs_pins {
++		brcm,pins = <8 7>;
++		brcm,function = <1>; /* output */
++	};
++
++	i2c0_pins: i2c0 {
++		brcm,pins = <0 1>;
++		brcm,function = <4>;
++	};
++
++	i2c1_pins: i2c1 {
++		brcm,pins = <2 3>;
++		brcm,function = <4>;
++	};
++
++	i2s_pins: i2s {
++		brcm,pins = <18 19 20 21>;
++		brcm,function = <4>; /* alt0 */
++	};
++
++	sdio_pins: sdio_pins {
++		brcm,pins =     <34 35 36 37 38 39>;
++		brcm,function = <7>; // alt3 = SD1
++		brcm,pull =     <0 2 2 2 2 2>;
++	};
++
++	bt_pins: bt_pins {
++		brcm,pins =     <28 29 30 31 14 15 43>;
++		brcm,function = <6 6 6 6 2 2 4>;
++			// alt2:PCM alt5:UART1 alt0:GPCLK2
++		brcm,pull =     <0 0 0 0 0 2 0>;
++	};
++
++	uart1_pins: uart1_pins {
++		brcm,pins = <32 33>;
++		brcm,function = <7>; /* alt3=UART0 */
++		brcm,pull = <0>;
++	};
++};
++
++&sdhost {
++	pinctrl-names = "default";
++	pinctrl-0 = <&sdhost_pins>;
++	bus-width = <4>;
++	status = "okay";
++};
++
++&mmc {
++	pinctrl-names = "default";
++	pinctrl-0 = <&sdio_pins>;
++	non-removable;
++	bus-width = <4>;
++	status = "okay";
++};
++
++&fb {
++	status = "okay";
++};
++
++&uart0 {
++	status = "okay";
++};
++
++&uart1 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&uart1_pins &bt_pins>;
++	status = "okay";
++};
++
++&spi0 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&spi0_pins &spi0_cs_pins>;
++	cs-gpios = <&gpio 8 1>, <&gpio 7 1>;
++
++	spidev at 0{
++		compatible = "spidev";
++		reg = <0>;	/* CE0 */
++		#address-cells = <1>;
++		#size-cells = <0>;
++		spi-max-frequency = <500000>;
++	};
++
++	spidev at 1{
++		compatible = "spidev";
++		reg = <1>;	/* CE1 */
++		#address-cells = <1>;
++		#size-cells = <0>;
++		spi-max-frequency = <500000>;
++	};
++};
++
++&i2c0 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&i2c0_pins>;
++	clock-frequency = <100000>;
++};
++
++&i2c1 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&i2c1_pins>;
++	clock-frequency = <100000>;
++};
++
++&i2c2 {
++	clock-frequency = <100000>;
++};
++
++&i2s {
++	#sound-dai-cells = <0>;
++	pinctrl-names = "default";
++	pinctrl-0 = <&i2s_pins>;
++};
++
++&random {
++	status = "okay";
++};
++
++&leds {
++	act_led: act {
++		label = "led0";
++		linux,default-trigger = "mmc0";
++		gpios = <&gpio 47 0>;
++	};
++};
++
++/ {
++	chosen {
++		bootargs = "8250.nr_uarts=1";
++	};
++};
++
++/ {
++	__overrides__ {
++		uart0 = <&uart0>,"status";
++		uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
++		i2s = <&i2s>,"status";
++		spi = <&spi0>,"status";
++		i2c0 = <&i2c0>,"status";
++		i2c1 = <&i2c1>,"status";
++		i2c2_iknowwhatimdoing = <&i2c2>,"status";
++		i2c0_baudrate = <&i2c0>,"clock-frequency:0";
++		i2c1_baudrate = <&i2c1>,"clock-frequency:0";
++		i2c2_baudrate = <&i2c2>,"clock-frequency:0";
++		core_freq = <&clk_core>,"clock-frequency:0";
++
++		act_led_gpio = <&act_led>,"gpios:4";
++		act_led_activelow = <&act_led>,"gpios:8";
++		act_led_trigger = <&act_led>,"linux,default-trigger";
++
++		audio = <&audio>,"status";
++		watchdog = <&watchdog>,"status";
++		random = <&random>,"status";
++	};
++};
+--- /dev/null
++++ b/arch/arm/boot/dts/bcm2710.dtsi
+@@ -0,0 +1,102 @@
++#include "bcm2708_common.dtsi"
++
++/ {
++	compatible = "brcm,bcm2710","brcm,bcm2709";
++	model = "BCM2710";
++
++	chosen {
++		/* No padding required - the boot loader can do that. */
++		bootargs = "";
++	};
++
++	soc {
++		ranges = <0x7e000000 0x3f000000 0x01000000>,
++		         <0x40000000 0x40000000 0x00040000>;
++
++		local_intc: local_intc {
++			compatible = "brcm,bcm2836-l1-intc";
++			reg = <0x40000000 0x100>;
++			interrupt-controller;
++			#interrupt-cells = <1>;
++			interrupt-parent = <&local_intc>;
++		};
++
++		arm-pmu {
++			compatible = "arm,cortex-a7-pmu";
++			interrupt-parent = <&local_intc>;
++			interrupts = <9>;
++		};
++
++		gpiomem {
++			compatible = "brcm,bcm2835-gpiomem";
++			reg = <0x7e200000 0x1000>;
++			status = "okay";
++		};
++
++		timer {
++			compatible = "arm,armv7-timer";
++			clock-frequency = <19200000>;
++			interrupt-parent = <&local_intc>;
++			interrupts = <0>, // PHYS_SECURE_PPI
++				     <1>, // PHYS_NONSECURE_PPI
++				     <3>, // VIRT_PPI
++				     <2>; // HYP_PPI
++			always-on;
++		};
++
++		syscon at 40000000 {
++			compatible = "brcm,bcm2836-arm-local", "syscon";
++			reg = <0x40000000 0x100>;
++		};
++	};
++
++	cpus: cpus {
++		#address-cells = <1>;
++		#size-cells = <0>;
++
++		v7_cpu0: cpu at 0 {
++			device_type = "cpu";
++			compatible = "arm,cortex-a7";
++			reg = <0x000>;
++			clock-frequency = <800000000>;
++		};
++
++		v7_cpu1: cpu at 1 {
++			device_type = "cpu";
++			compatible = "arm,cortex-a7";
++			reg = <0x001>;
++			clock-frequency = <800000000>;
++		};
++
++		v7_cpu2: cpu at 2 {
++			device_type = "cpu";
++			compatible = "arm,cortex-a7";
++			reg = <0x002>;
++			clock-frequency = <800000000>;
++		};
++
++		v7_cpu3: cpu at 3 {
++			device_type = "cpu";
++			compatible = "arm,cortex-a7";
++			reg = <0x003>;
++			clock-frequency = <800000000>;
++		};
++	};
++
++	__overrides__ {
++		arm_freq = <&v7_cpu0>, "clock-frequency:0",
++		       <&v7_cpu1>, "clock-frequency:0",
++		       <&v7_cpu2>, "clock-frequency:0",
++		       <&v7_cpu3>, "clock-frequency:0";
++	};
++};
++
++&watchdog {
++	status = "okay";
++};
++
++&intc {
++        compatible = "brcm,bcm2836-armctrl-ic";
++        interrupt-parent = <&local_intc>;
++        interrupts = <8>;
++};
diff --git a/target/linux/brcm2708/patches-4.4/0168-FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch b/target/linux/brcm2708/patches-4.4/0168-FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch
new file mode 100644
index 0000000..63bdc58
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.4/0168-FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch
@@ -0,0 +1,82 @@
+From 36babd89241c85258acebe06616f1f1a58356f8e Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil at raspberrypi.org>
+Date: Thu, 21 Jan 2016 17:57:49 +0000
+Subject: [PATCH 168/168] FIXUP: BCM270X_DT: Update to latest Pi3 DTS
+
+---
+ arch/arm/boot/dts/bcm2710-rpi-3-b.dts | 34 ++++++++++++++++++++++++++--------
+ 1 file changed, 26 insertions(+), 8 deletions(-)
+
+--- a/arch/arm/boot/dts/bcm2710-rpi-3-b.dts
++++ b/arch/arm/boot/dts/bcm2710-rpi-3-b.dts
+@@ -45,16 +45,21 @@
+ 	};
+ 
+ 	bt_pins: bt_pins {
+-		brcm,pins =     <28 29 30 31 14 15 43>;
+-		brcm,function = <6 6 6 6 2 2 4>;
+-			// alt2:PCM alt5:UART1 alt0:GPCLK2
+-		brcm,pull =     <0 0 0 0 0 2 0>;
++		brcm,pins =     <28 29 30 31 43>;
++		brcm,function = <6 6 6 6 4>;   /* alt2:PCM alt0:GPCLK2 */
++		brcm,pull =     <0 0 0 0 0>;
+ 	};
+ 
+-	uart1_pins: uart1_pins {
++	uart0_pins: uart0_pins {
+ 		brcm,pins = <32 33>;
+ 		brcm,function = <7>; /* alt3=UART0 */
+-		brcm,pull = <0>;
++		brcm,pull = <0 0>;
++	};
++
++	uart1_pins: uart1_pins {
++		brcm,pins = <14 15>;
++		brcm,function = <2>; /* alt5=UART1 */
++		brcm,pull = <0 0>;
+ 	};
+ };
+ 
+@@ -71,6 +76,17 @@
+ 	non-removable;
+ 	bus-width = <4>;
+ 	status = "okay";
++	brcm,overclock-50 = <0>;
++};
++
++&soc {
++	virtgpio: virtgpio {
++		compatible = "brcm,bcm2835-virtgpio";
++		gpio-controller;
++		#gpio-cells = <2>;
++		firmware = <&firmware>;
++		status = "okay";
++	};
+ };
+ 
+ &fb {
+@@ -78,12 +94,14 @@
+ };
+ 
+ &uart0 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&uart0_pins &bt_pins>;
+ 	status = "okay";
+ };
+ 
+ &uart1 {
+ 	pinctrl-names = "default";
+-	pinctrl-0 = <&uart1_pins &bt_pins>;
++	pinctrl-0 = <&uart1_pins>;
+ 	status = "okay";
+ };
+ 
+@@ -139,7 +157,7 @@
+ 	act_led: act {
+ 		label = "led0";
+ 		linux,default-trigger = "mmc0";
+-		gpios = <&gpio 47 0>;
++		gpios = <&virtgpio 0 0>;
+ 	};
+ };
+ 
-- 
1.9.1

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list