diff --git a/packages/graphics/bcm2835-driver/package.mk b/packages/graphics/bcm2835-driver/package.mk index 0726780888..559d679d0f 100644 --- a/packages/graphics/bcm2835-driver/package.mk +++ b/packages/graphics/bcm2835-driver/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="bcm2835-driver" -PKG_VERSION="5e55ff0" -PKG_SHA256="05b2d417e79e0629003d349d280a4b28f79aa6a312a0d53b05ec5b868b1e405b" +PKG_VERSION="aa75533" +PKG_SHA256="669e9e083864aa3961d5d104c55b6be944bae2eb2cac5c708cb5f6b28ea991ca" PKG_ARCH="any" PKG_LICENSE="nonfree" PKG_SITE="http://www.broadcom.com" diff --git a/packages/linux-firmware/iwlwifi-firmware/package.mk b/packages/linux-firmware/iwlwifi-firmware/package.mk index 2ee3a02e39..8cf83ea67d 100644 --- a/packages/linux-firmware/iwlwifi-firmware/package.mk +++ b/packages/linux-firmware/iwlwifi-firmware/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="iwlwifi-firmware" -PKG_VERSION="b594d28" -PKG_SHA256="9516d53f4805b5253a5e0a0cd8bc3b3f547f6d48d84b88fa8cc160c05cea9921" +PKG_VERSION="813c197" +PKG_SHA256="092d20ed5cb3c53a914df34be9e5e0f0c70c8fddfaed02b656b6a406e2f23a05" PKG_ARCH="any" PKG_LICENSE="Free-to-use" PKG_SITE="https://github.com/LibreELEC/iwlwifi-firmware" diff --git a/packages/linux-firmware/kernel-firmware/package.mk b/packages/linux-firmware/kernel-firmware/package.mk index d20e0273fc..d9078b8a86 100644 --- a/packages/linux-firmware/kernel-firmware/package.mk +++ b/packages/linux-firmware/kernel-firmware/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="kernel-firmware" -PKG_VERSION="7f93c9d" -PKG_SHA256="917bb5a48294e83769f5ee17340eabc936e549ce1b0ae5df14cdd00d4c6940f2" +PKG_VERSION="7344ec9" +PKG_SHA256="f9c9077d7170afc3080aba1bc884f27dfb4e8da0e3d176e356e2fa07d4cf9f0d" PKG_ARCH="any" PKG_LICENSE="other" PKG_SITE="https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/" diff --git a/packages/linux/package.mk b/packages/linux/package.mk index 58f7b94f9d..495d510452 100644 --- a/packages/linux/package.mk +++ b/packages/linux/package.mk @@ -54,8 +54,8 @@ case "$LINUX" in PKG_PATCH_DIRS="rockchip-4.4" ;; *) - PKG_VERSION="4.14.20" - PKG_SHA256="4ab7f42aa6af9c1e3b00cba6b1fa305a87407666aaa2fae555f7fbdaafb6d292" + PKG_VERSION="4.14.24" + PKG_SHA256="ba512d1bd7f5910bae0f5d66554810f097f82e5df6fccb8c7cc4a11410839801" PKG_URL="https://www.kernel.org/pub/linux/kernel/v4.x/$PKG_NAME-$PKG_VERSION.tar.xz" PKG_PATCH_DIRS="default" ;; diff --git a/packages/tools/bcm2835-bootloader/package.mk b/packages/tools/bcm2835-bootloader/package.mk index 0a62cd9442..5165335780 100644 --- a/packages/tools/bcm2835-bootloader/package.mk +++ b/packages/tools/bcm2835-bootloader/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="bcm2835-bootloader" -PKG_VERSION="5e55ff0" -PKG_SHA256="2ab04a21a4aaa64a4e2f7d5b02cf20a4633b7a765f79423070a2c47402092f11" +PKG_VERSION="aa75533" +PKG_SHA256="61feed41f35a8ab620aeb37e62e180936795f02ffb44ab89ab2e28d45f447a32" PKG_ARCH="arm" PKG_LICENSE="nonfree" PKG_SITE="http://www.broadcom.com" diff --git a/projects/Generic/linux/linux.x86_64.conf b/projects/Generic/linux/linux.x86_64.conf index b11e0145f8..b964200325 100644 --- a/projects/Generic/linux/linux.x86_64.conf +++ b/projects/Generic/linux/linux.x86_64.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86_64 4.14.17 Kernel Configuration +# Linux/x86_64 4.14.22 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -2971,7 +2971,7 @@ CONFIG_VIDEOBUF2_DVB=m CONFIG_DVB_CORE=m CONFIG_DVB_NET=y CONFIG_TTPCI_EEPROM=m -CONFIG_DVB_MAX_ADAPTERS=8 +CONFIG_DVB_MAX_ADAPTERS=64 # CONFIG_DVB_DYNAMIC_MINORS is not set # CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set @@ -2999,7 +2999,7 @@ CONFIG_VIDEO_PVRUSB2=m CONFIG_VIDEO_PVRUSB2_SYSFS=y CONFIG_VIDEO_PVRUSB2_DVB=y # CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set -# CONFIG_VIDEO_HDPVR is not set +CONFIG_VIDEO_HDPVR=m # CONFIG_VIDEO_USBVISION is not set CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160=m @@ -3025,18 +3025,18 @@ CONFIG_VIDEO_TM6000_DVB=m CONFIG_DVB_USB=m # CONFIG_DVB_USB_DEBUG is not set CONFIG_DVB_USB_DIB3000MC=m -# CONFIG_DVB_USB_A800 is not set +CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_DIBUSB_MB=m CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y CONFIG_DVB_USB_DIBUSB_MC=m CONFIG_DVB_USB_DIB0700=m -# CONFIG_DVB_USB_UMT_010 is not set +CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_CXUSB=m -# CONFIG_DVB_USB_M920X is not set -# CONFIG_DVB_USB_DIGITV is not set +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m CONFIG_DVB_USB_VP7045=m -# CONFIG_DVB_USB_VP702X is not set -# CONFIG_DVB_USB_GP8PSK is not set +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m CONFIG_DVB_USB_NOVA_T_USB2=m CONFIG_DVB_USB_TTUSB2=m CONFIG_DVB_USB_DTT200U=m @@ -3047,25 +3047,25 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -# CONFIG_DVB_USB_FRIIO is not set +CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_AF9015=m CONFIG_DVB_USB_AF9035=m CONFIG_DVB_USB_ANYSEE=m -# CONFIG_DVB_USB_AU6610 is not set +CONFIG_DVB_USB_AU6610=m CONFIG_DVB_USB_AZ6007=m CONFIG_DVB_USB_CE6230=m CONFIG_DVB_USB_EC168=m -# CONFIG_DVB_USB_GL861 is not set +CONFIG_DVB_USB_GL861=m CONFIG_DVB_USB_LME2510=m -# CONFIG_DVB_USB_MXL111SF is not set +CONFIG_DVB_USB_MXL111SF=m CONFIG_DVB_USB_RTL28XXU=m CONFIG_DVB_USB_DVBSKY=m -# CONFIG_DVB_USB_ZD1301 is not set -# CONFIG_DVB_TTUSB_BUDGET is not set -# CONFIG_DVB_TTUSB_DEC is not set +CONFIG_DVB_USB_ZD1301=m +CONFIG_DVB_TTUSB_BUDGET=m +CONFIG_DVB_TTUSB_DEC=m CONFIG_SMS_USB_DRV=m CONFIG_DVB_B2C2_FLEXCOP_USB=m # CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set @@ -3106,7 +3106,8 @@ CONFIG_VIDEO_CX18=m # CONFIG_VIDEO_CX18_ALSA is not set CONFIG_VIDEO_CX23885=m CONFIG_MEDIA_ALTERA_CI=m -# CONFIG_VIDEO_CX25821 is not set +CONFIG_VIDEO_CX25821=m +# CONFIG_VIDEO_CX25821_ALSA is not set CONFIG_VIDEO_CX88=m # CONFIG_VIDEO_CX88_ALSA is not set # CONFIG_VIDEO_CX88_BLACKBIRD is not set @@ -3135,11 +3136,11 @@ CONFIG_DVB_B2C2_FLEXCOP_PCI=m # CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set # CONFIG_DVB_PLUTO2 is not set CONFIG_DVB_DM1105=m -# CONFIG_DVB_PT1 is not set -# CONFIG_DVB_PT3 is not set +CONFIG_DVB_PT1=m +CONFIG_DVB_PT3=m CONFIG_MANTIS_CORE=m CONFIG_DVB_MANTIS=m -# CONFIG_DVB_HOPPER is not set +CONFIG_DVB_HOPPER=m CONFIG_DVB_NGENE=m CONFIG_DVB_DDBRIDGE=m # CONFIG_DVB_DDBRIDGE_MSIENABLE is not set @@ -3268,6 +3269,7 @@ CONFIG_MEDIA_TUNER_TUA9001=m CONFIG_MEDIA_TUNER_SI2157=m CONFIG_MEDIA_TUNER_IT913X=m CONFIG_MEDIA_TUNER_R820T=m +CONFIG_MEDIA_TUNER_MXL301RF=m CONFIG_MEDIA_TUNER_QM1D1C0042=m # @@ -3325,10 +3327,12 @@ CONFIG_DVB_TDA10071=m # DVB-T (terrestrial) frontends # CONFIG_DVB_SP8870=m +CONFIG_DVB_CX22700=m CONFIG_DVB_CX22702=m CONFIG_DVB_DRXD=m CONFIG_DVB_L64781=m CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m CONFIG_DVB_MT352=m CONFIG_DVB_ZL10353=m CONFIG_DVB_DIB3000MB=m @@ -3345,7 +3349,8 @@ CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m CONFIG_DVB_SI2168=m CONFIG_DVB_AS102_FE=m -# CONFIG_DVB_GP8PSK_FE is not set +CONFIG_DVB_ZD1301_DEMOD=m +CONFIG_DVB_GP8PSK_FE=m # # DVB-C (cable) frontends @@ -3364,6 +3369,7 @@ CONFIG_DVB_BCM3510=m CONFIG_DVB_LGDT330X=m CONFIG_DVB_LGDT3305=m CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LG2160=m CONFIG_DVB_S5H1409=m CONFIG_DVB_AU8522=m CONFIG_DVB_AU8522_DTV=m @@ -5021,7 +5027,6 @@ CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y # CONFIG_DEBUG_PER_CPU_MAPS is not set CONFIG_HAVE_DEBUG_STACKOVERFLOW=y # CONFIG_DEBUG_STACKOVERFLOW is not set -CONFIG_HAVE_ARCH_KMEMCHECK=y CONFIG_HAVE_ARCH_KASAN=y # CONFIG_KASAN is not set CONFIG_ARCH_HAS_KCOV=y diff --git a/projects/RPi/devices/RPi/linux/linux.arm.conf b/projects/RPi/devices/RPi/linux/linux.arm.conf index dcbcd981a7..91ffb9f921 100644 --- a/projects/RPi/devices/RPi/linux/linux.arm.conf +++ b/projects/RPi/devices/RPi/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 4.14.17 Kernel Configuration +# Linux/arm 4.14.20 Kernel Configuration # CONFIG_ARM=y CONFIG_ARM_HAS_SG_CHAIN=y @@ -2493,8 +2493,8 @@ CONFIG_VIDEO_PVRUSB2=m CONFIG_VIDEO_PVRUSB2_SYSFS=y CONFIG_VIDEO_PVRUSB2_DVB=y # CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set -# CONFIG_VIDEO_HDPVR is not set -# CONFIG_VIDEO_USBVISION is not set +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_USBVISION=m CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160=m # CONFIG_VIDEO_GO7007 is not set @@ -2519,18 +2519,18 @@ CONFIG_VIDEO_TM6000_DVB=m CONFIG_DVB_USB=m # CONFIG_DVB_USB_DEBUG is not set CONFIG_DVB_USB_DIB3000MC=m -# CONFIG_DVB_USB_A800 is not set +CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_DIBUSB_MB=m CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y CONFIG_DVB_USB_DIBUSB_MC=m CONFIG_DVB_USB_DIB0700=m -# CONFIG_DVB_USB_UMT_010 is not set +CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_CXUSB=m -# CONFIG_DVB_USB_M920X is not set -# CONFIG_DVB_USB_DIGITV is not set +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m CONFIG_DVB_USB_VP7045=m -# CONFIG_DVB_USB_VP702X is not set -# CONFIG_DVB_USB_GP8PSK is not set +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m CONFIG_DVB_USB_NOVA_T_USB2=m CONFIG_DVB_USB_TTUSB2=m CONFIG_DVB_USB_DTT200U=m @@ -2541,23 +2541,23 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -# CONFIG_DVB_USB_FRIIO is not set +CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_AF9015=m CONFIG_DVB_USB_AF9035=m CONFIG_DVB_USB_ANYSEE=m -# CONFIG_DVB_USB_AU6610 is not set +CONFIG_DVB_USB_AU6610=m CONFIG_DVB_USB_AZ6007=m CONFIG_DVB_USB_CE6230=m CONFIG_DVB_USB_EC168=m -# CONFIG_DVB_USB_GL861 is not set +CONFIG_DVB_USB_GL861=m CONFIG_DVB_USB_LME2510=m -# CONFIG_DVB_USB_MXL111SF is not set +CONFIG_DVB_USB_MXL111SF=m CONFIG_DVB_USB_RTL28XXU=m CONFIG_DVB_USB_DVBSKY=m -# CONFIG_DVB_USB_ZD1301 is not set +CONFIG_DVB_USB_ZD1301=m CONFIG_SMS_USB_DRV=m CONFIG_DVB_B2C2_FLEXCOP_USB=m # CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set @@ -2737,6 +2737,8 @@ CONFIG_DVB_TDA10071=m # CONFIG_DVB_CX22702=m CONFIG_DVB_DRXD=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m CONFIG_DVB_MT352=m CONFIG_DVB_ZL10353=m CONFIG_DVB_DIB3000MB=m @@ -2751,7 +2753,8 @@ CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m CONFIG_DVB_SI2168=m CONFIG_DVB_AS102_FE=m -# CONFIG_DVB_GP8PSK_FE is not set +CONFIG_DVB_ZD1301_DEMOD=m +CONFIG_DVB_GP8PSK_FE=m # # DVB-C (cable) frontends @@ -2767,6 +2770,7 @@ CONFIG_DVB_BCM3510=m CONFIG_DVB_LGDT330X=m CONFIG_DVB_LGDT3305=m CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LG2160=m CONFIG_DVB_S5H1409=m CONFIG_DVB_AU8522=m CONFIG_DVB_AU8522_DTV=m @@ -3045,7 +3049,6 @@ CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC=m CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI=m CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI=m -CONFIG_SND_BCM2708_SOC_RASPIDAC3=m CONFIG_SND_BCM2708_SOC_ADAU1977_ADC=m CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD=m CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD=m diff --git a/projects/RPi/devices/RPi2/linux/linux.arm.conf b/projects/RPi/devices/RPi2/linux/linux.arm.conf index c3d9ea0717..a2631686e3 100644 --- a/projects/RPi/devices/RPi2/linux/linux.arm.conf +++ b/projects/RPi/devices/RPi2/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 4.14.17 Kernel Configuration +# Linux/arm 4.14.20 Kernel Configuration # CONFIG_ARM=y CONFIG_ARM_HAS_SG_CHAIN=y @@ -2591,8 +2591,8 @@ CONFIG_VIDEO_PVRUSB2=m CONFIG_VIDEO_PVRUSB2_SYSFS=y CONFIG_VIDEO_PVRUSB2_DVB=y # CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set -# CONFIG_VIDEO_HDPVR is not set -# CONFIG_VIDEO_USBVISION is not set +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_USBVISION=m CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160=m # CONFIG_VIDEO_GO7007 is not set @@ -2617,18 +2617,18 @@ CONFIG_VIDEO_TM6000_DVB=m CONFIG_DVB_USB=m # CONFIG_DVB_USB_DEBUG is not set CONFIG_DVB_USB_DIB3000MC=m -# CONFIG_DVB_USB_A800 is not set +CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_DIBUSB_MB=m CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y CONFIG_DVB_USB_DIBUSB_MC=m CONFIG_DVB_USB_DIB0700=m -# CONFIG_DVB_USB_UMT_010 is not set +CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_CXUSB=m -# CONFIG_DVB_USB_M920X is not set -# CONFIG_DVB_USB_DIGITV is not set +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m CONFIG_DVB_USB_VP7045=m -# CONFIG_DVB_USB_VP702X is not set -# CONFIG_DVB_USB_GP8PSK is not set +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m CONFIG_DVB_USB_NOVA_T_USB2=m CONFIG_DVB_USB_TTUSB2=m CONFIG_DVB_USB_DTT200U=m @@ -2639,23 +2639,23 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -# CONFIG_DVB_USB_FRIIO is not set +CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_AF9015=m CONFIG_DVB_USB_AF9035=m CONFIG_DVB_USB_ANYSEE=m -# CONFIG_DVB_USB_AU6610 is not set +CONFIG_DVB_USB_AU6610=m CONFIG_DVB_USB_AZ6007=m CONFIG_DVB_USB_CE6230=m CONFIG_DVB_USB_EC168=m -# CONFIG_DVB_USB_GL861 is not set +CONFIG_DVB_USB_GL861=m CONFIG_DVB_USB_LME2510=m -# CONFIG_DVB_USB_MXL111SF is not set +CONFIG_DVB_USB_MXL111SF=m CONFIG_DVB_USB_RTL28XXU=m CONFIG_DVB_USB_DVBSKY=m -# CONFIG_DVB_USB_ZD1301 is not set +CONFIG_DVB_USB_ZD1301=m CONFIG_SMS_USB_DRV=m CONFIG_DVB_B2C2_FLEXCOP_USB=m # CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set @@ -2835,6 +2835,8 @@ CONFIG_DVB_TDA10071=m # CONFIG_DVB_CX22702=m CONFIG_DVB_DRXD=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m CONFIG_DVB_MT352=m CONFIG_DVB_ZL10353=m CONFIG_DVB_DIB3000MB=m @@ -2849,7 +2851,8 @@ CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m CONFIG_DVB_SI2168=m CONFIG_DVB_AS102_FE=m -# CONFIG_DVB_GP8PSK_FE is not set +CONFIG_DVB_ZD1301_DEMOD=m +CONFIG_DVB_GP8PSK_FE=m # # DVB-C (cable) frontends @@ -2865,6 +2868,7 @@ CONFIG_DVB_BCM3510=m CONFIG_DVB_LGDT330X=m CONFIG_DVB_LGDT3305=m CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LG2160=m CONFIG_DVB_S5H1409=m CONFIG_DVB_AU8522=m CONFIG_DVB_AU8522_DTV=m @@ -3143,7 +3147,6 @@ CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC=m CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI=m CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI=m -CONFIG_SND_BCM2708_SOC_RASPIDAC3=m CONFIG_SND_BCM2708_SOC_ADAU1977_ADC=m CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD=m CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD=m diff --git a/projects/RPi/patches/linux/linux-01-RPi_support.patch b/projects/RPi/patches/linux/linux-01-RPi_support.patch index 6d2dc5a382..3d2cc58812 100644 --- a/projects/RPi/patches/linux/linux-01-RPi_support.patch +++ b/projects/RPi/patches/linux/linux-01-RPi_support.patch @@ -1,7 +1,7 @@ -From 6e32c8643ef10aecd3121993886cd85e417e4b88 Mon Sep 17 00:00:00 2001 +From 7c6457cbd9938393e70641bc706569468bfc3447 Mon Sep 17 00:00:00 2001 From: Dan Pasanen Date: Thu, 21 Sep 2017 09:55:42 -0500 -Subject: [PATCH 001/235] arm: partially revert +Subject: [PATCH 001/257] arm: partially revert 702b94bff3c50542a6e4ab9a4f4cef093262fe65 * Re-expose some dmi APIs for use in VCSM @@ -106,10 +106,10 @@ index 054b491ff7649ca067ff821770aec80a4da42102..70e8b7d3443467ae9595924f1a9d043b EXPORT_SYMBOL(cpu_cache); #endif -From 12de5a59d71ac1c9756fd891b6fcaf64f0760119 Mon Sep 17 00:00:00 2001 +From fef5109a58a8e9c7bf9ae7a870722c3df365804f Mon Sep 17 00:00:00 2001 From: Steve Glendinning Date: Thu, 19 Feb 2015 18:47:12 +0000 -Subject: [PATCH 002/235] smsx95xx: fix crimes against truesize +Subject: [PATCH 002/257] 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. @@ -156,10 +156,10 @@ index 309b88acd3d0b6ca1528dde7b27a23926f9be952..25e37195ceb00cfc0ced7638e8b571a1 usbnet_skb_return(dev, ax_skb); } -From debfa3da9c439b9da7ed9a86628ed0c7cee60608 Mon Sep 17 00:00:00 2001 +From f197eb5d776c316c6c69aa1b268c4ddc13b29b46 Mon Sep 17 00:00:00 2001 From: Sam Nazarko Date: Fri, 1 Apr 2016 17:27:21 +0100 -Subject: [PATCH 003/235] smsc95xx: Experimental: Enable turbo_mode and +Subject: [PATCH 003/257] smsc95xx: Experimental: Enable turbo_mode and packetsize=2560 by default See: http://forum.kodi.tv/showthread.php?tid=285288 @@ -202,10 +202,10 @@ index 25e37195ceb00cfc0ced7638e8b571a1b0b8e6f1..09c7d4a07299e70b1cdc9df2c2c4cb39 netif_dbg(dev, ifup, dev->net, "rx_urb_size=%ld\n", -From 4e5d719bc4b090a0ac53eeb39d0c68a99f3fd3b6 Mon Sep 17 00:00:00 2001 +From ec2c96b3584089fec3229ff2bf15626ec8829726 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 17:26:38 +0000 -Subject: [PATCH 004/235] Allow mac address to be set in smsc95xx +Subject: [PATCH 004/257] Allow mac address to be set in smsc95xx Signed-off-by: popcornmix --- @@ -301,10 +301,10 @@ index 09c7d4a07299e70b1cdc9df2c2c4cb39d2207c37..4d9704d0b184df9bd7ddbe6769e40a75 eth_hw_addr_random(dev->net); netif_dbg(dev, ifup, dev->net, "MAC address set to eth_random_addr\n"); -From 4747d3fb8f8ad7dbabaaf4ee32dd8cfa5566569a Mon Sep 17 00:00:00 2001 +From a2736d29f91742f108fdc11924c08b61ea179b15 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 13 Mar 2015 12:43:36 +0000 -Subject: [PATCH 005/235] Protect __release_resource against resources without +Subject: [PATCH 005/257] Protect __release_resource against resources without parents Without this patch, removing a device tree overlay can crash here. @@ -332,10 +332,10 @@ index 9b5f04404152c296af3a96132f27cfc80ffa9af9..f8a9af6e6b915812be2ba2c1c2b40106 for (;;) { tmp = *p; -From 440fdfe475f5fc182d023098ad6be430cebbc340 Mon Sep 17 00:00:00 2001 +From 1331e4c03f9603306fd74c16a102d83d65cb497e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 4 Dec 2015 17:41:50 +0000 -Subject: [PATCH 006/235] irq-bcm2836: Prevent spurious interrupts, and trap +Subject: [PATCH 006/257] irq-bcm2836: Prevent spurious interrupts, and trap them early The old arch-specific IRQ macros included a dsb to ensure the @@ -362,10 +362,10 @@ index dc8c1e3eafe794a3af83dd987a6d6362d14dd5ee..e8204d9af58f1b893505c06902a83390 #endif } else if (stat) { -From 64df9578986e610617ee60027a8241f2211f92c5 Mon Sep 17 00:00:00 2001 +From 8050863be345a131588f0bc5c35c43e33e13999a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 9 Feb 2017 14:33:30 +0000 -Subject: [PATCH 007/235] irq-bcm2836: Avoid "Invalid trigger warning" +Subject: [PATCH 007/257] irq-bcm2836: Avoid "Invalid trigger warning" Initialise the level for each IRQ to avoid a warning from the arm arch timer code. @@ -389,10 +389,10 @@ index e8204d9af58f1b893505c06902a83390c2ea8509..6e3fab9587b782e026c01fa6b6e40338 static void -From 6d55006f381b68938b9962a44a014055d3675db8 Mon Sep 17 00:00:00 2001 +From 37232b9618af3861bad13534c846d31daa2ac8df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Fri, 12 Jun 2015 19:01:05 +0200 -Subject: [PATCH 008/235] irqchip: bcm2835: Add FIQ support +Subject: [PATCH 008/257] irqchip: bcm2835: Add FIQ support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -521,10 +521,10 @@ index d2da8a1e6b1b71381e382d034e7a94e865a6c3da..c4903360eabc2bef04f8e745782cea26 } -From d795034f9e5436be327ce8c11a751ebb94265c38 Mon Sep 17 00:00:00 2001 +From 830ce375af8c2436832f1a4f61db2113e7470491 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Fri, 23 Oct 2015 16:26:55 +0200 -Subject: [PATCH 009/235] irqchip: irq-bcm2835: Add 2836 FIQ support +Subject: [PATCH 009/257] irqchip: irq-bcm2835: Add 2836 FIQ support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -623,10 +623,10 @@ index c4903360eabc2bef04f8e745782cea268fb22897..13356d3b7bcd508f058c6a9e3c4b0b38 for (b = 0; b < NR_BANKS; b++) { for (i = 0; i < bank_irqs[b]; i++) { -From 8436f9551050fcf74e5c3c55c250e92000b2fedb Mon Sep 17 00:00:00 2001 +From 2fb1d42f8851b8c41826278c2f2a7307bfc435fc Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 8 May 2017 16:43:40 +0100 -Subject: [PATCH 010/235] irq_bcm2836: Send event when onlining sleeping cores +Subject: [PATCH 010/257] irq_bcm2836: Send event when onlining sleeping cores In order to reduce power consumption and bus traffic, it is sensible for secondary cores to enter a low-power idle state when waiting to @@ -662,10 +662,10 @@ index 6e3fab9587b782e026c01fa6b6e40338ef0c8d0a..86b357ae027bf8ba1ac32cd150a8cf21 } -From ce41fb55015584f91bab8de43d3a0af15378bbba Mon Sep 17 00:00:00 2001 +From c251b9bfe79f4b82a7f0aef52f8368460c9c8aef Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Jul 2015 10:26:09 +0100 -Subject: [PATCH 011/235] spidev: Add "spidev" compatible string to silence +Subject: [PATCH 011/257] spidev: Add "spidev" compatible string to silence warning See: https://github.com/raspberrypi/linux/issues/1054 @@ -686,10 +686,10 @@ index cda10719d1d1b21b32866d2b79363faa461ab8e1..4f3779d3aa0960640506725bde918075 }; MODULE_DEVICE_TABLE(of, spidev_dt_ids); -From 13c06dad86ef6f0eb99a7e06ca785e0bb444b6c8 Mon Sep 17 00:00:00 2001 +From 775f034ceca4cd9d49d5da84a61eff2b7c51ff67 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Jun 2015 14:10:44 +0100 -Subject: [PATCH 012/235] spi-bcm2835: Support pin groups other than 7-11 +Subject: [PATCH 012/257] 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 @@ -770,10 +770,10 @@ index f35cc10772f6670397ea923ad30158270dd68578..5dfe20ffc2866fa6789825016c585175 /* and set up the "mode" and level */ dev_info(&spi->dev, "setting up native-CS%i as GPIO %i\n", -From a9c1a1116d64101ecfe0064697549efa044b8522 Mon Sep 17 00:00:00 2001 +From 99558e678b0e468aba0e394bb7ff2a321b884099 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 1 Jul 2016 22:09:24 +0100 -Subject: [PATCH 013/235] spi-bcm2835: Disable forced software CS +Subject: [PATCH 013/257] spi-bcm2835: Disable forced software CS Select software CS in bcm2708_common.dtsi, and disable the automatic conversion in the driver to allow hardware CS to be re-enabled with an @@ -807,10 +807,10 @@ index 5dfe20ffc2866fa6789825016c585175a29705b6..8493474d286f7a1ac6454a22c61c8c2c return 0; } -From c2561dce2da9143714b58ddf11a2acf141a9924d Mon Sep 17 00:00:00 2001 +From d6904b2872fbcfe7f6e54d814acf16f97c62d903 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 8 Nov 2016 21:35:38 +0000 -Subject: [PATCH 014/235] spi-bcm2835: Remove unused code +Subject: [PATCH 014/257] spi-bcm2835: Remove unused code --- drivers/spi/spi-bcm2835.c | 61 ----------------------------------------------- @@ -898,10 +898,10 @@ index 8493474d286f7a1ac6454a22c61c8c2cef9121bf..33d75ad38a7f77d085321ace9101900a } -From 236210546794e73d033fca2f32db72763c007b32 Mon Sep 17 00:00:00 2001 +From f9daa5b5f3e0513309d1de81801b18c9611a41fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Wed, 3 Jun 2015 12:26:13 +0200 -Subject: [PATCH 015/235] ARM: bcm2835: Set Serial number and Revision +Subject: [PATCH 015/257] ARM: bcm2835: Set Serial number and Revision MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -954,10 +954,10 @@ index 0c1edfc98696da0e0bb7f4a18cdfbcdd27a9795d..8f152266ba9b470df2eaaed9ebcf158e static const char * const bcm2835_compat[] = { -From ac8430e841062b723ae8add7c7b86e0cc3d2c9d9 Mon Sep 17 00:00:00 2001 +From 65f08c7fc3d0eed1d8123ca26c8014416e3b36c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Sat, 3 Oct 2015 22:22:55 +0200 -Subject: [PATCH 016/235] dmaengine: bcm2835: Load driver early and support +Subject: [PATCH 016/257] dmaengine: bcm2835: Load driver early and support legacy API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -1060,10 +1060,10 @@ index 6204cc32d09c5096df8aec304c3c37b3bcb6be44..599c218dc8a73172dd4bd4a058fc8f95 MODULE_ALIAS("platform:bcm2835-dma"); MODULE_DESCRIPTION("BCM2835 DMA engine driver"); -From f4580544138be26a59b056ff6860731e10ea7260 Mon Sep 17 00:00:00 2001 +From dd431ef3105509beb0b09115e15ef4bdf0efe246 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 25 Jan 2016 17:25:12 +0000 -Subject: [PATCH 017/235] firmware: Updated mailbox header +Subject: [PATCH 017/257] firmware: Updated mailbox header --- include/soc/bcm2835/raspberrypi-firmware.h | 21 +++++++++++++++++++++ @@ -1149,10 +1149,10 @@ index cb979ad90401e299344dd5fae38d09c489d8bd58..cbd1674570433fc591df89f68c892b33 #endif /* __SOC_RASPBERRY_FIRMWARE_H__ */ -From e1c3b4382a2dbe50c9675899de5b957bb28d60c7 Mon Sep 17 00:00:00 2001 +From e577178152c9d814b209bb9102fd20ba14a38c7d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 15 Jun 2016 16:48:41 +0100 -Subject: [PATCH 018/235] rtc: Add SPI alias for pcf2123 driver +Subject: [PATCH 018/257] rtc: Add SPI alias for pcf2123 driver Without this alias, Device Tree won't cause the driver to be loaded. @@ -1172,10 +1172,10 @@ index 8895f77726e8da5444afcd602dceff8f25a9b3fd..1833b8853ceb0e6147cceb93a00e558c MODULE_LICENSE("GPL"); +MODULE_ALIAS("spi:rtc-pcf2123"); -From ce04e3c3adce94a9dd06f8b99b0a8e0f2b7bd471 Mon Sep 17 00:00:00 2001 +From f6c90e80c5528299edcea174b782390720f84e36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Fri, 7 Oct 2016 16:50:59 +0200 -Subject: [PATCH 019/235] watchdog: bcm2835: Support setting reboot partition +Subject: [PATCH 019/257] watchdog: bcm2835: Support setting reboot partition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -1277,10 +1277,10 @@ index b339e0e67b4c1275fd4992fea4f1e24c0575b783..26b7177573fac2af1cd4ab5488d2686f static int bcm2835_wdt_probe(struct platform_device *pdev) -From 602d92f36eba275af1f681641cef3d0481239305 Mon Sep 17 00:00:00 2001 +From 015b48b041c7ef652a4e0069e55ca28e369597db Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 5 Apr 2016 19:40:12 +0100 -Subject: [PATCH 020/235] reboot: Use power off rather than busy spinning when +Subject: [PATCH 020/257] reboot: Use power off rather than busy spinning when halt is requested --- @@ -1303,10 +1303,10 @@ index 3b2aa9a9fe268d45335f781c4aa22cf573753a1b..0180d89a34af45c56243fe0f17fbe209 /* -From 3012b7139d9cbe5498b317c8aca090f7fa0b7102 Mon Sep 17 00:00:00 2001 +From 9031eaa84249f4a511ffdcc0c463214a1674cb4c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 9 Nov 2016 13:02:52 +0000 -Subject: [PATCH 021/235] bcm: Make RASPBERRYPI_POWER depend on PM +Subject: [PATCH 021/257] bcm: Make RASPBERRYPI_POWER depend on PM --- drivers/soc/bcm/Kconfig | 1 + @@ -1325,10 +1325,10 @@ index 49f1e2a75d614bc21db152327c7b425ae2504f8d..dccd2374ed00631abd441e3e9d78ee74 help This enables support for the RPi power domains which can be enabled -From fcbd25957c39d3ecc8fba52e723072ef7e04491c Mon Sep 17 00:00:00 2001 +From 692583c4c5a06c6f9d0e6f2dafbdc4c0536a39e8 Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Fri, 2 Sep 2016 16:45:27 +0100 -Subject: [PATCH 022/235] Register the clocks early during the boot process, so +Subject: [PATCH 022/257] Register the clocks early during the boot process, so that special/critical clocks can get enabled early on in the boot process avoiding the risk of disabling a clock, pll_divider or pll when a claiming driver fails to install propperly - maybe it needs to defer. @@ -1373,10 +1373,10 @@ index 58ce6af8452db9ca8b4d3c380a06e448919f6a8d..11d89d106026f15719ea25047d6f357b MODULE_AUTHOR("Eric Anholt "); MODULE_DESCRIPTION("BCM2835 clock driver"); -From e35f484308e62d229dac4bead625973d7a0d3a89 Mon Sep 17 00:00:00 2001 +From 632b95bc210910065f4b28214ebc0a3f18709500 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 6 Dec 2016 17:05:39 +0000 -Subject: [PATCH 023/235] bcm2835-rng: Avoid initialising if already enabled +Subject: [PATCH 023/257] bcm2835-rng: Avoid initialising if already enabled Avoids the 0x40000 cycles of warmup again if firmware has already used it --- @@ -1402,10 +1402,10 @@ index 574211a495491d9d6021dcaefe4274a63ed02055..e66c0fca8c6090e32f72796c0877a1cf err = hwrng_register(&bcm2835_rng_ops); if (err) { -From 49b63c8b847284ad2862ced721b57ce752dd2144 Mon Sep 17 00:00:00 2001 +From 56fa61a4fac23ce2f41a98b481b6155663597f2a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Aug 2016 16:28:44 +0100 -Subject: [PATCH 024/235] kbuild: Ignore dtco targets when filtering symbols +Subject: [PATCH 024/257] kbuild: Ignore dtco targets when filtering symbols --- scripts/Kbuild.include | 2 +- @@ -1425,10 +1425,10 @@ index 9ffd3dda3889c56a7a72229bed21ff5c49d62856..00da6c9bacbf33334233e22ca5209ade esac | tr ";" "\n" | sed -rn 's/^.*=== __KSYM_(.*) ===.*$$/KSYM_\1/p' -From 4af271a845bcdf8ec11a76248a53f34474f396cd Mon Sep 17 00:00:00 2001 +From 61d12eadf40fccac119bc9c6fd50051424f3107d Mon Sep 17 00:00:00 2001 From: Robert Tiemann Date: Mon, 20 Jul 2015 11:01:25 +0200 -Subject: [PATCH 025/235] BCM2835_DT: Fix I2S register map +Subject: [PATCH 025/257] BCM2835_DT: Fix I2S register map --- Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt | 4 ++-- @@ -1466,10 +1466,10 @@ index 65783de0aedf3da79adc36fd077b7a89954ddb6b..a89fe4220fdc3f26f75ee66daf187554 dmas = <&dma 2>, <&dma 3>; -From 02aa0b25af3a0fc57f3abaede382e578f4e14cb4 Mon Sep 17 00:00:00 2001 +From c40d322100a552d8dfd00f941765b3d96f519df9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Feb 2017 17:20:08 +0000 -Subject: [PATCH 026/235] clk-bcm2835: Mark used PLLs and dividers CRITICAL +Subject: [PATCH 026/257] clk-bcm2835: Mark used PLLs and dividers CRITICAL The VPU configures and relies on several PLLs and dividers. Mark all enabled dividers and their PLLs as CRITICAL to prevent the kernel from @@ -1497,10 +1497,10 @@ index 11d89d106026f15719ea25047d6f357b4bfcb2c5..fe8f5d65f2749cb3ddc878df61664826 divider->data = data; -From 821b02611a16055cd7189dfafbd21878204a2ebe Mon Sep 17 00:00:00 2001 +From 64f356a52c3a76b6e9e1ad29f8333d8496e0c972 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Feb 2017 17:20:08 +0000 -Subject: [PATCH 027/235] clk-bcm2835: Add claim-clocks property +Subject: [PATCH 027/257] clk-bcm2835: Add claim-clocks property The claim-clocks property can be used to prevent PLLs and dividers from being marked as critical. It contains a vector of clock IDs, @@ -1602,10 +1602,10 @@ index fe8f5d65f2749cb3ddc878df616648267441e0ee..92b5e0f5145b32d3bfc3592fe381e8be sizeof(cprman_parent_names)); of_clk_parent_fill(dev->of_node, cprman->real_parent_names, -From 7f8a2a7b9377a026b11e0277e8f6b21c7fd70a79 Mon Sep 17 00:00:00 2001 +From 472aef492b93b5ffd733fd53f0137fb1628f3d3f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 6 Mar 2017 09:06:18 +0000 -Subject: [PATCH 028/235] clk-bcm2835: Read max core clock from firmware +Subject: [PATCH 028/257] clk-bcm2835: Read max core clock from firmware The VPU is responsible for managing the core clock, usually under direction from the bcm2835-cpufreq driver but not via the clk-bcm2835 @@ -1720,10 +1720,10 @@ index 92b5e0f5145b32d3bfc3592fe381e8be3cd90c72..336f8c9c44325d0a94e591a8557f7af2 for (i = 0; !of_property_read_u32_index(pdev->dev.of_node, "claim-clocks", -From 0c7be6382d85ff84ba25bc390a1003afba10234a Mon Sep 17 00:00:00 2001 +From d2faa899455934298a0bfdac23542c1f6d95b3ee Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 9 May 2016 17:28:18 -0700 -Subject: [PATCH 029/235] clk: bcm2835: Mark GPIO clocks enabled at boot as +Subject: [PATCH 029/257] clk: bcm2835: Mark GPIO clocks enabled at boot as critical. These divide off of PLLD_PER and are used for the ethernet and wifi @@ -1761,10 +1761,10 @@ index 336f8c9c44325d0a94e591a8557f7af246adc857..caa05e5ad0b7b5cd683e04fb3591a3df * Pass the CLK_SET_RATE_PARENT flag if we are allowed to propagate * rate changes on at least of the parents. -From d3ea0479b3e53fd8140823975519ec521a4a9306 Mon Sep 17 00:00:00 2001 +From 75aafa2263731deeffb77400098bd39082c1bbb1 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 9 Feb 2017 14:36:44 +0000 -Subject: [PATCH 030/235] sound: Demote deferral errors to INFO level +Subject: [PATCH 030/257] sound: Demote deferral errors to INFO level At present there is no mechanism to specify driver load order, which can lead to deferrals and repeated retries until successful. @@ -1799,10 +1799,10 @@ index fee4b0ef5566cf9e8de0bf5c568706da9cab2ea2..c728a4148903e983d61b6ae65765ba11 goto _err_defer; } -From 52e905964e7057cbd38a1eeb81fdbe5bdee036a9 Mon Sep 17 00:00:00 2001 +From ee190502f39483e42e7dd2cde4f95db200528f9f Mon Sep 17 00:00:00 2001 From: Claggy3 Date: Sat, 11 Feb 2017 14:00:30 +0000 -Subject: [PATCH 031/235] Update vfpmodule.c +Subject: [PATCH 031/257] Update vfpmodule.c Christopher Alexander Tobias Schulze - May 2, 2015, 11:57 a.m. This patch fixes a problem with VFP state save and restore related @@ -1939,10 +1939,10 @@ index a71a48e71fffa8626fe90106815376c44bbe679b..d6c0a5a0a5ae3510db3ace5e3f5d3410 /* * Save the userland NEON/VFP state. Under UP, -From 5fac7da686a7e73403bb8aed30a19f55f918da08 Mon Sep 17 00:00:00 2001 +From f6f323953bfadbbe55cc5d03735aa304626480ed Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Wed, 8 Mar 2017 21:13:24 +1100 -Subject: [PATCH 032/235] ASoC: bcm2835_i2s.c: relax the ch2 register setting +Subject: [PATCH 032/257] ASoC: bcm2835_i2s.c: relax the ch2 register setting for 8 channels This patch allows ch2 registers to be set for 8 channels of audio. @@ -1963,10 +1963,10 @@ index 6ba20498202ed36906b52096893a88867a79269f..56df7d8a43d0aac055a91b0d24aca8e1 format |= BCM2835_I2S_CH1(BCM2835_I2S_CHPOS(ch1pos)); format |= BCM2835_I2S_CH2(BCM2835_I2S_CHPOS(ch2pos)); -From 1ae5632b8cc5c7f54e19d36ac637a8c00a67483b Mon Sep 17 00:00:00 2001 +From 9fd7f3cac92cd7a25fcfa36771e64087bbf9bfe4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Tue, 1 Nov 2016 15:15:41 +0100 -Subject: [PATCH 033/235] i2c: bcm2835: Add debug support +Subject: [PATCH 033/257] i2c: bcm2835: Add debug support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -2001,10 +2001,10 @@ Signed-off-by: Noralf Trønnes 1 file changed, 98 insertions(+), 1 deletion(-) diff --git a/drivers/i2c/busses/i2c-bcm2835.c b/drivers/i2c/busses/i2c-bcm2835.c -index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299b8ecafee 100644 +index 44deae78913e5fa259927d1b5e8b6bf9aee60138..b7110eb2163e7d52f4369af1c3a37fd9c714a8fb 100644 --- a/drivers/i2c/busses/i2c-bcm2835.c +++ b/drivers/i2c/busses/i2c-bcm2835.c -@@ -53,6 +53,18 @@ +@@ -56,6 +56,18 @@ #define BCM2835_I2C_CDIV_MIN 0x0002 #define BCM2835_I2C_CDIV_MAX 0xFFFE @@ -2023,7 +2023,7 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 struct bcm2835_i2c_dev { struct device *dev; void __iomem *regs; -@@ -66,8 +78,78 @@ struct bcm2835_i2c_dev { +@@ -69,8 +81,78 @@ struct bcm2835_i2c_dev { u32 msg_err; u8 *msg_buf; size_t msg_buf_remaining; @@ -2102,7 +2102,7 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 static inline void bcm2835_i2c_writel(struct bcm2835_i2c_dev *i2c_dev, u32 reg, u32 val) { -@@ -170,6 +252,7 @@ static void bcm2835_i2c_start_transfer(struct bcm2835_i2c_dev *i2c_dev) +@@ -189,6 +271,7 @@ static void bcm2835_i2c_start_transfer(struct bcm2835_i2c_dev *i2c_dev) bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_A, msg->addr); bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_DLEN, msg->len); bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_C, c); @@ -2110,7 +2110,7 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 } /* -@@ -187,6 +270,7 @@ static irqreturn_t bcm2835_i2c_isr(int this_irq, void *data) +@@ -206,6 +289,7 @@ static irqreturn_t bcm2835_i2c_isr(int this_irq, void *data) u32 val, err; val = bcm2835_i2c_readl(i2c_dev, BCM2835_I2C_S); @@ -2118,7 +2118,7 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 err = val & (BCM2835_I2C_S_CLKT | BCM2835_I2C_S_ERR); if (err) { -@@ -253,6 +337,13 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], +@@ -272,6 +356,13 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], unsigned long time_left; int i, ret; @@ -2132,7 +2132,7 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 for (i = 0; i < (num - 1); i++) if (msgs[i].flags & I2C_M_RD) { dev_warn_once(i2c_dev->dev, -@@ -272,6 +363,10 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], +@@ -291,6 +382,10 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], time_left = wait_for_completion_timeout(&i2c_dev->completion, adap->timeout); @@ -2143,7 +2143,7 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 if (!time_left) { bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_C, BCM2835_I2C_C_CLEAR); -@@ -282,7 +377,9 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], +@@ -301,7 +396,9 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], if (!i2c_dev->msg_err) return num; @@ -2155,10 +2155,10 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 if (i2c_dev->msg_err & BCM2835_I2C_S_ERR) return -EREMOTEIO; -From 7f1775aa0152f41ba17bfa0d776b7837cc138e20 Mon Sep 17 00:00:00 2001 +From 6507d61ea6c492dcadbe04f8db3e0f88d423a5a3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 18 Dec 2014 16:07:15 -0800 -Subject: [PATCH 034/235] mm: Remove the PFN busy warning +Subject: [PATCH 034/257] mm: Remove the PFN busy warning See commit dae803e165a11bc88ca8dbc07a11077caf97bbcb -- the warning is expected sometimes when using CMA. However, that commit still spams @@ -2170,10 +2170,10 @@ Signed-off-by: Eric Anholt 1 file changed, 2 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c -index 2de080003693cebfb037dbb5a6e2e262823149a5..e277ffcb04835b5e2b982355e309c2ecaf3a4dbc 100644 +index 6627caeeaf8245cc8c4ba88fb05bbd31d84e06eb..e05215cfabb40f670e6fa3f0e781ee1b0356451d 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -7645,8 +7645,6 @@ int alloc_contig_range(unsigned long start, unsigned long end, +@@ -7631,8 +7631,6 @@ int alloc_contig_range(unsigned long start, unsigned long end, /* Make sure the range is really isolated. */ if (test_pages_isolated(outer_start, end, false)) { @@ -2183,10 +2183,10 @@ index 2de080003693cebfb037dbb5a6e2e262823149a5..e277ffcb04835b5e2b982355e309c2ec goto done; } -From 3877c18520b3f2c629b68d68dacdfc8d5817be4f Mon Sep 17 00:00:00 2001 +From 9dfd1ab81453138f43d5233122de0965ef4e4840 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 10:06:56 +0000 -Subject: [PATCH 035/235] ASoC: Add prompt for ICS43432 codec +Subject: [PATCH 035/257] ASoC: Add prompt for ICS43432 codec Without a prompt string, a config setting can't be included in a defconfig. Give CONFIG_SND_SOC_ICS43432 a prompt so that Pi soundcards @@ -2211,10 +2211,10 @@ index c367d11079bc90feec2ad0fa748d7ffc3035faba..91d5b531b69b49db97f7febbc60d33a2 config SND_SOC_INNO_RK3036 tristate "Inno codec driver for RK3036 SoC" -From 608b75c38ce7fb72398ca23254aac0f4327e7315 Mon Sep 17 00:00:00 2001 +From ae6b2ca26f5e26532765779047540abcd8f5357c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 12 May 2013 12:24:19 +0100 -Subject: [PATCH 036/235] Main bcm2708/bcm2709 linux port +Subject: [PATCH 036/257] Main bcm2708/bcm2709 linux port MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -2402,10 +2402,10 @@ index cfb4b4496dd9f61362dea012176c146120fada07..d9c6c217c4d6a2408abe2665bf7f2700 MODULE_AUTHOR("Lubomir Rintel "); MODULE_DESCRIPTION("BCM2835 mailbox IPC driver"); -From 6aedf36ce01682d4078010c70d02e067a23cfd2c Mon Sep 17 00:00:00 2001 +From b75980d2d0bd279dda2e63bbe40c096315b1c88d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:46:17 +0100 -Subject: [PATCH 037/235] Add dwc_otg driver +Subject: [PATCH 037/257] Add dwc_otg driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -7194,10 +7194,10 @@ index 0000000000000000000000000000000000000000..a896d73f7a9336f5a34015c44ea5a6b0 +} +module_exit(fsg_cleanup); diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig -index fa5692dec8320695a59bf7f3c0fa0a9e5457a0de..9eeb88a5b6e6b4e728d18abf6175ef19986c6bdc 100644 +index 92b19721b595e55ddef9d10d9bd7e9ce63fdf8ad..9205b080370f21267a1b7eae28b62a8afe57f6c6 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig -@@ -771,6 +771,16 @@ config USB_HWA_HCD +@@ -763,6 +763,16 @@ config USB_HWA_HCD To compile this driver a module, choose M here: the module will be called "hwa-hc". @@ -63702,10 +63702,10 @@ index 0000000000000000000000000000000000000000..cdc9963176e5a4a0d5250613b61e26c5 +test_main(); +0; -From 0b8d1914ae05a00e25c4bac1c230f704fadfcfe6 Mon Sep 17 00:00:00 2001 +From eeb519ff20f5722d6f6cabc64a50c54eaba4e180 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 17 Jun 2015 17:06:34 +0100 -Subject: [PATCH 038/235] bcm2708 framebuffer driver +Subject: [PATCH 038/257] bcm2708 framebuffer driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -67164,10 +67164,10 @@ index 3c14e43b82fefe1d32f591d1b2f61d2cd28d0fa8..7626beb6a5bb8df601ddf0f6e6909d1f +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 -From e97af0ad22380e60ab4a0720b00357380e4dff98 Mon Sep 17 00:00:00 2001 +From 9ee912a873b07ed58e96d4f21d89eadb481da323 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:22:53 +0100 -Subject: [PATCH 039/235] dmaengine: Add support for BCM2708 +Subject: [PATCH 039/257] dmaengine: Add support for BCM2708 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -67798,10 +67798,10 @@ index 0000000000000000000000000000000000000000..c5bfff2765be4606077e6c8af73040ec + +#endif /* _PLAT_BCM2708_DMA_H */ -From 5696e917df9a658974aff8e931bf50ca4a4b9923 Mon Sep 17 00:00:00 2001 +From de8e6ae16539997bcfee21ae84fb17d9c514c231 Mon Sep 17 00:00:00 2001 From: gellert Date: Fri, 15 Aug 2014 16:35:06 +0100 -Subject: [PATCH 040/235] MMC: added alternative MMC driver +Subject: [PATCH 040/257] MMC: added alternative MMC driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -69681,10 +69681,10 @@ index 279b39008a33bb68745d9ea55ea5dd7ed522fd1c..49bdea5791a289251019a89419804dde unsigned int erase_size; /* erase size in sectors */ -From ace573b80b220862dc0fa44975e1b60b2c6ad11e Mon Sep 17 00:00:00 2001 +From e37707c040836f5116e1b24ee5a5913d4526d47e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 25 Mar 2015 17:49:47 +0000 -Subject: [PATCH 041/235] Adding bcm2835-sdhost driver, and an overlay to +Subject: [PATCH 041/257] Adding bcm2835-sdhost driver, and an overlay to enable it BCM2835 has two SD card interfaces. This driver uses the other one. @@ -72090,10 +72090,10 @@ index 0000000000000000000000000000000000000000..9c6f199a7830959f31012d86bc1f8b1a +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Phil Elwell"); -From 049bef5b8805b199f6a810a4df8fbe639edadfb1 Mon Sep 17 00:00:00 2001 +From d90da82afeade0f712dd7dd900c4d223dcff7bd5 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 28 Oct 2016 15:36:43 +0100 -Subject: [PATCH 042/235] vc_mem: Add vc_mem driver for querying firmware +Subject: [PATCH 042/257] vc_mem: Add vc_mem driver for querying firmware memory addresses MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -72618,10 +72618,10 @@ index 0000000000000000000000000000000000000000..20a475377eb3078ea1ecaef2b24efc35 + +#endif /* _VC_MEM_H */ -From c1d92f4ff16585e30b8984a5f39a2e944ff1e579 Mon Sep 17 00:00:00 2001 +From 737101dc8c018ee255a798dfba518c9bd27682ef Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 22 Jul 2014 15:41:04 +0100 -Subject: [PATCH 043/235] vcsm: VideoCore shared memory service for BCM2835 +Subject: [PATCH 043/257] vcsm: VideoCore shared memory service for BCM2835 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -77499,10 +77499,10 @@ index 0000000000000000000000000000000000000000..b75729d762f25aace133f7a008633b40 + +#endif /* __VMCS_SM_IOCTL_H__INCLUDED__ */ -From 8aeab7274ecd496f9ae31eed0dde8731f419b9c2 Mon Sep 17 00:00:00 2001 +From 17acda57b6fd4020daa8aea521c6dfabe6c8df7d Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Fri, 21 Aug 2015 23:14:48 +0100 -Subject: [PATCH 044/235] Add /dev/gpiomem device for rootless user GPIO access +Subject: [PATCH 044/257] Add /dev/gpiomem device for rootless user GPIO access Signed-off-by: Luke Wren @@ -77810,10 +77810,10 @@ index 0000000000000000000000000000000000000000..f5e7f1ba8fb6f18dee77fad06a17480c +MODULE_DESCRIPTION("gpiomem driver for accessing GPIO from userspace"); +MODULE_AUTHOR("Luke Wren "); -From fd8be3f718eb9c876ac448806a508cb209179a7b Mon Sep 17 00:00:00 2001 +From 4a6bbded10b3028332fecaf432e80ce0965f3d86 Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Sat, 5 Sep 2015 01:14:45 +0100 -Subject: [PATCH 045/235] Add SMI driver +Subject: [PATCH 045/257] Add SMI driver Signed-off-by: Luke Wren --- @@ -79764,10 +79764,10 @@ index 0000000000000000000000000000000000000000..ee3a75edfc033eeb0d90a687ffb68b10 + +#endif /* BCM2835_SMI_H */ -From 80cbb5dd7f7c2fae78c3b68bc0863ae8b397e6d0 Mon Sep 17 00:00:00 2001 +From ad49d4103fefe5b4cc3f08a0032313c6cc3d2a86 Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Tue, 26 Apr 2016 14:59:21 +0000 -Subject: [PATCH 046/235] MISC: bcm2835: smi: use clock manager and fix reload +Subject: [PATCH 046/257] MISC: bcm2835: smi: use clock manager and fix reload issues Use clock manager instead of self-made clockmanager. @@ -79936,10 +79936,10 @@ index 63a4ea08b9930a3a31a985f0a1d969b488ed49ec..1261540703127d1d63b9f3c87042c6e5 return 0; } -From a767ff5a98b975f47d3cff60bb857c5c10477fce Mon Sep 17 00:00:00 2001 +From 451c9d98e09cb164e98f378e5df613bb53124df5 Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Sat, 5 Sep 2015 01:16:10 +0100 -Subject: [PATCH 047/235] Add SMI NAND driver +Subject: [PATCH 047/257] Add SMI NAND driver Signed-off-by: Luke Wren --- @@ -80304,10 +80304,10 @@ index 0000000000000000000000000000000000000000..c4826ea1c2bae555ce780e61f1076ddd + ("Driver for NAND chips using Broadcom Secondary Memory Interface"); +MODULE_AUTHOR("Luke Wren "); -From 1b82da9d7c93df304f7cc31a244435b00216f5f8 Mon Sep 17 00:00:00 2001 +From 7d76faeb4072e93e89d71d3993551e0d91fe0811 Mon Sep 17 00:00:00 2001 From: Aron Szabo Date: Sat, 16 Jun 2012 12:15:55 +0200 -Subject: [PATCH 048/235] lirc: added support for RaspberryPi GPIO +Subject: [PATCH 048/257] 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 @@ -81167,10 +81167,10 @@ index 0000000000000000000000000000000000000000..fb69624ccef00ddbdccf8256d6baf1b1 + +#endif -From 3b98eabb2d406b04bcdb79ac2bdbc25c4b1c0751 Mon Sep 17 00:00:00 2001 +From a9879ee858d30198a7b9a56eeb4246a51ff837ad Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:49:20 +0100 -Subject: [PATCH 049/235] Add cpufreq driver +Subject: [PATCH 049/257] Add cpufreq driver Signed-off-by: popcornmix @@ -81434,10 +81434,10 @@ index 0000000000000000000000000000000000000000..99345969b0e4d651fd9033d67de2febb +module_init(bcm2835_cpufreq_module_init); +module_exit(bcm2835_cpufreq_module_exit); -From 16bfb1fec2499a266df6f60e6db3fbb69fcb4096 Mon Sep 17 00:00:00 2001 +From fb8bff16a4fca0f2021e1bb8a03b0be2ac79a065 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 17 Jun 2015 15:44:08 +0100 -Subject: [PATCH 050/235] Add Chris Boot's i2c driver +Subject: [PATCH 050/257] Add Chris Boot's i2c driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -82102,10 +82102,10 @@ index 0000000000000000000000000000000000000000..962f2e5c7455d91bf32925d785f5f16b +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); -From a3ddd0fadee692707180cc6ad5ba4aa1ac07e8d9 Mon Sep 17 00:00:00 2001 +From cc7ceb5610d5c9c471512de28e62fe9078f531c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Fri, 26 Jun 2015 14:27:06 +0200 -Subject: [PATCH 051/235] char: broadcom: Add vcio module +Subject: [PATCH 051/257] char: broadcom: Add vcio module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -82330,10 +82330,10 @@ index 0000000000000000000000000000000000000000..c19bc2075c77879563ef5e59038b5a14 +MODULE_DESCRIPTION("Mailbox userspace access"); +MODULE_LICENSE("GPL"); -From 4d16fa8230facff8d84c683beaa279708191620d Mon Sep 17 00:00:00 2001 +From e39b006e75da17e0fc79b9b162e84dbfcab345c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Date: Fri, 26 Jun 2015 14:25:01 +0200 -Subject: [PATCH 052/235] firmware: bcm2835: Support ARCH_BCM270x +Subject: [PATCH 052/257] firmware: bcm2835: Support ARCH_BCM270x MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -82416,10 +82416,10 @@ index dd506cd3a5b874f9e1acd07efb8cd151bb6145d1..3f070bd38a91511c986e3fb114b15bd4 MODULE_AUTHOR("Eric Anholt "); MODULE_DESCRIPTION("Raspberry Pi firmware driver"); -From c0f441069fb6d1a5a5e0b2468d94ace9331c9569 Mon Sep 17 00:00:00 2001 +From f7d175fcf451c4cb1a990ef0053fec3cab91d521 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 11 May 2015 09:00:42 +0100 -Subject: [PATCH 053/235] scripts: Add mkknlimg and knlinfo scripts from tools +Subject: [PATCH 053/257] scripts: Add mkknlimg and knlinfo scripts from tools repo The Raspberry Pi firmware looks for a trailer on the kernel image to @@ -82946,10 +82946,10 @@ index 0000000000000000000000000000000000000000..84be2593ec1de8f97b0167ff06b3e05d + return $trailer; +} -From 40540609d3e02585422a4fe536f81a7f918f3613 Mon Sep 17 00:00:00 2001 +From a58eafba2b07fbd8ca50f380890eee139ea11bae Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:46:08 +0200 -Subject: [PATCH 054/235] BCM2708: Add core Device Tree support +Subject: [PATCH 054/257] BCM2708: Add core Device Tree support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -95403,10 +95403,10 @@ index 0b46136a91a80b51901f68bca1587b35a6f5f962..f7b614331bc8e9331d33a05957549849 # Bzip2 -From 218de421ed08b0ea695ea2f30a22c6e348e5766c Mon Sep 17 00:00:00 2001 +From 692239a4473204df46a2e7cd6143cd4d8aa60fa6 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 6 Feb 2015 13:50:57 +0000 -Subject: [PATCH 055/235] BCM270x_DT: Add pwr_led, and the required "input" +Subject: [PATCH 055/257] BCM270x_DT: Add pwr_led, and the required "input" trigger The "input" trigger makes the associated GPIO an input. This is to support @@ -95581,10 +95581,10 @@ index bf6db4fe895bcd67e04ee65e8f76ea104af6299f..8741dca6dba65e2d72fbdbc1702139c2 /* set_brightness_work / blink_timer flags, atomic, private. */ unsigned long work_flags; -From 372639184afb1635a2a92f5dc363b58452b9b62d Mon Sep 17 00:00:00 2001 +From 73afc58dc3d4f5a74491dc681698b7b87e6f82c5 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka Date: Mon, 17 Jun 2013 13:32:11 +0300 -Subject: [PATCH 056/235] fbdev: add FBIOCOPYAREA ioctl +Subject: [PATCH 056/257] fbdev: add FBIOCOPYAREA ioctl Based on the patch authored by Ali Gholami Rudi at https://lkml.org/lkml/2009/7/13/153 @@ -95852,10 +95852,10 @@ index 6cd9b198b7c64eb94821f2e3f2c5201e6c6d25eb..f36c92c2da7487437c33f7a4e2c6e09e __u32 dx; /* screen-relative */ __u32 dy; -From 9dddc398de1960ac9febce1cc821b3adc17bdbed Mon Sep 17 00:00:00 2001 +From 4f45e5c49c00b785dba1851675e13e0524593017 Mon Sep 17 00:00:00 2001 From: Harm Hanemaaijer Date: Thu, 20 Jun 2013 20:21:39 +0200 -Subject: [PATCH 057/235] Speed up console framebuffer imageblit function +Subject: [PATCH 057/257] 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 @@ -96064,10 +96064,10 @@ index a2bb276a8b2463eee98eb237c4647bc00cd93601..436494fba15abecb400ef28688466faf start_index, pitch_index); } else -From a1fd4c637f4b39c90725f3668888a8be68e12d74 Mon Sep 17 00:00:00 2001 +From 10474bd36feb86aff27eec43b7bb035c21f76e7e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 May 2013 11:46:50 +0100 -Subject: [PATCH 058/235] enabling the realtime clock 1-wire chip DS1307 and +Subject: [PATCH 058/257] 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 @@ -96317,10 +96317,10 @@ index 5b2972946dda5f9ad415f1eaeaab67743a5cc0f0..b3558b7c9efb2484b40e31312aee197b u8, w1_slave_found_callback); }; -From 11331d168d693bfa688498283de253ab2da49b6c Mon Sep 17 00:00:00 2001 +From 61651665e06941110105ad0dfdad8d0f048325b8 Mon Sep 17 00:00:00 2001 From: Gordon Hollingworth Date: Tue, 12 May 2015 14:47:56 +0100 -Subject: [PATCH 059/235] rpi-ft5406: Add touchscreen driver for pi LCD display +Subject: [PATCH 059/257] 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 @@ -96665,10 +96665,10 @@ index 0000000000000000000000000000000000000000..9d7d05482355d168c5c0c42508cd9789 +MODULE_DESCRIPTION("Touchscreen driver for memory based FT5406"); +MODULE_LICENSE("GPL"); -From fdd0ed0a727a2fecc4939df49253c44e7e6cf213 Mon Sep 17 00:00:00 2001 +From b71cf657c00b4ff42cdb8f1233d59edb861889e8 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 28 Nov 2016 16:50:04 +0000 -Subject: [PATCH 060/235] Improve __copy_to_user and __copy_from_user +Subject: [PATCH 060/257] Improve __copy_to_user and __copy_from_user performance Provide a __copy_from_user that uses memcpy. On BCM2708, use @@ -98248,10 +98248,10 @@ index 971bc298f63eeeed418131b7b7200ac91b0d73f1..78e9f6e8c6fdebdb754cb703095d1726 bool "Broadcom BCM63xx DSL SoC" depends on ARCH_MULTI_V7 -From 7c3de36cc3e024bf8587c468d1007af6b179bbd9 Mon Sep 17 00:00:00 2001 +From dcc2b1c8cbdc475c9af28ae4604a18e09c73d0bc Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 25 Jun 2015 12:16:11 +0100 -Subject: [PATCH 061/235] gpio-poweroff: Allow it to work on Raspberry Pi +Subject: [PATCH 061/257] 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 @@ -98286,10 +98286,10 @@ index be3d81ff51cc3f510d85e4eed7a52960e51e7bc1..a030ae9fb1fca325061c093696e82186 "%s: pm_power_off function already registered", __func__); -From 2a2e853bc47bbf1cc94277bec3b0c06cb0454362 Mon Sep 17 00:00:00 2001 +From 75821d60f5f61f7cb204866c57468178aa591c72 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Jul 2015 14:32:47 +0100 -Subject: [PATCH 062/235] mfd: Add Raspberry Pi Sense HAT core driver +Subject: [PATCH 062/257] mfd: Add Raspberry Pi Sense HAT core driver --- drivers/input/joystick/Kconfig | 8 + @@ -99154,10 +99154,10 @@ index 0000000000000000000000000000000000000000..56196dc2af10e464a1e3f98b028dca1c + +#endif -From e43e3d49d275b37eea7320cc552e0203959577e5 Mon Sep 17 00:00:00 2001 +From fc597edb9dfab1b700ba0fdc85c9101263ca474e Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:19:08 +0100 -Subject: [PATCH 063/235] ASoC: Add support for HifiBerry DAC +Subject: [PATCH 063/257] ASoC: Add support for HifiBerry DAC This adds a machine driver for the HifiBerry DAC. It is a sound card that can @@ -99332,10 +99332,10 @@ index 0000000000000000000000000000000000000000..ee9f133953544629282631e5ef3f73fe +MODULE_DESCRIPTION("ASoC Driver for HifiBerry DAC"); +MODULE_LICENSE("GPL v2"); -From 85f55c60f761d38e2d06580ae66a5f5c20479f6c Mon Sep 17 00:00:00 2001 +From 8a141392c5db83490479228442a3818956bf52dd Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Mon, 25 Jan 2016 15:48:59 +0000 -Subject: [PATCH 064/235] ASoC: Add support for Rpi-DAC +Subject: [PATCH 064/257] ASoC: Add support for Rpi-DAC --- sound/soc/bcm/Kconfig | 7 +++ @@ -99619,10 +99619,10 @@ index 0000000000000000000000000000000000000000..afe1b419582aa40c4b2729d242bb13cd +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From 882165f13ea6e4d39eb2a26d62ce64120f1f7ec5 Mon Sep 17 00:00:00 2001 +From 161ef19e216e89f012599ac3b83363b8ee8138b2 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:41:23 +0100 -Subject: [PATCH 065/235] ASoC: wm8804: Implement MCLK configuration options, +Subject: [PATCH 065/257] 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 @@ -99671,10 +99671,10 @@ index fc69b87443d80489382b97332de6d5ad12a58ec8..d8fdce81b297dcf02e144bdead0c6193 .component_driver = { .dapm_widgets = wm8804_dapm_widgets, -From f7b20fb2cdf94b682c92523b50c23d1c2c8a44a2 Mon Sep 17 00:00:00 2001 +From 01886f9c84ac066deeee082f73e819754070492c Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:42:08 +0100 -Subject: [PATCH 066/235] ASoC: BCM:Add support for HiFiBerry Digi. Driver is +Subject: [PATCH 066/257] ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patched WM8804 driver. Signed-off-by: Daniel Matuschek @@ -100018,10 +100018,10 @@ index 0000000000000000000000000000000000000000..7620dd02de40b6d644ff038b445d375d +MODULE_DESCRIPTION("ASoC Driver for HifiBerry Digi"); +MODULE_LICENSE("GPL v2"); -From 994d0b37b0e1870c40d4477959f592fc5b887a7f Mon Sep 17 00:00:00 2001 +From f211c33aeff6ee34aff59c7255eae9b677beec55 Mon Sep 17 00:00:00 2001 From: Gordon Garrity Date: Sat, 8 Mar 2014 16:56:57 +0000 -Subject: [PATCH 067/235] Add IQaudIO Sound Card support for Raspberry Pi +Subject: [PATCH 067/257] Add IQaudIO Sound Card support for Raspberry Pi Set a limit of 0dB on Digital Volume Control @@ -100356,10 +100356,10 @@ index 0000000000000000000000000000000000000000..1ee4097c846376666775272ed692ca33 +MODULE_DESCRIPTION("ASoC Driver for IQAudio DAC"); +MODULE_LICENSE("GPL v2"); -From f14ee0702e158936f7b1a1ce17165e1733d1c0d6 Mon Sep 17 00:00:00 2001 +From 0f1157607b2368f365e75e9580a407c309e501a0 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 10:06:56 +0200 -Subject: [PATCH 068/235] Added support for HiFiBerry DAC+ +Subject: [PATCH 068/257] 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. @@ -100994,10 +100994,10 @@ index 68feae262476492ae3a0b30855dbb09e96fa187e..f7b0977017ed5a6c02eafa0147d49d66 dev_err(dev, "No LRCLK?\n"); return -EINVAL; -From 8b67b4b1b7f83fecc7068dca515fc5ebfc049701 Mon Sep 17 00:00:00 2001 +From 3e1196a08768a57fc9a3363f0b2776a09afb7d84 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 11:09:58 +0200 -Subject: [PATCH 069/235] Added driver for HiFiBerry Amp amplifier add-on board +Subject: [PATCH 069/257] 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. @@ -101832,10 +101832,10 @@ index 0000000000000000000000000000000000000000..8f019e04898754d2f87e9630137be9e8 + +#endif /* _TAS5713_H */ -From 47008307fd2891368ec586b1fd5f5ff27e37fbe1 Mon Sep 17 00:00:00 2001 +From 81138ce2de9217dc4be0f6c738b394ac06eaf1b0 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Wed, 25 Mar 2015 09:26:17 +0100 -Subject: [PATCH 070/235] Add driver for rpi-proto +Subject: [PATCH 070/257] 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 @@ -102050,10 +102050,10 @@ index 0000000000000000000000000000000000000000..fadbfade100228aaafabb0d3bdf35c01 +MODULE_DESCRIPTION("ASoC Driver for Raspberry Pi connected to PROTO board (WM8731)"); +MODULE_LICENSE("GPL"); -From 8ba93d98ed029fde482f1c689a10bbc7a1197fb8 Mon Sep 17 00:00:00 2001 +From 55720b1df46ba0d9df15b3635e833999e302fca3 Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Mon, 24 Aug 2015 16:03:47 +0100 -Subject: [PATCH 071/235] RaspiDAC3 support +Subject: [PATCH 071/257] RaspiDAC3 support Signed-off-by: Jan Grulich @@ -102296,10 +102296,10 @@ index 0000000000000000000000000000000000000000..ad2b5b89bc8213dc2e277306ef50d6e3 +MODULE_DESCRIPTION("ASoC Driver for RaspiDAC Rev.3x"); +MODULE_LICENSE("GPL v2"); -From 1d67ce10c6f376c97ce7f39dadfb7f5470f21cbd Mon Sep 17 00:00:00 2001 +From 214ba87db9a0bda5fd3b52e6d4bb57d4accf53f9 Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Thu, 7 Apr 2016 21:26:21 +0100 -Subject: [PATCH 072/235] Add Support for JustBoom Audio boards +Subject: [PATCH 072/257] Add Support for JustBoom Audio boards justboom-dac: Adjust for ALSA API change @@ -102755,10 +102755,10 @@ index 0000000000000000000000000000000000000000..909cf8928f2f4313982316f9c5b8a709 +MODULE_DESCRIPTION("ASoC Driver for JustBoom PI Digi HAT Sound Card"); +MODULE_LICENSE("GPL v2"); -From 333b307815c84a31da508877b176c83f7561e618 Mon Sep 17 00:00:00 2001 +From 80bde2bd5cc0c06a169402247c364909593ac51a Mon Sep 17 00:00:00 2001 From: Andrey Grodzovsky Date: Tue, 3 May 2016 22:10:59 -0400 -Subject: [PATCH 073/235] ARM: adau1977-adc: Add basic machine driver for +Subject: [PATCH 073/257] ARM: adau1977-adc: Add basic machine driver for adau1977 codec driver. This commit adds basic support for the codec usage including: Device tree overlay, @@ -102940,10 +102940,10 @@ index 0000000000000000000000000000000000000000..f3d7e5db7bb912e1d7ca6f8e8d42df5f +MODULE_DESCRIPTION("ASoC Driver for ADAU1977 ADC"); +MODULE_LICENSE("GPL v2"); -From eda7624f18744c3e10a09cdb358c5730461474da Mon Sep 17 00:00:00 2001 +From 323f6c5b5592fa98257930b5ebc44decf4b6a396 Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Mon, 16 May 2016 21:36:31 +1000 -Subject: [PATCH 074/235] New AudioInjector.net Pi soundcard with low jitter +Subject: [PATCH 074/257] New AudioInjector.net Pi soundcard with low jitter audio in and out. Contains the sound/soc/bcm ALSA machine driver and necessary alterations to the Kconfig and Makefile. @@ -103194,10 +103194,10 @@ index 0000000000000000000000000000000000000000..491906bbf446826e55dd843f28e4860f +MODULE_ALIAS("platform:audioinjector-pi-soundcard"); + -From 8f89ba37b996de3aaf97c772a7e1b83b4fd370e9 Mon Sep 17 00:00:00 2001 +From 8886522ed31c26976d50684e890388e82af0fc96 Mon Sep 17 00:00:00 2001 From: DigitalDreamtime Date: Thu, 30 Jun 2016 18:38:42 +0100 -Subject: [PATCH 075/235] Add IQAudIO Digi WM8804 board support +Subject: [PATCH 075/257] Add IQAudIO Digi WM8804 board support Support IQAudIO Digi board with iqaudio_digi machine driver and iqaudio-digi-wm8804-audio overlay. @@ -103497,10 +103497,10 @@ index 0000000000000000000000000000000000000000..33aa2be8a43a12a12cfb5d844dd9732c +MODULE_DESCRIPTION("ASoC Driver for IQAudIO WM8804 Digi"); +MODULE_LICENSE("GPL v2"); -From c457fa78082019ac5dc82ba7b844c44352509392 Mon Sep 17 00:00:00 2001 +From e378321dc9c74673753a200796392f2b39e29eed Mon Sep 17 00:00:00 2001 From: escalator2015 Date: Tue, 24 May 2016 16:20:09 +0100 -Subject: [PATCH 076/235] New driver for RRA DigiDAC1 soundcard using WM8741 + +Subject: [PATCH 076/257] New driver for RRA DigiDAC1 soundcard using WM8741 + WM8804 --- @@ -103973,10 +103973,10 @@ index 0000000000000000000000000000000000000000..f200688bb4ae32b90a0ced555aed94b0 +MODULE_DESCRIPTION("ASoC Driver for RRA DigiDAC1"); +MODULE_LICENSE("GPL v2"); -From 406a972edbcc0b1a1cbe2efb5573784cad3475e2 Mon Sep 17 00:00:00 2001 +From e9869d4b054fc058022710809a2d263c0953b3c0 Mon Sep 17 00:00:00 2001 From: DigitalDreamtime Date: Sat, 2 Jul 2016 16:26:19 +0100 -Subject: [PATCH 077/235] Add support for Dion Audio LOCO DAC-AMP HAT +Subject: [PATCH 077/257] Add support for Dion Audio LOCO DAC-AMP HAT Using dedicated machine driver and pcm5102a codec driver. @@ -104149,10 +104149,10 @@ index 0000000000000000000000000000000000000000..65e03741d349a2dc5bd91f69855ea952 +MODULE_DESCRIPTION("ASoC Driver for DionAudio LOCO"); +MODULE_LICENSE("GPL v2"); -From e4bf7426a15f0022411cd6bebde1716de9d2e70c Mon Sep 17 00:00:00 2001 +From f3349e489239f5f69c3f56896bd52c733fc901fd Mon Sep 17 00:00:00 2001 From: Clive Messer Date: Mon, 19 Sep 2016 14:01:04 +0100 -Subject: [PATCH 078/235] Allo Piano DAC boards: Initial 2 channel (stereo) +Subject: [PATCH 078/257] Allo Piano DAC boards: Initial 2 channel (stereo) support (#1645) Add initial 2 channel (stereo) support for Allo Piano DAC (2.0/2.1) boards, @@ -104359,10 +104359,10 @@ index 0000000000000000000000000000000000000000..eaf50fb6dbca1970ae1c6f8662088b0f +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Piano DAC"); +MODULE_LICENSE("GPL v2"); -From 5c455c835911260178a62692da2291660581aa28 Mon Sep 17 00:00:00 2001 +From 83715ee41c0547c68baaecaa30808445b26a0973 Mon Sep 17 00:00:00 2001 From: Raashid Muhammed Date: Mon, 27 Mar 2017 12:35:00 +0530 -Subject: [PATCH 079/235] Add support for Allo Piano DAC 2.1 plus add-on board +Subject: [PATCH 079/257] Add support for Allo Piano DAC 2.1 plus add-on board for Raspberry Pi. The Piano DAC 2.1 has support for 4 channels with subwoofer. @@ -105450,10 +105450,10 @@ index 0000000000000000000000000000000000000000..1800f5e4d414e2d83a9487a89a2800a3 +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Piano DAC Plus"); +MODULE_LICENSE("GPL v2"); -From c0d3ef32d8bb81f2728dd39b531b24e23d50fa5b Mon Sep 17 00:00:00 2001 +From 232433f537a2b3b058bbf617edecd64670fd5ed8 Mon Sep 17 00:00:00 2001 From: BabuSubashChandar Date: Tue, 28 Mar 2017 20:04:42 +0530 -Subject: [PATCH 080/235] Add support for Allo Boss DAC add-on board for +Subject: [PATCH 080/257] Add support for Allo Boss DAC add-on board for Raspberry Pi. (#1924) Signed-off-by: Baswaraj K @@ -106156,10 +106156,10 @@ index 0000000000000000000000000000000000000000..203ab76c7045b081578e23bda1099dd1 +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Boss DAC"); +MODULE_LICENSE("GPL v2"); -From f7deb5cf1bf8dc4a9bdfc7167c1f0f637c4203a0 Mon Sep 17 00:00:00 2001 +From f82cd16093870ec44a670a8b87f339fb6dc54b52 Mon Sep 17 00:00:00 2001 From: gtrainavicius Date: Sun, 23 Oct 2016 12:06:53 +0300 -Subject: [PATCH 081/235] Support for Blokas Labs pisound board +Subject: [PATCH 081/257] Support for Blokas Labs pisound board Pisound dynamic overlay (#1760) @@ -107358,10 +107358,10 @@ index 0000000000000000000000000000000000000000..06ff1e53dc9d860946965b6303577762 +MODULE_DESCRIPTION("ASoC Driver for pisound, http://blokas.io/pisound"); +MODULE_LICENSE("GPL v2"); -From 15cb44d272aaaea8f0f5ce6fe1542930ad8ea51f Mon Sep 17 00:00:00 2001 +From a061e754d547734f7e0664efd498c7a95791bda0 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 22 Jan 2017 12:49:37 +0100 -Subject: [PATCH 082/235] ASoC: Add driver for Cirrus Logic Audio Card +Subject: [PATCH 082/257] ASoC: Add driver for Cirrus Logic Audio Card Note: due to problems with deferred probing of regulators the following softdep should be added to a modprobe.d file @@ -108426,10 +108426,10 @@ index 0000000000000000000000000000000000000000..ac8651ddff7bd3701dffe22c7fb88352 +MODULE_DESCRIPTION("ASoC driver for Cirrus Logic Audio Card"); +MODULE_LICENSE("GPL"); -From d45f047718b4d6d7b1f4383e34a593ba9a113af3 Mon Sep 17 00:00:00 2001 +From d9d96f2509e9122d0984d6eb0b766cae1ace1870 Mon Sep 17 00:00:00 2001 From: Miquel Date: Fri, 24 Feb 2017 20:51:06 +0100 -Subject: [PATCH 083/235] sound: Support for Dion Audio LOCO-V2 DAC-AMP HAT +Subject: [PATCH 083/257] sound: Support for Dion Audio LOCO-V2 DAC-AMP HAT Signed-off-by: Miquel Blauw --- @@ -108624,10 +108624,10 @@ index 0000000000000000000000000000000000000000..a009c49477972a9832175d86f201b035 +MODULE_DESCRIPTION("ASoC Driver for DionAudio LOCO-V2"); +MODULE_LICENSE("GPL v2"); -From 317671cec838aad568f14d32b68a1f7537b52f08 Mon Sep 17 00:00:00 2001 +From 4f6497424812fe6cf4d48602248bf04ce02af08c Mon Sep 17 00:00:00 2001 From: Fe-Pi Date: Wed, 1 Mar 2017 04:42:43 -0700 -Subject: [PATCH 084/235] Add support for Fe-Pi audio sound card. (#1867) +Subject: [PATCH 084/257] Add support for Fe-Pi audio sound card. (#1867) Fe-Pi Audio Sound Card is based on NXP SGTL5000 codec. Mechanical specification of the board is the same the Raspberry Pi Zero. @@ -108841,10 +108841,10 @@ index 0000000000000000000000000000000000000000..015b56fd73cc36be5b5eecd17548fd03 +MODULE_DESCRIPTION("ASoC Driver for Fe-Pi Audio"); +MODULE_LICENSE("GPL v2"); -From 19c43d79648a9583cf64a7f743bdafbfa989b213 Mon Sep 17 00:00:00 2001 +From ee173ea1fb5197098a53b748a7e98f26607eef1c Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Wed, 8 Mar 2017 20:04:13 +1100 -Subject: [PATCH 085/235] Add support for the AudioInjector.net Octo sound card +Subject: [PATCH 085/257] Add support for the AudioInjector.net Octo sound card AudioInjector Octo: sample rates, regulators, reset @@ -109253,10 +109253,10 @@ index 0000000000000000000000000000000000000000..5e79f4eff93a21ed3495c77a90f73525 +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:audioinjector-octo-soundcard"); -From 8d0160c8b6551b0f092de0bfb885306141b308e5 Mon Sep 17 00:00:00 2001 +From deb6c63bd7f77d880655f8d7af93c57e49b031fc Mon Sep 17 00:00:00 2001 From: Peter Malkin Date: Mon, 27 Mar 2017 16:38:21 -0700 -Subject: [PATCH 086/235] Driver support for Google voiceHAT soundcard. +Subject: [PATCH 086/257] Driver support for Google voiceHAT soundcard. --- sound/soc/bcm/Kconfig | 7 ++ @@ -109647,10 +109647,10 @@ index 0000000000000000000000000000000000000000..225854b8e5298b3c3018f59a49404354 +MODULE_DESCRIPTION("ASoC Driver for Google voiceHAT SoundCard"); +MODULE_LICENSE("GPL v2"); -From b45ed4c82bc4ddace951a5a9dbc298c0e49ec7e5 Mon Sep 17 00:00:00 2001 +From 505ca2c344396056eb379c2a44949d767c2157af Mon Sep 17 00:00:00 2001 From: sandeepal Date: Fri, 2 Jun 2017 18:59:46 +0530 -Subject: [PATCH 087/235] Allo Digione Driver (#2048) +Subject: [PATCH 087/257] Allo Digione Driver (#2048) Driver for the Allo Digione soundcard @@ -109973,10 +109973,10 @@ index 0000000000000000000000000000000000000000..9387b055875fdf92a13dc4a9d2727f95 +MODULE_DESCRIPTION("ASoC Driver for Allo DigiOne"); +MODULE_LICENSE("GPL v2"); -From 1bd92192fb91ae7b5e2c1957744e60be2993e1ac Mon Sep 17 00:00:00 2001 +From 1602215a1f049d1be9f68a27260e57e05adfe18f Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 21 Oct 2015 14:55:21 +0100 -Subject: [PATCH 088/235] rpi_display: add backlight driver and overlay +Subject: [PATCH 088/257] 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 @@ -110145,10 +110145,10 @@ index 0000000000000000000000000000000000000000..14a0d9b037395497c1fdae2961feccd5 +MODULE_DESCRIPTION("Raspberry Pi mailbox based Backlight Driver"); +MODULE_LICENSE("GPL"); -From 4d1657a88dd705642ad82210dc4ee81371b0da9a Mon Sep 17 00:00:00 2001 +From a0bd2a6a94d2fda83f470edd2ab68eec497da063 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 23 Feb 2016 19:56:04 +0000 -Subject: [PATCH 089/235] bcm2835-virtgpio: Virtual GPIO driver +Subject: [PATCH 089/257] bcm2835-virtgpio: Virtual GPIO driver Add a virtual GPIO driver that uses the firmware mailbox interface to request that the VPU toggles LEDs. @@ -110409,10 +110409,10 @@ index 0000000000000000000000000000000000000000..c3725546def9d4a6264fbb1f6b9814d0 +MODULE_DESCRIPTION("brcmvirt GPIO driver"); +MODULE_ALIAS("platform:brcmvirt-gpio"); -From cceec1232256bf6ff92ae1b5e7f8407152c33057 Mon Sep 17 00:00:00 2001 +From 021ba68ea19497852767fe9ad56f8e96a2c7b7c3 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 20 Feb 2017 17:01:21 +0000 -Subject: [PATCH 090/235] bcm2835-gpio-exp: Driver for GPIO expander via +Subject: [PATCH 090/257] bcm2835-gpio-exp: Driver for GPIO expander via mailbox service Pi3 and Compute Module 3 have a GPIO expander that the @@ -110721,10 +110721,10 @@ index 0000000000000000000000000000000000000000..d68adafaee4ad406f45f4ff0d6b7c1ad +MODULE_DESCRIPTION("brcm-exp GPIO driver"); +MODULE_ALIAS("platform:brcmexp-gpio"); -From 9f935a902ea796f678bcefde0d3393e832efdfd8 Mon Sep 17 00:00:00 2001 +From f3bc9c2ae8d5beb7c44b43c5a8c4ede60b8707dd Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 23 Feb 2016 17:26:48 +0000 -Subject: [PATCH 091/235] amba_pl011: Don't use DT aliases for numbering +Subject: [PATCH 091/257] amba_pl011: Don't use DT aliases for numbering The pl011 driver looks for DT aliases of the form "serial", and if found uses as the device ID. This can cause @@ -110753,10 +110753,10 @@ index 111e6a95077978c2c30bfe2a2de4a0d095e8d76e..584471add0962c0e26eb814fc0ef43ee uap->old_cr = 0; uap->port.dev = dev; -From 0177dae93db95006a2e232886aecf9ac33dc2d6e Mon Sep 17 00:00:00 2001 +From c7259a27bccd895de53bc3cdc47aa239bfa410d2 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 1 Mar 2017 16:07:39 +0000 -Subject: [PATCH 092/235] amba_pl011: Round input clock up +Subject: [PATCH 092/257] amba_pl011: Round input clock up The UART clock is initialised to be as close to the requested frequency as possible without exceeding it. Now that there is a @@ -110842,10 +110842,10 @@ index 584471add0962c0e26eb814fc0ef43eea99b2d29..bfbc845d7be9ef804468d0a82da18d9b /* unregisters the driver also if no more ports are left */ static void pl011_unregister_port(struct uart_amba_port *uap) -From 4d966002f8987fed4402b24ac20c6ad29265d821 Mon Sep 17 00:00:00 2001 +From 564b166ddd8c5859ec6ba6eeead15ac10529c0a1 Mon Sep 17 00:00:00 2001 From: Pantelis Antoniou Date: Wed, 3 Dec 2014 13:23:28 +0200 -Subject: [PATCH 093/235] OF: DT-Overlay configfs interface +Subject: [PATCH 093/257] OF: DT-Overlay configfs interface This is a port of Pantelis Antoniou's v3 port that makes use of the new upstreamed configfs support for binary attributes. @@ -111278,10 +111278,10 @@ index 0000000000000000000000000000000000000000..0037e6868a6cda8706c88194c6a4454b +} +late_initcall(of_cfs_init); -From 6fbce6a7b5fed95a8bc1dc8dd0484bf77331520c Mon Sep 17 00:00:00 2001 +From 62d726f4104db91f3d5c610c352c41c0df21145d Mon Sep 17 00:00:00 2001 From: Cheong2K Date: Fri, 26 Feb 2016 18:20:10 +0800 -Subject: [PATCH 094/235] brcm: adds support for BCM43341 wifi +Subject: [PATCH 094/257] brcm: adds support for BCM43341 wifi brcmfmac: Disable power management @@ -111392,7 +111392,7 @@ index 7a2b49587b4d32dde1af56a2979d4e1818500f84..df138305217384de2359313bc7d00528 MODULE_PARM_DESC(roamoff, "Do not use internal roaming engine"); diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c -index b3fa8ae804650f7ea838ff59ca84dfb6ca24da90..c1e86df297edf2fa7f641e36ccbfc7334f672e8b 100644 +index eccd25febfe6035a89df9e342476b43746afe287..1a1563611733c429568aeb5a14379df522b88015 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -609,6 +609,7 @@ BRCMF_FW_NVRAM_DEF(4329, "brcmfmac4329-sdio.bin", "brcmfmac4329-sdio.txt"); @@ -111413,10 +111413,10 @@ index b3fa8ae804650f7ea838ff59ca84dfb6ca24da90..c1e86df297edf2fa7f641e36ccbfc733 BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43362_CHIP_ID, 0xFFFFFFFE, 43362), BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, 4339), -From 2f9a53ff2542654b34e91c4ac6e670be7c3d7b27 Mon Sep 17 00:00:00 2001 +From 374097833d72c0387c2d6722be03eb4db46445b2 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 17 Feb 2017 15:26:13 +0000 -Subject: [PATCH 095/235] brcmfmac: Mute expected startup 'errors' +Subject: [PATCH 095/257] brcmfmac: Mute expected startup 'errors' The brcmfmac WiFi driver always complains about the '00' country code. Modify the driver to ignore '00' silently. @@ -111440,10 +111440,10 @@ index 2d3b5e2a3ef7cd6186487b48665b401249380d18..e417454f5d6ec136cda29e65af5449f2 req->alpha2[0], req->alpha2[1]); return; -From 29d1ff447f344fcbaba0c8e116d56c0198caa375 Mon Sep 17 00:00:00 2001 +From 8b65c27847db01ee90b6b83fe2c5f0abcbdd5b3a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 17 Dec 2015 13:37:07 +0000 -Subject: [PATCH 096/235] hci_h5: Don't send conf_req when ACTIVE +Subject: [PATCH 096/257] 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. @@ -111466,10 +111466,10 @@ index c0e4e26dc30d7c3c6a771b7b86df88c8cf763646..7308287259eedcaf229f8a496a0e3826 if (H5_HDR_LEN(hdr) > 2) h5->tx_win = (data[2] & 0x07); -From 695d4a8c8a48954e0865e114c3c7c498bc15948b Mon Sep 17 00:00:00 2001 +From fa753101e4f6ad84912596d3509b14980999ed18 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 13 Apr 2015 17:16:29 +0100 -Subject: [PATCH 097/235] config: Add default configs +Subject: [PATCH 097/257] config: Add default configs --- arch/arm/configs/bcm2709_defconfig | 1339 +++++++++++++++++++++++++++++++++++ @@ -114174,10 +114174,10 @@ index 0000000000000000000000000000000000000000..c1da808d40bc8e867b41d3566bd60a75 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y -From 697cd29284972c731e8cfebf7d114a0ce8d82bdc Mon Sep 17 00:00:00 2001 +From b4fe2f6c70a22985eb2ed5736540ffd2e852fce1 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Wed, 24 Aug 2016 03:35:56 -0700 -Subject: [PATCH 098/235] Add arm64 configuration and device tree differences. +Subject: [PATCH 098/257] Add arm64 configuration and device tree differences. Disable MMC_BCM2835_SDHOST and MMC_BCM2835 since these drivers are crashing at the moment. @@ -115591,10 +115591,10 @@ index 0000000000000000000000000000000000000000..e6b09fafa27eed2b762e3d53b55041f7 +CONFIG_LIBCRC32C=y +CONFIG_BCM2835_VCHIQ=n -From ad0611f0f66534a022bee2ca3bc7b749ecc9c0c4 Mon Sep 17 00:00:00 2001 +From ac8bdcac3745e36786329d28ef7665a1173dd58e Mon Sep 17 00:00:00 2001 From: Electron752 Date: Thu, 12 Jan 2017 07:07:08 -0800 -Subject: [PATCH 099/235] ARM64: Make it work again on 4.9 (#1790) +Subject: [PATCH 099/257] ARM64: Make it work again on 4.9 (#1790) * Invoke the dtc compiler with the same options used in arm mode. * ARM64 now uses the bcm2835 platform just like ARM32. @@ -116005,10 +116005,10 @@ index e6b09fafa27eed2b762e3d53b55041f793683d27..c7e891d72969a388d9b135a36dbfc9c9 CONFIG_LIBCRC32C=y -CONFIG_BCM2835_VCHIQ=n -From 91bd9288499438ace2a3ca023d3410c5c943963b Mon Sep 17 00:00:00 2001 +From 0ad11db74a418c652490bad85b819fd9f0a8b4f4 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Thu, 12 Jan 2017 19:10:07 -0800 -Subject: [PATCH 100/235] ARM64: Enable HDMI audio and vc04_services in +Subject: [PATCH 100/257] ARM64: Enable HDMI audio and vc04_services in bcmrpi3_defconfig Signed-off-by: Michael Zoran @@ -116037,10 +116037,10 @@ index c7e891d72969a388d9b135a36dbfc9c9cb609bf8..4b90f9b64abe9f089ba56b13d5a00de3 CONFIG_BCM2835_MBOX=y # CONFIG_IOMMU_SUPPORT is not set -From 7b660c9ac357561171a9c2e1694afad5bd641d0f Mon Sep 17 00:00:00 2001 +From 5061d4d30633f69e344b50ae12dc06c71b209cd5 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Thu, 12 Jan 2017 19:14:03 -0800 -Subject: [PATCH 101/235] ARM64: Run bcmrpi3_defconfig through savedefconfig. +Subject: [PATCH 101/257] ARM64: Run bcmrpi3_defconfig through savedefconfig. Signed-off-by: Michael Zoran --- @@ -116085,10 +116085,10 @@ index 4b90f9b64abe9f089ba56b13d5a00de33343bfb9..dac962ca1634662ce7d966f1ffb53b5b CONFIG_FB_TFT_AGM1264K_FL=m CONFIG_FB_TFT_BD663474=m -From adf6df5236d6fcad368bca9acd95e108589bf1ef Mon Sep 17 00:00:00 2001 +From c82fb0525d4e76cb47a991e2a52de2401d2ff087 Mon Sep 17 00:00:00 2001 From: Electron752 Date: Sat, 14 Jan 2017 02:54:26 -0800 -Subject: [PATCH 102/235] ARM64: Enable Kernel Address Space Randomization +Subject: [PATCH 102/257] ARM64: Enable Kernel Address Space Randomization (#1792) Randomization allows the mapping between virtual addresses and physical @@ -116120,10 +116120,10 @@ index dac962ca1634662ce7d966f1ffb53b5bfa27c506..aae33b4b3c3e736ea7cd3ca242158ad6 CONFIG_BINFMT_MISC=y CONFIG_COMPAT=y -From 1cdcff7ef14a553b64a045b066bed8e7ec79d91a Mon Sep 17 00:00:00 2001 +From 612780ee9ebe0c243e6d0008c3975237581bd09c Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sun, 15 Jan 2017 07:31:59 -0800 -Subject: [PATCH 103/235] ARM64: Enable RTL8187/RTL8192CU wifi in build config +Subject: [PATCH 103/257] ARM64: Enable RTL8187/RTL8192CU wifi in build config These drivers build now, so they can be enabled back in the build configuration just like they are for @@ -116148,10 +116148,10 @@ index aae33b4b3c3e736ea7cd3ca242158ad6ba558aff..b7d762df19b85e369a32cd823dfd0621 CONFIG_ZD1211RW=m CONFIG_MAC80211_HWSIM=m -From fd5a5c47547218c6b0c4882cd5f201754f30688c Mon Sep 17 00:00:00 2001 +From 14eb9f261da402e16f55dd0dbebaf6ec496f8679 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:33:51 -0800 -Subject: [PATCH 104/235] ARM64/DWC_OTG: Port dwc_otg driver to ARM64 +Subject: [PATCH 104/257] ARM64/DWC_OTG: Port dwc_otg driver to ARM64 In ARM64, the FIQ mechanism used by this driver is not current implemented. As a workaround, reqular IRQ is used instead @@ -116494,10 +116494,10 @@ index 6b2c7d0c93f36a63863ff4b0ecc1f3eab77e058b..d7b700ff17821ad1944e36721fe6b2db /** The OS page size */ #define DWC_OS_PAGE_SIZE PAGE_SIZE -From 238928db258c909d3dec5f9ad00073d511eb3197 Mon Sep 17 00:00:00 2001 +From 23c4c9b15c092cd8a3d43c3d0799623d112f7c34 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:43:57 -0800 -Subject: [PATCH 105/235] ARM64: Round-Robin dispatch IRQs between CPUs. +Subject: [PATCH 105/257] ARM64: Round-Robin dispatch IRQs between CPUs. IRQ-CPU mapping is round robined on ARM64 to increase concurrency and allow multiple interrupts to be serviced @@ -116571,10 +116571,10 @@ index 86b357ae027bf8ba1ac32cd150a8cf21e36597e2..05b17ca993f405c4c8e61a782ec58149 .name = "bcm2836-gpu", .irq_mask = bcm2836_arm_irqchip_mask_gpu_irq, -From a013225a0a03dd76b3b3cfa95041d2968de43716 Mon Sep 17 00:00:00 2001 +From 289367c771d58e5701706014232193959320f547 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:45:03 -0800 -Subject: [PATCH 106/235] ARM64: Enable DWC_OTG Driver In ARM64 Build +Subject: [PATCH 106/257] ARM64: Enable DWC_OTG Driver In ARM64 Build Config(bcmrpi3_defconfig) Signed-off-by: Michael Zoran @@ -116595,10 +116595,10 @@ index b7d762df19b85e369a32cd823dfd062145bdefa7..4d85c231c5ea0244e1b05fb4a5e3c8fd CONFIG_USB_STORAGE=y CONFIG_USB_STORAGE_REALTEK=m -From d6200f7b10f3b1027dcb8f7b2241a169ba09905a Mon Sep 17 00:00:00 2001 +From 7257130f10cc99e1eea68636d58abddad2af78ec Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 11 Feb 2017 01:18:31 -0800 -Subject: [PATCH 107/235] ARM64: Force hardware emulation of deprecated +Subject: [PATCH 107/257] ARM64: Force hardware emulation of deprecated instructions. --- @@ -116626,10 +116626,10 @@ index d06fbe4cd38d7423c900aff64b0e728f995478d3..877b7c90f9555203d5d55d739359a256 case INSN_OBSOLETE: insn->current_mode = INSN_UNDEF; -From ac28e40ed6948c2aa44ffe42c039e9e4deb8dd69 Mon Sep 17 00:00:00 2001 +From ab2b895af1e29fd1111bf46b5ee5fc39d8b0966b Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 10 Feb 2017 17:57:08 -0800 -Subject: [PATCH 108/235] build/arm64: Add rules for .dtbo files for dts +Subject: [PATCH 108/257] build/arm64: Add rules for .dtbo files for dts overlays We now create overlays as .dtbo files. @@ -116654,10 +116654,10 @@ index 7318165cfc90b5b4e36048fbafd9287a1cf3516f..f6f5df3f262b0baf1338bea188d78883 dtbs: prepare scripts -From d0047a5c538a58bcc4ecd214fdcafb87680b4400 Mon Sep 17 00:00:00 2001 +From 8fe8f782462afa9539f1308f13f275b5cc0c9c94 Mon Sep 17 00:00:00 2001 From: Bilal Amarni Date: Wed, 24 May 2017 10:52:50 +0200 -Subject: [PATCH 109/235] enable drivers for GPIO expander and vcio +Subject: [PATCH 109/257] enable drivers for GPIO expander and vcio --- arch/arm64/configs/bcmrpi3_defconfig | 3 +++ @@ -116685,10 +116685,10 @@ index 4d85c231c5ea0244e1b05fb4a5e3c8fd3e651ddf..9dcb58a519d041fadae99c81a7bda621 CONFIG_GPIO_ARIZONA=m CONFIG_GPIO_STMPE=y -From e55ae968bd629b098b628bb57e170462c5130b54 Mon Sep 17 00:00:00 2001 +From 5617125c8d7c2fed1e0ed16fbe559b82375af6c1 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 16:34:46 +0000 -Subject: [PATCH 110/235] bcm2835-aux: Add aux interrupt controller +Subject: [PATCH 110/257] bcm2835-aux: Add aux interrupt controller The AUX block has a shared interrupt line with a register indicating which devices have active IRQs. Expose this as a nested interrupt @@ -116852,10 +116852,10 @@ index bd750cf2238d61489811e7d7bd3b5f9950ed53c8..41e0702fae4692221980b0d02aed1ba6 BCM2835_AUX_CLOCK_COUNT, GFP_KERNEL); if (!onecell) -From b09ef7c307200837543a33c0f5415cc5b2a87f3d Mon Sep 17 00:00:00 2001 +From 8b0840a9c9f46dc0ba923bbdaaeac350c22d4101 Mon Sep 17 00:00:00 2001 From: Yasunari Takiguchi Date: Fri, 14 Apr 2017 10:43:57 +0100 -Subject: [PATCH 111/235] This is the driver for Sony CXD2880 DVB-T2/T tuner + +Subject: [PATCH 111/257] This is the driver for Sony CXD2880 DVB-T2/T tuner + demodulator. It includes the CXD2880 driver and the CXD2880 SPI adapter. The current CXD2880 driver version is 1.4.1 - 1.0.1 released on April 13, 2017. @@ -132987,10 +132987,10 @@ index 0000000000000000000000000000000000000000..82e122349055be817eb74ed5bbcd7560 +MODULE_AUTHOR("Sony Semiconductor Solutions Corporation"); +MODULE_LICENSE("GPL v2"); -From 7ed0fda6c92b4406df64fdefa09890accefcf851 Mon Sep 17 00:00:00 2001 +From 7b839bd6ad644c0da3bbc535ecaa544b6e89da09 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 09:16:19 +0100 -Subject: [PATCH 112/235] raspberrypi-firmware: Export the general transaction +Subject: [PATCH 112/257] raspberrypi-firmware: Export the general transaction function. The vc4-firmware-kms module is going to be doing the MBOX FB call. @@ -133022,10 +133022,10 @@ index 3f070bd38a91511c986e3fb114b15bd4ac32634c..f261b64d1657c02290904d841e1f087c /** * rpi_firmware_property_list - Submit firmware property list -From ffa77bdebed0ca9299542e0b8693d930cd7abce1 Mon Sep 17 00:00:00 2001 +From 80e7c492fe63cd0c9bd287211ba0a5aca64158d8 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 08:39:33 +0100 -Subject: [PATCH 113/235] drm/vc4: Add a mode for using the closed firmware for +Subject: [PATCH 113/257] drm/vc4: Add a mode for using the closed firmware for display. Signed-off-by: Eric Anholt @@ -133796,10 +133796,10 @@ index 0000000000000000000000000000000000000000..78c34305935501248b1ca548a1ee0175 + }, +}; -From 2635f0548f66f985f8b8ce7c85808657b18b8029 Mon Sep 17 00:00:00 2001 +From 9780ef2011ed56191063a394c6ca43808f547804 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:09:18 -0800 -Subject: [PATCH 114/235] drm/vc4: Name the primary and cursor planes in fkms. +Subject: [PATCH 114/257] drm/vc4: Name the primary and cursor planes in fkms. This makes debugging nicer, compared to trying to remember what the IDs are. @@ -133823,10 +133823,10 @@ index 78c34305935501248b1ca548a1ee01753b8fa099..d9a5551d01a2155e3df1bbbd78a1ee2b if (type == DRM_PLANE_TYPE_PRIMARY) { vc4_plane->fbinfo = -From d63c59c49642ccbfc272e968196b81f35773f483 Mon Sep 17 00:00:00 2001 +From 59265cb6ccd187988bc16b0dfc03376c1356cd39 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:10:09 -0800 -Subject: [PATCH 115/235] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of +Subject: [PATCH 115/257] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of fkms. Trying to debug weston on fkms involved figuring out what calls I was @@ -133896,10 +133896,10 @@ index d9a5551d01a2155e3df1bbbd78a1ee2b961be946..e372666af0119b1876bad5167e6d0ff8 RPI_FIRMWARE_SET_CURSOR_STATE, &packet_state, -From d1c2cb4af06efe896f4b55cf275d2c50a9590ede Mon Sep 17 00:00:00 2001 +From 1388ccb4b3f79e1c067c080c7ed0ab9db651cd73 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 2 Feb 2017 09:42:18 -0800 -Subject: [PATCH 116/235] drm/vc4: Fix sending of page flip completion events +Subject: [PATCH 116/257] drm/vc4: Fix sending of page flip completion events in FKMS mode. In the rewrite of vc4_crtc.c for fkms, I dropped the part of the @@ -133941,10 +133941,10 @@ index e372666af0119b1876bad5167e6d0ff8945d1b80..4d7b7f218cbbc9e7abcaa37743978060 static void vc4_crtc_handle_page_flip(struct vc4_crtc *vc4_crtc) -From e3653ee52ea14e2816d3a5338e00488c5c3f927f Mon Sep 17 00:00:00 2001 +From 3bb09888f3d37dd10c95feb520257558196a032e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 18 Apr 2017 21:43:46 +0100 -Subject: [PATCH 117/235] vc4_fkms: Apply firmware overscan offset to hardware +Subject: [PATCH 117/257] vc4_fkms: Apply firmware overscan offset to hardware cursor --- @@ -134001,10 +134001,10 @@ index 4d7b7f218cbbc9e7abcaa37743978060b73fbdd1..d170775ccc985637ff018804f510a500 return 0; -From 8c35a469e75c07167e58b261b6abc4e9a94092de Mon Sep 17 00:00:00 2001 +From 830e979ef1b05f158b42ef16073cc717893a1d19 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 7 May 2017 11:34:26 +0200 -Subject: [PATCH 118/235] ASoC: bcm2835: Add support for TDM modes +Subject: [PATCH 118/257] ASoC: bcm2835: Add support for TDM modes bcm2835 supports arbitrary positioning of channel data within a frame and thus is capable of supporting TDM modes. Since @@ -134406,10 +134406,10 @@ index 56df7d8a43d0aac055a91b0d24aca8e1b4e308e4..dcacf7f83c9371df539a788ea33fedcf dev->dev = &pdev->dev; dev_set_drvdata(&pdev->dev, dev); -From d9da0a4aa9063784e6efcd346895a756178b3531 Mon Sep 17 00:00:00 2001 +From 8c00f4e3ce28388bdd8150b469e932ce95c5bc94 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 7 May 2017 15:30:50 +0200 -Subject: [PATCH 119/235] ASoC: bcm2835: Support left/right justified and DSP +Subject: [PATCH 119/257] ASoC: bcm2835: Support left/right justified and DSP modes DSP modes and left/right justified modes can be supported @@ -134655,10 +134655,10 @@ index dcacf7f83c9371df539a788ea33fedcf97d64690..3a706fda4f39e42efbe12f19d87af9b1 } -From 2c2a7b1cd47d9aae9aedcb44c61a431ee0c582a4 Mon Sep 17 00:00:00 2001 +From f0b9a40ca6330b007ad92aba02b189c743dcb71b Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 7 May 2017 16:19:54 +0200 -Subject: [PATCH 120/235] ASoC: bcm2835: Support additional samplerates up to +Subject: [PATCH 120/257] ASoC: bcm2835: Support additional samplerates up to 384kHz Sample rates are only restricted by the capabilities of the @@ -134701,10 +134701,10 @@ index 3a706fda4f39e42efbe12f19d87af9b100a348a5..43f5715a0d5dda851731ecf7ff27e76c | SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S32_LE -From 410b0433ffc27b5bbb9c8b43b32c73d0abab90f0 Mon Sep 17 00:00:00 2001 +From 1ff21106cde916a037908b37874027d6efe1e2f3 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 7 May 2017 16:24:57 +0200 -Subject: [PATCH 121/235] ASoC: bcm2835: Enforce full symmetry +Subject: [PATCH 121/257] ASoC: bcm2835: Enforce full symmetry bcm2835's configuration registers can't be changed when a stream is running, which means asymmetric configurations aren't supported. @@ -134740,10 +134740,10 @@ index 43f5715a0d5dda851731ecf7ff27e76c48fb6e57..2e449d7173fcecbcd647f90a26bd58b6 static bool bcm2835_i2s_volatile_reg(struct device *dev, unsigned int reg) -From 6be3cd4baeb31f188e54514d8433772426b56d29 Mon Sep 17 00:00:00 2001 +From 56b7b49340e949d6ea892c311b8be53bb9234625 Mon Sep 17 00:00:00 2001 From: Andrei Gherzan Date: Mon, 5 Jun 2017 16:40:38 +0100 -Subject: [PATCH 122/235] dma-bcm2708: Fix module compilation of +Subject: [PATCH 122/257] dma-bcm2708: Fix module compilation of CONFIG_DMA_BCM2708 bcm2708-dmaengine.c defines functions like bcm_dma_start which are @@ -134786,10 +134786,10 @@ index c5bfff2765be4606077e6c8af73040ec13ee8974..6ca874d332a8bc666b1c9576ac51f479 #endif /* _PLAT_BCM2708_DMA_H */ -From 984a3108621a4882829cc3e26236a5c0a9c0f0f7 Mon Sep 17 00:00:00 2001 +From 81b9989a6c927bf1ce4c1792388d879088333214 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 25 Aug 2017 19:18:13 +0100 -Subject: [PATCH 123/235] cache: export clean and invalidate +Subject: [PATCH 123/257] cache: export clean and invalidate --- arch/arm/mm/cache-v6.S | 4 ++-- @@ -134841,10 +134841,10 @@ index de78109d002db1a5e7c94a6c1bc8bb94161d07b8..4c850aa3af2b2439fced4e130441329a sub r3, r2, #1 bic r0, r0, r3 -From f68029f4f2529a133329dde5a9975cccf1a73e23 Mon Sep 17 00:00:00 2001 +From 03f14306faa32c89fb0ab935fbd14286c0263a49 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 29 Sep 2017 10:32:19 +0100 -Subject: [PATCH 124/235] amba_pl011: Insert mb() for correct FIFO handling +Subject: [PATCH 124/257] amba_pl011: Insert mb() for correct FIFO handling The pl011 register accessor functions use the _relaxed versions of the standard readl() and writel() functions, meaning that there are no @@ -134871,10 +134871,10 @@ index bfbc845d7be9ef804468d0a82da18d9b67857216..424bdc500864a86e5d431763ba416b52 return true; -From d6758ce1626febcb7373597632cf431c0317f812 Mon Sep 17 00:00:00 2001 +From 07be06668fb71920de5e83e739e0ff36ead52025 Mon Sep 17 00:00:00 2001 From: Chung-Hsien Hsu Date: Sun, 14 May 2017 20:11:05 -0500 -Subject: [PATCH 125/235] brcmfmac: add CLM download support +Subject: [PATCH 125/257] brcmfmac: add CLM download support Future firmwares will be provided with minimal built-in CLM - the NULL region (#n/0) becomes the initial country. It cannot be changed @@ -135230,7 +135230,7 @@ index e6e9b00b79d71fddec6249be0109c088846bd35f..3c87157f5b8513d7bb00a4602c22859d diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c -index c1e86df297edf2fa7f641e36ccbfc7334f672e8b..103fd5368aa1ee94f24c16b813f92a0958198633 100644 +index 1a1563611733c429568aeb5a14379df522b88015..952d883477563c577e7e7e7d471be734ae14ad3d 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -3980,6 +3980,24 @@ brcmf_sdio_watchdog(unsigned long data) @@ -135302,10 +135302,10 @@ index 11ffaa01599eb4b343b7f675dc275fc8572d127e..b27170c12482de0ca4115b4bc9484c21 static int brcmf_usb_bus_setup(struct brcmf_usbdev_info *devinfo) -From 0b601d054f4f04c00d996bf6ef5fa0ef09ad1e0f Mon Sep 17 00:00:00 2001 +From cf7cc8d5832b6f3d48a6724131b83c02a098027e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 6 Oct 2017 13:23:32 +0100 -Subject: [PATCH 126/235] brcmfmac: request_firmware_direct is quieter +Subject: [PATCH 126/257] brcmfmac: request_firmware_direct is quieter Since we don't have any CLM-capable firmware yet, silence the warning of its absence by using request_firmware_direct, which should also @@ -135330,10 +135330,10 @@ index f0309e039592ba6e388084a13f052c03f99cf1ef..b5889360da96096775db6425337a7215 if (err == -ENOENT) return 0; -From 9042d1ce1d169e05d8df02dc1cfd7d54a1a350a1 Mon Sep 17 00:00:00 2001 +From ce5a0b8999542607267d771bebe39cd0d812a848 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 29 Sep 2017 10:32:19 +0100 -Subject: [PATCH 127/235] amba_pl011: Add cts-event-workaround DT property +Subject: [PATCH 127/257] amba_pl011: Add cts-event-workaround DT property The BCM2835 PL011 implementation seems to have a bug that can lead to a transmission lockup if CTS changes frequently. A workaround was added to @@ -135382,10 +135382,10 @@ index 424bdc500864a86e5d431763ba416b5298c777dc..b224306633f62c398ef904734a903d4e uap->vendor = vendor; uap->fifosize = vendor->get_fifosize(dev); -From e0e73e12f75d699381067545af884ddf67850bf3 Mon Sep 17 00:00:00 2001 +From cd8ea0491246ca24ae278042c2396153036ec510 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 11 Oct 2017 13:48:04 +0100 -Subject: [PATCH 128/235] amba-pl011: Report AUTOCTS capability to framework +Subject: [PATCH 128/257] amba-pl011: Report AUTOCTS capability to framework The PL011 has full hardware RTS/CTS support which is enabled by the driver when flow control is requested. However, it doesn't @@ -135428,10 +135428,10 @@ index b224306633f62c398ef904734a903d4e75df65c3..3b743cf8a94c279ff8d0b747f98062d0 if (uap->vendor->oversampling) { -From ced36379b1ed54c4ab24078d232bcb43f6b7b555 Mon Sep 17 00:00:00 2001 +From 0a44e497ef998a7333eb356e0fac1776a15d3bdc Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 25 Oct 2017 09:20:56 +0100 -Subject: [PATCH 129/235] scripts: Update mkknlimg, just in case +Subject: [PATCH 129/257] scripts: Update mkknlimg, just in case With the removal of the vc_cma driver, mkknlimg lost an indication that the user had built a downstream kernel. Update the script, adding a few @@ -135474,10 +135474,10 @@ index 84be2593ec1de8f97b0167ff06b3e05d231c4ba0..d72e15224232d5164374e93be48949bf my $res = try_extract($kernel_file, $tmpfile1); -From 2c5827433ab53932ebebf08147c0b6edb42062e6 Mon Sep 17 00:00:00 2001 +From b23697f8be91e6b03d9c0e5aa436c34d5fc77109 Mon Sep 17 00:00:00 2001 From: James Hughes Date: Tue, 14 Nov 2017 15:13:15 +0000 -Subject: [PATCH 130/235] AXI performance monitor driver (#2222) +Subject: [PATCH 130/257] AXI performance monitor driver (#2222) Uses the debugfs I/F to provide access to the AXI bus performance monitors. @@ -136163,10 +136163,10 @@ index 0000000000000000000000000000000000000000..bafe03b6c000060e78404d65a0aa96d8 +MODULE_LICENSE("GPL"); + -From 401d61b5ba71e11a9e5214fe9c0dca19997d5110 Mon Sep 17 00:00:00 2001 +From bdd8ce944ca3d5a71df5d8b3018008b819a9cfcb Mon Sep 17 00:00:00 2001 From: James Hughes Date: Fri, 21 Jul 2017 09:55:12 +0100 -Subject: [PATCH 131/235] Sets the BCDC priority to constant 0 +Subject: [PATCH 131/257] Sets the BCDC priority to constant 0 This is to workaround for a possible issue in the wireless chip firmware where some packets with @@ -136192,10 +136192,10 @@ index 9f2d0b0cf6e5c452ad85a3caef58cf16a8cdad46..b009f3083490c2bc2733424f08f81b9f h->data_offset = offset; BCDC_SET_IF_IDX(h, ifidx); -From e1205a509e2ed80b1c21792304e3fe943d2a77f2 Mon Sep 17 00:00:00 2001 +From 43e5f73eeddaf12441c461489616b441be2132d4 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 26 Apr 2016 13:46:13 -0700 -Subject: [PATCH 132/235] drm/panel: Add support for the Raspberry Pi 7" +Subject: [PATCH 132/257] drm/panel: Add support for the Raspberry Pi 7" Touchscreen. This driver communicates with the Atmel microcontroller for sequencing @@ -136776,10 +136776,10 @@ index 0000000000000000000000000000000000000000..1a536fe4d040f5fafe324baee110a622 +MODULE_DESCRIPTION("Raspberry Pi 7-inch touchscreen driver"); +MODULE_LICENSE("GPL v2"); -From 0c63b6f18ccc2e4c0add384a698ce061f23b90d0 Mon Sep 17 00:00:00 2001 +From 4068f130ea82a86fa34e1e3a180255fb023f65e2 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 12 Apr 2017 17:52:56 -0700 -Subject: [PATCH 133/235] panel-raspberrypi-touchscreen: Fix NULL deref if +Subject: [PATCH 133/257] panel-raspberrypi-touchscreen: Fix NULL deref if probe order goes wrong. If the i2c driver hadn't pobed before the panel driver probes, then @@ -136806,10 +136806,10 @@ index 1a536fe4d040f5fafe324baee110a6225dd0be08..5d6bfd81b07a11a0cb407f4301d22931 } -From 99c639cb85479bd88971d1369ce635578d8528fe Mon Sep 17 00:00:00 2001 +From 2b8130b5f78a4be1c2a757b8d3cebfd993cf1f98 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 6 Mar 2017 12:17:16 -0800 -Subject: [PATCH 134/235] panel-raspberrypi-touchscreen: Round up clk rate to +Subject: [PATCH 134/257] panel-raspberrypi-touchscreen: Round up clk rate to fix DSI panel. Commit 488f9bc8e3def93e0baef53cee2026c2cb0d8956 slightly increased the @@ -136844,10 +136844,10 @@ index 5d6bfd81b07a11a0cb407f4301d22931705fb8b1..b57b7ad9aa4c5048186e98553af59ec9 .hsync_start = HACT + HFP, .hsync_end = HACT + HFP + HSW, -From de9db182354e12d1fee266549fda0f1960175e63 Mon Sep 17 00:00:00 2001 +From 20b65b71c985108ba569e43005aac827e6391d23 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 2 Jun 2016 12:29:45 -0700 -Subject: [PATCH 135/235] BCM270X: Add the DSI panel to the defconfig. +Subject: [PATCH 135/257] BCM270X: Add the DSI panel to the defconfig. Signed-off-by: Eric Anholt --- @@ -136868,10 +136868,10 @@ index 9dcb58a519d041fadae99c81a7bda621b2a49f12..003209bf2362c2a136ab987b2f20065e CONFIG_DRM_VC4=m CONFIG_FB=y -From 3efc79a040a7002a14628115e3e2b124a5d63c59 Mon Sep 17 00:00:00 2001 +From 05cee5156e0fd71b82a55ce62d9741fe62b04101 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 6 Jul 2017 11:45:48 -0700 -Subject: [PATCH 136/235] drm/vc4: Add support for setting DPMS in firmwarekms. +Subject: [PATCH 136/257] drm/vc4: Add support for setting DPMS in firmwarekms. This ensures that the screen goes blank during DPMS (screensaver), including the cursor. Planes don't necessarily get disabled during @@ -136974,10 +136974,10 @@ index d170775ccc985637ff018804f510a5003933c9ec..766f700417f7194d6b01fa1bc18dad40 if (!vc4_encoder) return -ENOMEM; -From f99cf6e4cd78a06e499cbca21a22d151e94a7929 Mon Sep 17 00:00:00 2001 +From 7222c537034ca9a83f53f731137b9c042ac1b70f Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 14 Jul 2017 17:33:08 -0700 -Subject: [PATCH 137/235] drm/vc4: Fix pitch setup for T-format scanout. +Subject: [PATCH 137/257] drm/vc4: Fix pitch setup for T-format scanout. The documentation said to use src_w here, and I didn't consider that we actually needed to be using pitch somewhere in our setup. Fixes @@ -137025,10 +137025,10 @@ index 2968b3ebb895714cb8c8faeaf40dff1c996f2259..4ad0b9fcae99f74fb89d09dd52d9ffe5 DRM_DEBUG_KMS("Unsupported FB tiling flag 0x%16llx", (long long)fb->modifier); -From edcc5d9fc6c066b13433395d6e1209422ec5f6d5 Mon Sep 17 00:00:00 2001 +From 72e90fd5e7d67db6a73b10c79beb83f8524dc388 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 24 Aug 2017 16:16:16 +0100 -Subject: [PATCH 138/235] brcmfmac: Disable ARP offloading when promiscuous +Subject: [PATCH 138/257] brcmfmac: Disable ARP offloading when promiscuous This is a test patch for brcmfmac from Franky Lin at Broadcom to disable ARP offloading when in promiscuous mode, re-enabling the ability to @@ -137165,10 +137165,10 @@ index a4dd313140f37dc1fbb6955e1148f48bccf22f44..b9a96cbc70f0865ee8c9cff3c6164144 bool is_p2pdev, const char *name, u8 *mac_addr); void brcmf_remove_interface(struct brcmf_if *ifp, bool rtnl_locked); -From 1e00a74aeeeaf9085633e221802df44af00f0137 Mon Sep 17 00:00:00 2001 +From acceff6b12d547f503d081f12cf234ad97d3d3ba Mon Sep 17 00:00:00 2001 From: Kevin Cernekee Date: Sat, 16 Sep 2017 21:08:22 -0700 -Subject: [PATCH 139/235] brcmfmac: Avoid possible out-of-bounds read +Subject: [PATCH 139/257] brcmfmac: Avoid possible out-of-bounds read In brcmf_p2p_notify_rx_mgmt_p2p_probereq(), chanspec is assigned before the length of rxframe is validated. This could lead to uninitialized @@ -137206,10 +137206,10 @@ index 2ce675ab40ef867cf6a86ca5257a6db7ef76e80a..1c450c0727cb577f7dae25a1ce82b2db return 0; } -From 1259ca7c1dd003e81287b25fa61522edfd09a5ce Mon Sep 17 00:00:00 2001 +From 5c0a64168b2f6c9ac7b3c626b45ea5899120a338 Mon Sep 17 00:00:00 2001 From: Kevin Cernekee Date: Sat, 16 Sep 2017 21:08:23 -0700 -Subject: [PATCH 140/235] brcmfmac: Delete redundant length check +Subject: [PATCH 140/257] brcmfmac: Delete redundant length check brcmf_fweh_process_event() sets event->datalen to the endian-swapped value of event_packet->msg.datalen, which is the @@ -137240,10 +137240,10 @@ index ef72baf6dd969c2478a2138ea57b9f691fdf12d8..e7eaa57d11d98f61280bd99013e649aa /* special handling of interface event */ if (event->code == BRCMF_E_IF) { -From 0d57a63f8615fc3926927920d9a2e366537ea8a8 Mon Sep 17 00:00:00 2001 +From 2917f46983243dc86fd23deea224415e21746bc6 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Nov 2017 11:03:22 +0000 -Subject: [PATCH 141/235] mcp2515: Use DT-supplied interrupt flags +Subject: [PATCH 141/257] mcp2515: Use DT-supplied interrupt flags The MCP2515 datasheet clearly describes a level-triggered interrupt pin. Therefore the receiving interrupt controller must also be @@ -137279,10 +137279,10 @@ index f3f05fea8e1f8e0ad3a1ebd7461d2019835e1d47..6c2d3aba25918f5536b2d67292334e74 flags | IRQF_ONESHOT, DEVICE_NAME, priv); if (ret) { -From 99bbbb1f96689678e08752fd1fd3ce53bfdaba3a Mon Sep 17 00:00:00 2001 +From 966e34071d5ce51e535bd9e2d7e5737277640abf Mon Sep 17 00:00:00 2001 From: James Hughes Date: Thu, 16 Nov 2017 15:56:17 +0000 -Subject: [PATCH 142/235] Tidy up of the ft5406 driver to use DT (#2189) +Subject: [PATCH 142/257] Tidy up of the ft5406 driver to use DT (#2189) Driver was using a fixed resolution, this commit adds touchscreen size, and coordinate flip and swap @@ -137666,10 +137666,10 @@ index 9d7d05482355d168c5c0c42508cd978979ee5f14..40bbde9ce1bc4c51be50f47fc359c74f } -From 408924b52e288806153f0e6ac7b1f0fb10638b70 Mon Sep 17 00:00:00 2001 +From 60cbfecbd0189730ded3258f81172ccc5984bd9a Mon Sep 17 00:00:00 2001 From: notro Date: Thu, 10 Jul 2014 13:59:47 +0200 -Subject: [PATCH 143/235] pinctrl-bcm2835: Set base to 0 give expected gpio +Subject: [PATCH 143/257] pinctrl-bcm2835: Set base to 0 give expected gpio numbering Signed-off-by: Noralf Tronnes @@ -137691,10 +137691,10 @@ index ff782445dfb75d1a8af9eed775b8e8f7b275fee3..786efcddb5e56a06baf67cb91ddbbd8e .can_sleep = false, }; -From c259f43f6d72074607a5823a5eebf6d2078e6925 Mon Sep 17 00:00:00 2001 +From 851747b280bd46dd5a098a34ae16f31d81ca92ef Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 24 Nov 2017 13:49:26 +0000 -Subject: [PATCH 144/235] fiq_fsm: rewind DMA pointer for OUT transactions that +Subject: [PATCH 144/257] fiq_fsm: rewind DMA pointer for OUT transactions that fail (#2288) See: https://github.com/raspberrypi/linux/issues/2140 @@ -137738,10 +137738,10 @@ index e47d5b6de3ada73896ff9a81abd223d345e0de4f..ec804c7cd06d2db897ce6f72fce29733 if (st->nr_errors >= 3) { st->fsm = FIQ_NP_SPLIT_HS_ABORTED; -From 08c1b0d394fd1f0549aff27a66b6e5059c309beb Mon Sep 17 00:00:00 2001 +From 5365f85a685e8bd77ccebf092a5562bb0907f0b6 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 21 Jul 2017 11:30:18 +0100 -Subject: [PATCH 145/235] lan78xx: Read MAC address from DT if present +Subject: [PATCH 145/257] lan78xx: Read MAC address from DT if present There is a standard mechanism for locating and using a MAC address from the Device Tree. Use this facility in the lan78xx driver to support @@ -137788,10 +137788,10 @@ index a8dd1c7a08cbe8aafa51168288946b1a4641c33f..2727ce1f9b53c0397027ef7043ca3310 (addr[2] << 16) | (addr[3] << 24); addr_hi = addr[4] | (addr[5] << 8); -From fa4382d1a6a05010ef6ecd59482fcd06ac31648d Mon Sep 17 00:00:00 2001 +From 1225938effa28db4be597428beeec5c8ff0fdf2e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 28 Nov 2017 12:02:37 +0000 -Subject: [PATCH 146/235] lan78xx: Correctly indicate invalid OTP +Subject: [PATCH 146/257] lan78xx: Correctly indicate invalid OTP lan78xx_read_otp tries to return -EINVAL in the event of invalid OTP content, but the value gets overwritten before it is returned and the @@ -137818,10 +137818,10 @@ index 2727ce1f9b53c0397027ef7043ca331013553c00..ee95fc957e1f1339ce42db3089e03a90 return ret; -From d514d93ba175c7454ed9dc2b3ec6277e33f1c4d1 Mon Sep 17 00:00:00 2001 +From ed2cd62ab5fc2b7fccafa9f62f4bfcf82499ad92 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 17 Oct 2017 15:04:29 +0100 -Subject: [PATCH 147/235] lan78xx: Enable LEDs and auto-negotiation +Subject: [PATCH 147/257] lan78xx: Enable LEDs and auto-negotiation For applications of the LAN78xx that don't have valid programmed EEPROMs or OTPs, enabling both LEDs and auto-negotiation by default @@ -137869,10 +137869,10 @@ index ee95fc957e1f1339ce42db3089e03a908ec591d6..76674d8881b588f0a47c3a6f568825fd ret = lan78xx_read_reg(dev, MAC_TX, &buf); -From d57a9a7f199697d9237688afbb6ea809b07adba1 Mon Sep 17 00:00:00 2001 +From d9506553e097278fc8f33509ccf29e3e779f4022 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 27 Nov 2017 17:14:54 +0000 -Subject: [PATCH 148/235] cgroup: Disable cgroup "memory" by default +Subject: [PATCH 148/257] cgroup: Disable cgroup "memory" by default Some Raspberry Pis have limited RAM and most users won't use the cgroup memory support so it is disabled by default. Enable with: @@ -137942,10 +137942,10 @@ index 030e4286f14c715ecb87fc7d2cc93d451bc2e860..c9b7a0cd1e3026b5e8d91fa5d252ddd5 * css_tryget_online_from_dir - get corresponding css from a cgroup dentry * @dentry: directory dentry of interest -From 93cef618a9944e2af3c5785a037f5387983b6ae2 Mon Sep 17 00:00:00 2001 +From df75b1ac13d4f79db7f1104d00ca868f8d3eb099 Mon Sep 17 00:00:00 2001 From: Allen Wild Date: Tue, 26 Sep 2017 19:37:44 +0200 -Subject: [PATCH 149/235] thermal: enable broadcom menu for arm64 bcm2835 +Subject: [PATCH 149/257] thermal: enable broadcom menu for arm64 bcm2835 Moving the bcm2835 thermal driver to the broadcom directory prevented it from getting enabled for arm64 builds, since the broadcom directory is only @@ -137976,10 +137976,10 @@ index 07002df4f83acdde2efdf3f51299976ef25d2e1e..e3f0d1fd1720355bc601e766356ac528 endmenu -From c6e99e74d0c0589b3f483626cba59c662737ded2 Mon Sep 17 00:00:00 2001 +From 532ccd9a67fe3b97177cb3f2113ecc8954e5b228 Mon Sep 17 00:00:00 2001 From: Gottfried Haider Date: Tue, 26 Sep 2017 11:59:51 +0000 -Subject: [PATCH 150/235] pwm: Set class for exported channels in sysfs +Subject: [PATCH 150/257] pwm: Set class for exported channels in sysfs [ Upstream commit 7e5d1fd75c3dde9fc10c4472b9368089d1b81d00 ] @@ -138015,10 +138015,10 @@ index a813239300c3d46bba1320caac77ec7adc8363a8..83f2b0b15712bf5745a0dc3a231c5ed0 export->child.parent = parent; export->child.devt = MKDEV(0, 0); -From 5a8f3e9830b48145019d99d5152af69074326a76 Mon Sep 17 00:00:00 2001 +From d73572e63077095909ae5e18a8e67cc25511df64 Mon Sep 17 00:00:00 2001 From: Giedrius Trainavicius Date: Tue, 25 Oct 2016 01:47:20 +0300 -Subject: [PATCH 151/235] Updates for Pisound module code: +Subject: [PATCH 151/257] Updates for Pisound module code: * Merged 'Fix a warning in DEBUG builds' (1c8b82b). * Updating some strings and copyright information. @@ -138443,10 +138443,10 @@ index 06ff1e53dc9d860946965b6303577762f958fae2..09739d51b70b877e24e4f74f6aaadebd +MODULE_DESCRIPTION("ASoC Driver for Pisound, https://blokas.io/pisound"); MODULE_LICENSE("GPL v2"); -From 07e9077f2c7ad642de801a3f6c66232831ba6c7c Mon Sep 17 00:00:00 2001 +From cd716224fd737125ebd284a222927b6a8b1cda73 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Sat, 9 Dec 2017 21:45:12 +0000 -Subject: [PATCH 152/235] overlays: Add applepi-dac overlay +Subject: [PATCH 152/257] overlays: Add applepi-dac overlay See: https://github.com/raspberrypi/linux/issues/2302 @@ -138551,10 +138551,10 @@ index 0000000000000000000000000000000000000000..fc02b295470efce41d61be241ba55022 + dtc -@ -H epapr -O dtb -o ApplePi-DAC.dtbo -W no-unit_address_vs_reg ApplePi-DAC.dts +*/ -From b5d8365816eee9e4703d570137b2005fa1242c1d Mon Sep 17 00:00:00 2001 +From e31dfe33299c0126f193775ab338a6c3f8634894 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 12 Dec 2017 12:12:46 +0000 -Subject: [PATCH 153/235] staging: vchiq_arm: Make debugfs failure non-fatal +Subject: [PATCH 153/257] staging: vchiq_arm: Make debugfs failure non-fatal It can be useful to be able to open multiple vchiq instances in a single process. This currently fails due to a debugfs collision, @@ -138583,10 +138583,10 @@ index 314ffac50bb8303971ca71a5f702f07fb8ed6639..e4bad872b7e547de268648fae690524f sema_init(&instance->insert_event, 0); sema_init(&instance->remove_event, 0); -From 71cd4e64a31c5d03a4375a7f9640853ddd3201cf Mon Sep 17 00:00:00 2001 +From 10b4146be1b5d742a1daa55f526f91644e9de795 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Sat, 23 Dec 2017 22:10:37 +0000 -Subject: [PATCH 154/235] config: Add PINCTRL_MCP23S08 +Subject: [PATCH 154/257] config: Add PINCTRL_MCP23S08 As of Linux 4.12, the mcp23s08 driver moved from drivers/gpio to drivers/pinctrl. At the same time, the Kconfig symbols changed @@ -138627,10 +138627,10 @@ index c1da808d40bc8e867b41d3566bd60a758d052bdb..4cfd4e6a339009536d6ebaaff36e4007 CONFIG_GPIO_PCF857X=m CONFIG_GPIO_ARIZONA=m -From a2cff3036fdbf3c2f7297b61eb9494501ba60e57 Mon Sep 17 00:00:00 2001 +From 807f1652c7d967be5136b910cb2d5872b4b2575e Mon Sep 17 00:00:00 2001 From: Alex Riesen Date: Thu, 21 Dec 2017 09:29:39 +0100 -Subject: [PATCH 155/235] Add Raspberry Pi firmware driver to the dependencies +Subject: [PATCH 155/257] Add Raspberry Pi firmware driver to the dependencies of backlight driver Otherwise the backlight driver fails to build if the firmware @@ -138654,10 +138654,10 @@ index e345a32945b7ec0712cebd0ac8e62c9e8955e24f..9244f2f7b642c6fe5725f0b3b841cece If you have the Raspberry Pi DSI touchscreen display, say Y to enable the mailbox-controlled backlight driver. -From 6d7724ba3856e87d153276fad366764c499b47a2 Mon Sep 17 00:00:00 2001 +From 9c63d8ce16a19d40c1dcf8cb9669fd8e3af2a8b0 Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Sun, 24 Dec 2017 21:57:05 +0000 -Subject: [PATCH 156/235] overlays: Add media center HAT overlay (#2313) +Subject: [PATCH 156/257] overlays: Add media center HAT overlay (#2313) --- arch/arm/boot/dts/overlays/Makefile | 1 + @@ -138852,10 +138852,10 @@ index 0000000000000000000000000000000000000000..a42b8e2a846c6e614ca807f798bef238 + }; +}; -From d4cd4f2619f543cf1fe74500cb423d8eea2520da Mon Sep 17 00:00:00 2001 +From 8d8c22bee657ebf7fd77adcccea63088445b5ffe Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Thu, 28 Dec 2017 17:31:52 +0000 -Subject: [PATCH 157/235] add backlight control to rpi-display overlay +Subject: [PATCH 157/257] add backlight control to rpi-display overlay --- arch/arm/boot/dts/overlays/README | 1 + @@ -138899,10 +138899,10 @@ index d7e72eef594e08b309ffbaa04f43c68909c08f36..533b5c140b5447a0bcf426fee0a8b321 }; }; -From 6c51eddfc9e23de7e9c2b21e39c70bda76027686 Mon Sep 17 00:00:00 2001 +From 5677c0fd74b2ce56f618999dc5f2085ddb8c8fc1 Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Thu, 28 Dec 2017 17:34:54 +0000 -Subject: [PATCH 158/235] add backlight control to media-center overlay +Subject: [PATCH 158/257] add backlight control to media-center overlay --- arch/arm/boot/dts/overlays/README | 1 + @@ -138949,10 +138949,10 @@ index a42b8e2a846c6e614ca807f798bef238ad002535..ce4db35228e9f68e3f3f40f0f9c02f89 gpio_out_pin = <&lirc_pins>,"brcm,pins:0"; gpio_in_pin = <&lirc_pins>,"brcm,pins:4"; -From 438a18c35425d8a9e416a27e8b695e7671ec17ac Mon Sep 17 00:00:00 2001 +From fbe5f5bdbc0f67bd0f297076598cb1e1036330e1 Mon Sep 17 00:00:00 2001 From: penfold42 Date: Tue, 2 Jan 2018 00:15:19 +1100 -Subject: [PATCH 159/235] Add overlay for mcp3202 12 bit ADC +Subject: [PATCH 159/257] Add overlay for mcp3202 12 bit ADC --- arch/arm/boot/dts/overlays/Makefile | 1 + @@ -139205,60 +139205,10 @@ index 0000000000000000000000000000000000000000..9902c4614ea1f9e5725b3c4a2e62429a + }; +}; -From 6718d312300b020e6e122eb364c0696d8fb95e37 Mon Sep 17 00:00:00 2001 -From: Stefan Schake -Date: Sat, 2 Dec 2017 18:40:39 +0100 -Subject: [PATCH 160/235] drm/vc4: Release fence after signalling - -[ Upstream commit babc8110057cb9ca542c3c1666cbda4e8ccf9250 ] - -We were never releasing the initial fence reference that is obtained -through dma_fence_init. - -Link: https://github.com/anholt/linux/issues/122 -Fixes: cdec4d361323 ("drm/vc4: Expose dma-buf fences for V3D rendering.") -Signed-off-by: Stefan Schake -Signed-off-by: Eric Anholt -Reviewed-by: Eric Anholt -Link: https://patchwork.freedesktop.org/patch/msgid/1512236444-301-1-git-send-email-stschake@gmail.com ---- - drivers/gpu/drm/vc4/vc4_gem.c | 4 +++- - drivers/gpu/drm/vc4/vc4_irq.c | 1 + - 2 files changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/vc4/vc4_gem.c b/drivers/gpu/drm/vc4/vc4_gem.c -index c50debb1986f061759cf02fa92f4e2e480c969d4..d31b3d0c995543bb965464eb148b0036194683b4 100644 ---- a/drivers/gpu/drm/vc4/vc4_gem.c -+++ b/drivers/gpu/drm/vc4/vc4_gem.c -@@ -829,8 +829,10 @@ vc4_complete_exec(struct drm_device *dev, struct vc4_exec_info *exec) - /* If we got force-completed because of GPU reset rather than - * through our IRQ handler, signal the fence now. - */ -- if (exec->fence) -+ if (exec->fence) { - dma_fence_signal(exec->fence); -+ dma_fence_put(exec->fence); -+ } - - if (exec->bo) { - for (i = 0; i < exec->bo_count; i++) -diff --git a/drivers/gpu/drm/vc4/vc4_irq.c b/drivers/gpu/drm/vc4/vc4_irq.c -index 521addec831e9911c58c2341256d7d5bb8b07338..3dd62d75f5319dbffcd9d27ea6f60927d193eb92 100644 ---- a/drivers/gpu/drm/vc4/vc4_irq.c -+++ b/drivers/gpu/drm/vc4/vc4_irq.c -@@ -139,6 +139,7 @@ vc4_irq_finish_render_job(struct drm_device *dev) - list_move_tail(&exec->head, &vc4->job_done_list); - if (exec->fence) { - dma_fence_signal_locked(exec->fence); -+ dma_fence_put(exec->fence); - exec->fence = NULL; - } - vc4_submit_next_render_job(dev); - -From d75c1e9b2c707831efb8737b466b2906511f98eb Mon Sep 17 00:00:00 2001 +From 175159ea467edd15401ac6621827ef0fa612b8f8 Mon Sep 17 00:00:00 2001 From: P33M Date: Tue, 9 Jan 2018 15:16:35 +0000 -Subject: [PATCH 161/235] dwc_otg: don't unconditionally force host mode in +Subject: [PATCH 160/257] dwc_otg: don't unconditionally force host mode in dwc_otg_cil_init() Add the ability to disable force_host_mode for those that want to use @@ -139319,10 +139269,10 @@ index af123d01f3ef9f99450c78efdf766ca35e15cbc9..e945900c503cb383d754381b055955b1 * * The following parameters may be specified when starting the module. -From b6efed684e79c7b78bfc684e594e80b156499727 Mon Sep 17 00:00:00 2001 +From 800fae281ffa8df152485cf5498a72932e1c1bce Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Thu, 4 Jan 2018 23:58:06 +0900 -Subject: [PATCH 162/235] vcsm: Define cache operation constants in user header +Subject: [PATCH 161/257] vcsm: Define cache operation constants in user header Without this change, users have to use raw values (1, 2, 3) to specify cache operation. @@ -139366,10 +139316,10 @@ index b75729d762f25aace133f7a008633b4094ae2de2..ddbeebc71ada82e88a1668fbdfd9821a struct vmcs_sm_ioctl_alloc { /* user -> kernel */ -From 5677e44b0ee8fa96cd5aa63aa2b5425225f3bd46 Mon Sep 17 00:00:00 2001 +From 87e58610b7cfdc65fcd0a302e79f788651e578c7 Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Fri, 5 Jan 2018 00:01:30 +0900 -Subject: [PATCH 163/235] vcsm: Support for finding user/vc handle in memory +Subject: [PATCH 162/257] vcsm: Support for finding user/vc handle in memory pool vmcs_sm_{usr,vc}_handle_from_pid_and_address() were failing to find @@ -139411,10 +139361,10 @@ index 53843054d7617716761b74d8a3d91551b91ffb75..abd770566ed30102b95a01cec6a3825b pr_debug("[%s]: global map %p (pid %u, addr %lx) -> usr-hdl %x (vc-hdl %x)\n", -From 880bf28594aab782d72a3656f799e33634223812 Mon Sep 17 00:00:00 2001 +From cf830840b50975e8fd4dcceb2b5bb2eb8e7a1731 Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Fri, 5 Jan 2018 00:44:00 +0900 -Subject: [PATCH 164/235] vcsm: Unify cache manipulating functions +Subject: [PATCH 163/257] vcsm: Unify cache manipulating functions Signed-off-by: Sugizaki Yukimasa --- @@ -139800,10 +139750,10 @@ index abd770566ed30102b95a01cec6a3825b23afcd9d..b6cdc1934ad2092892898559f6f0d481 kfree(block); } -From 96b4538bffd07e727a97e1a9bb8b296e0210df45 Mon Sep 17 00:00:00 2001 +From 013088a41c610bd2b1fc79975ba15af5dd96b602 Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Mon, 8 Jan 2018 21:07:17 +0900 -Subject: [PATCH 165/235] vcsm: Fix obscure conditions +Subject: [PATCH 164/257] vcsm: Fix obscure conditions Signed-off-by: Sugizaki Yukimasa --- @@ -139835,10 +139785,10 @@ index b6cdc1934ad2092892898559f6f0d481a7744fa9..95963ffba51afdbdfec26a8c75eec0f5 return -EINVAL; } -From d9f134b0b84db7a04e8440b4cef7b0f242a39e85 Mon Sep 17 00:00:00 2001 +From 2f9183e443a464cee4292d551f0c833874e3d336 Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Mon, 8 Jan 2018 21:11:23 +0900 -Subject: [PATCH 166/235] vcsm: Fix memory leaking on clean_invalid2 ioctl +Subject: [PATCH 165/257] vcsm: Fix memory leaking on clean_invalid2 ioctl handler Signed-off-by: Sugizaki Yukimasa @@ -139860,10 +139810,10 @@ index 95963ffba51afdbdfec26a8c75eec0f5e0c2f4e1..380437f41cc64902c9576e53d0beaf76 kfree(block); } -From 4004413084d7a9a01d471c31f6f18a4b707383cf Mon Sep 17 00:00:00 2001 +From d5ea0998679e4d74443f33e7c85bb23b9c9a2f7c Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Mon, 8 Jan 2018 21:15:13 +0900 -Subject: [PATCH 167/235] vcsm: Describe the use of cache operation constants +Subject: [PATCH 166/257] vcsm: Describe the use of cache operation constants Signed-off-by: Sugizaki Yukimasa --- @@ -139902,10 +139852,10 @@ index ddbeebc71ada82e88a1668fbdfd9821a39d7cd22..e881fa8ee8e1474cdaa0759b742a5f67 /* user -> kernel */ struct { -From 1cf011229678539f6284c712cf8887deaf1e9774 Mon Sep 17 00:00:00 2001 +From 8ab4e2079b7e297044a8bbeb86dcb8bbb8f7901e Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Tue, 9 Jan 2018 12:33:24 +0900 -Subject: [PATCH 168/235] vcsm: Fix obscure conditions again +Subject: [PATCH 167/257] vcsm: Fix obscure conditions again Signed-off-by: Sugizaki Yukimasa --- @@ -139928,10 +139878,10 @@ index 380437f41cc64902c9576e53d0beaf76ccdc1551..0d14c511da2ab8f542d51ad87746be85 pr_debug("[%s]: global map %p (pid %u, addr %lx) -> usr-hdl %x (vc-hdl %x)\n", -From 28e29ce5f9ba23f0b2c273d383dbcfc5adde36e5 Mon Sep 17 00:00:00 2001 +From 0b93527b3b4ca4b9efd032a7ffe81a370154b230 Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Wed, 10 Jan 2018 04:32:20 +0900 -Subject: [PATCH 169/235] vcsm: Add no-op cache operation constant +Subject: [PATCH 168/257] vcsm: Add no-op cache operation constant Signed-off-by: Sugizaki Yukimasa --- @@ -139994,10 +139944,10 @@ index e881fa8ee8e1474cdaa0759b742a5f67c122c9eb..a4492b921b48e2c7fdd2745f2d2bad48 #define VCSM_CACHE_OP_CLEAN 0x02 #define VCSM_CACHE_OP_FLUSH 0x03 -From ca692eed586c251d4d4ce1ebf256d4e877a0069e Mon Sep 17 00:00:00 2001 +From 0483f02cf3727812714d65382d124f5aa62fba76 Mon Sep 17 00:00:00 2001 From: Sugizaki Yukimasa Date: Wed, 10 Jan 2018 06:25:51 +0900 -Subject: [PATCH 170/235] vcsm: Revert to do page-table-walk-based cache +Subject: [PATCH 169/257] vcsm: Revert to do page-table-walk-based cache manipulating on some ioctl calls On FLUSH, INVALID, CLEAN_INVALID ioctl calls, cache operations based on @@ -140232,10 +140182,10 @@ index 122ea149790b549aa7550ddb9cff64dc2195fc61..1bc37ee882255c0d05beac58bb3b9e31 break; } -From ef776ad5d98ab13fbbab6c50fb012b0375b93925 Mon Sep 17 00:00:00 2001 +From a491894f2e081ff6bfaabd4fb2d8d597b2d0de7b Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Thu, 4 Jan 2018 15:02:16 +0000 -Subject: [PATCH 171/235] add gpio-key overlay (#2329) +Subject: [PATCH 170/257] add gpio-key overlay (#2329) An overlay that allows a Linux key to be bound to a GPIO. --- @@ -140344,10 +140294,10 @@ index 0000000000000000000000000000000000000000..333d016d6f02981f69acedbf683171b4 + +}; -From 1faab4f97469d17da63b2810a40436710eca1933 Mon Sep 17 00:00:00 2001 +From 87e4e93e35815fefaf16dcc3c5165675ee35f75a Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Fri, 5 Jan 2018 15:08:37 +0000 -Subject: [PATCH 172/235] add additional overrides to rotary-encoder overlay +Subject: [PATCH 171/257] add additional overrides to rotary-encoder overlay (#2334) --- @@ -140424,10 +140374,10 @@ index c0c6bccff60cc15d9a9bf59d2c7cba41eb9c1cdc..f88f8a39d9a2f2afbf80edf2d9b32841 }; }; -From 5710f90cde747c0d09116a1e546d3fd13473adc1 Mon Sep 17 00:00:00 2001 +From 85eefd753138511039f13a029e8166a9c76e3657 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 12 Jan 2018 09:15:01 +0000 -Subject: [PATCH 173/235] overlays: Add uart0 overlay to change pin usage +Subject: [PATCH 172/257] overlays: Add uart0 overlay to change pin usage Signed-off-by: Phil Elwell --- @@ -140513,10 +140463,10 @@ index 0000000000000000000000000000000000000000..20b2a609c511b017d1231e08c901d165 + }; +}; -From 5f8280088226fbe9d936185d4eef0cb91a0bcce3 Mon Sep 17 00:00:00 2001 +From 448237329af68398a5fdffb055d93d5c45c7b35e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 16 Jan 2018 12:59:17 +0000 -Subject: [PATCH 174/235] overlays: Fix resetgpio and ledgpio for hy28a/b +Subject: [PATCH 173/257] overlays: Fix resetgpio and ledgpio for hy28a/b Offsets for overlay parameters are specified in bytes, not in access units. @@ -140560,10 +140510,10 @@ index 8018aebde8e557f45ffd63eb86f6c7a1048fe3cb..70c1118064b64be1811ed2f1bb04efd6 }; }; -From 5636ddc18dd1d24b7ae9e4147ee384f0bd5cc70d Mon Sep 17 00:00:00 2001 +From 16ffc7dfef5b6a3a75cea7e23ccfe7c99f819ca9 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Thu, 18 Jan 2018 12:36:44 +0100 -Subject: [PATCH 175/235] ASoC: bcm2835: fix hw_params error when device is in +Subject: [PATCH 174/257] ASoC: bcm2835: fix hw_params error when device is in prepared state (#2345) commit 8d5737a5f53902a916ee1e1cb248c9b8b883b2ea upstream. @@ -140632,10 +140582,10 @@ index 2e449d7173fcecbcd647f90a26bd58b6c421bcde..d5f73a8ab8932768c4df1470e94e78bf * Clear both FIFOs if the one that should be started * is not empty at the moment. This should only happen -From f91d7b7a11efb0b10a2ae2fece9bbc66ada2d4cf Mon Sep 17 00:00:00 2001 +From 3c7cf1117a759d6bbf1486ed138f0f977b75ca1f Mon Sep 17 00:00:00 2001 From: Ahmet Inan Date: Sat, 14 Oct 2017 10:10:53 -0700 -Subject: [PATCH 176/235] Input: add I2C attached EETI EXC3000 multi touch +Subject: [PATCH 175/257] Input: add I2C attached EETI EXC3000 multi touch driver commit 7e577a17f2eefeef32f1106ebf91e7cd143ba654 upstream. @@ -140963,10 +140913,10 @@ index 0000000000000000000000000000000000000000..bed0db6999050c3ad5adf9c5d02784a0 +MODULE_DESCRIPTION("I2C connected EETI EXC3000 multiple touch controller driver"); +MODULE_LICENSE("GPL v2"); -From 7ef1515576305a59eefc871c91282b7a4754f970 Mon Sep 17 00:00:00 2001 +From cca4b07ee3318315f5498d26467b6231bf5264ef Mon Sep 17 00:00:00 2001 From: Ahmet Inan Date: Fri, 1 Sep 2017 15:14:23 +0200 -Subject: [PATCH 177/235] config: Add EETI EXC3000 touch controller module +Subject: [PATCH 176/257] config: Add EETI EXC3000 touch controller module Signed-off-by: Ahmet Inan --- @@ -140999,10 +140949,10 @@ index 4cfd4e6a339009536d6ebaaff36e4007573cfe63..f2563f6824b6b16d9f44bc0ee1da818b CONFIG_TOUCHSCREEN_EDT_FT5X06=m CONFIG_TOUCHSCREEN_RPI_FT5406=m -From e8501f025666d1c4406495fb0e43805f1ee76bcb Mon Sep 17 00:00:00 2001 +From f97ebe197301f7ed3afae69792e67e9350fbac1a Mon Sep 17 00:00:00 2001 From: Ahmet Inan Date: Fri, 1 Sep 2017 15:18:01 +0200 -Subject: [PATCH 178/235] overlays: Add EETI EXC3000 overlay +Subject: [PATCH 177/257] overlays: Add EETI EXC3000 overlay Add support for I2C connected EETI EXC3000 multiple touch controller using GPIO 4 (pin 7 on GPIO header) for interrupt. @@ -141105,10 +141055,10 @@ index 0000000000000000000000000000000000000000..c5694033d03f31391b508b89845b029c + }; +}; -From 1a93c2e1b2d4cea9da436bd5b7ac4aeff25153df Mon Sep 17 00:00:00 2001 +From f209157acbc61d7b37cca741e8c00af57467c9a6 Mon Sep 17 00:00:00 2001 From: Yevhen Kyriukha Date: Sun, 14 Jan 2018 13:36:24 +0200 -Subject: [PATCH 179/235] Added support for mbed AudioCODEC (TLV320AIC23B) +Subject: [PATCH 178/257] Added support for mbed AudioCODEC (TLV320AIC23B) Signed-off-by: Yevhen Kyriukha --- @@ -141218,10 +141168,10 @@ index 0000000000000000000000000000000000000000..313563d6ed47fb1e0db8f8ffa4505b61 + }; +}; -From f16c639e175db4b4d6741ee364b4b39eb4fa863e Mon Sep 17 00:00:00 2001 +From 0183aa3a8ea800bb4b91850b4b75fca4783cfc25 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 22 Jan 2018 12:17:27 +0000 -Subject: [PATCH 180/235] mmc: bcm2835-sdhost: Support underclocking +Subject: [PATCH 179/257] mmc: bcm2835-sdhost: Support underclocking Support underclocking of the SD bus in two ways: 1. using the max-frequency DT property (which currently has no DT @@ -141264,10 +141214,10 @@ index 9c6f199a7830959f31012d86bc1f8b1a9922185f..6c0dafe6c64b03f91cfb0360861c29dd mmc->max_busy_timeout = (~(unsigned int)0)/(mmc->f_max/1000); -From 1b2c09c2df8c7e014130ac89bfef74bd3343aaa1 Mon Sep 17 00:00:00 2001 +From 72ea2cb2936f8214ef68fc0f0af81bb242f99b45 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 22 Jan 2018 12:22:01 +0000 -Subject: [PATCH 181/235] mmc: bcm2835-mmc: Support underclocking +Subject: [PATCH 180/257] mmc: bcm2835-mmc: Support underclocking Support underclocking of the SD bus using the max-frequency DT property (which currently has no DT parameter). The sd_overclock parameter @@ -141298,10 +141248,10 @@ index c4a5e992c6fb4a40b933239350ed4bfc8fb40155..b7f5fd96ecb6c59395022e868726f890 /* SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK */ -From f6f8fa93b0adf8e829765960790e9cf16f3cd389 Mon Sep 17 00:00:00 2001 +From 32d1b24caa0b5fb6cafaf354ed43ebb591124fea Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 22 Jan 2018 17:26:38 +0000 -Subject: [PATCH 182/235] serial: 8250: bcm2835aux - suppress EPROBE_DEFER +Subject: [PATCH 181/257] serial: 8250: bcm2835aux - suppress EPROBE_DEFER Signed-off-by: Phil Elwell --- @@ -141323,10 +141273,10 @@ index a23c7da42ea81342efc26fb35a92a69d535b7cd0..4f8b8c97186879949a313ce185fcd6e0 } -From aaf1b84972ebd90639f6a1561ded3741d1347702 Mon Sep 17 00:00:00 2001 +From 3cd4373da91704ae4e9f0689256fe2a7bbd1248f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 23 Jan 2018 16:52:45 +0000 -Subject: [PATCH 183/235] irqchip: irq-bcm2836: Remove regmap and syscon use +Subject: [PATCH 182/257] irqchip: irq-bcm2836: Remove regmap and syscon use The syscon node defines a register range that duplicates that used by the local_intc node on bcm2836/7. Since irq-bcm2835 and irq-bcm2836 are @@ -141474,10 +141424,10 @@ index 05b17ca993f405c4c8e61a782ec58149038069c2..963415c919146e66ef36f4da8f157cab intc.domain = irq_domain_add_linear(node, LAST_IRQ + 1, -From 851663b0bdc04c1f870991b77811d8d720d9eac3 Mon Sep 17 00:00:00 2001 +From 40a7dfea47fe3c68875fdf63a7034d9e976bfdfa Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Jan 2018 15:19:39 +0000 -Subject: [PATCH 184/235] lan78xx: Avoid spurious kevent 4 "error" +Subject: [PATCH 183/257] lan78xx: Avoid spurious kevent 4 "error" lan78xx_defer_event generates an error message whenever the work item is already scheduled. lan78xx_open defers three events - @@ -141507,10 +141457,10 @@ index 76674d8881b588f0a47c3a6f568825fdf034aea5..da0b0bcb7d39d6657ef4c1353e5dcf27 static int lan78xx_open(struct net_device *net) -From 4c260953162c43f33493187b8559d7360bfe309f Mon Sep 17 00:00:00 2001 +From ac61788f1f93bb8f87b4cb13d0a3215a4da3a424 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Jan 2018 20:00:48 +0000 -Subject: [PATCH 185/235] overlays: Allow multiple pps-gpio instantiations +Subject: [PATCH 184/257] overlays: Allow multiple pps-gpio instantiations See: https://github.com/raspberrypi/linux/issues/2352 @@ -141553,10 +141503,10 @@ index 50143a4bb215807ba0a0d0562f5827fa29a04de4..9ee4bdfa6167355e82d7f8229613f294 }; }; -From 44ed78ef80719085bff8569759a90626101873a7 Mon Sep 17 00:00:00 2001 +From a46af15bd31381ff8f220cdb539d6a4d73c35ea1 Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Fri, 1 Sep 2017 16:49:54 +0200 -Subject: [PATCH 186/235] drm/vc4: Use correct path to trace include +Subject: [PATCH 185/257] drm/vc4: Use correct path to trace include MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -141601,10 +141551,10 @@ index ad7b1ea720c288eb587d16e5f8e10eace5de93f3..deafb32923e147f4bb9ad93ce441a6ae +#define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/vc4 #include -From 479cebff8195822e66f7e64c7179960af290422b Mon Sep 17 00:00:00 2001 +From 17b5fd726724b49a4dd43b687a2d531b47a1ebcd Mon Sep 17 00:00:00 2001 From: Colin Ian King Date: Fri, 8 Sep 2017 15:05:04 +0100 -Subject: [PATCH 187/235] drm/vc4: clean up error handling on devm_kzalloc +Subject: [PATCH 186/257] drm/vc4: clean up error handling on devm_kzalloc failure The current error handling when devm_kzalloc fails performs a @@ -141661,10 +141611,10 @@ index 8f71157a2b063b07a3d3c195ae5049a0ddcac03e..0b2088264039131f05c2f09bc9ba84d2 static void vc4_hdmi_encoder_destroy(struct drm_encoder *encoder) -From c7dc0942f1c1d8a7e3ee2fa0a515e87c6d4f5ea8 Mon Sep 17 00:00:00 2001 +From de84e918443eedce1fcf9a312a760094366e02e1 Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Thu, 19 Oct 2017 14:57:48 +0200 -Subject: [PATCH 188/235] drm/vc4: Add the DRM_IOCTL_VC4_GEM_MADVISE ioctl +Subject: [PATCH 187/257] drm/vc4: Add the DRM_IOCTL_VC4_GEM_MADVISE ioctl This ioctl will allow us to purge inactive userspace buffers when the system is running out of contiguous memory. @@ -142544,10 +142494,10 @@ index afae870049636e9c5db9a10a03d40dc3beb4c6ee..52263b575bdc4e5d9a6c6e628b12918e } #endif -From a73e785de423f6c3bd0b526794c5522c7489ed84 Mon Sep 17 00:00:00 2001 +From 4a43c5072f02784f1c63df4b8e2f5cba16cdd924 Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Wed, 22 Nov 2017 21:39:28 +0100 -Subject: [PATCH 189/235] drm/vc4: Fix false positive WARN() backtrace on +Subject: [PATCH 188/257] drm/vc4: Fix false positive WARN() backtrace on refcount_inc() usage With CONFIG_REFCOUNT_FULL enabled, refcount_inc() complains when it's @@ -142588,10 +142538,10 @@ index 01a53ba304f89769ccedf66f2cba361f809b54c8..55f03ad827ed82d967bcdb3c8f060226 break; case VC4_MADV_DONTNEED: -From 0c241328e80edce5dd1be1e94d720585288fd54b Mon Sep 17 00:00:00 2001 +From 8d5b5bb519bff0d51d76a7d0d61368a44daf8158 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 13 Oct 2017 17:12:55 -0700 -Subject: [PATCH 190/235] drm/vc4: Fix sleeps during the IRQ handler for DSI +Subject: [PATCH 189/257] drm/vc4: Fix sleeps during the IRQ handler for DSI transactions. VC4's DSI1 has a bug where the AXI connection is broken for 32-bit @@ -142664,10 +142614,10 @@ index 04796d7d0fdbb441c09ecbd9b4fbce41a7831534..9a1a559ba287c460b274c6a279883e69 if (ret != -EPROBE_DEFER) dev_err(dev, "Failed to get interrupt: %d\n", ret); -From 11bd97499205dc296e4e6c5b10c715a45129ed73 Mon Sep 17 00:00:00 2001 +From 6581a33fe08d2b339d508b6548e1fe682afbf687 Mon Sep 17 00:00:00 2001 From: Kees Cook Date: Tue, 24 Oct 2017 08:16:48 -0700 -Subject: [PATCH 191/235] drm/vc4: Convert timers to use timer_setup() +Subject: [PATCH 190/257] drm/vc4: Convert timers to use timer_setup() In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() @@ -142744,10 +142694,10 @@ index a3008cc312e43e6c41218bca7debde390d95c822..152ce55160fef90b24d737f1457f5e7d INIT_WORK(&vc4->job_done_work, vc4_job_done_work); -From c360f0ae1a4f391201c65d3488e095768dd9a8f7 Mon Sep 17 00:00:00 2001 +From 29a98d2329c90d313a367b06939a991a496aebea Mon Sep 17 00:00:00 2001 From: Boris BREZILLON Date: Wed, 1 Nov 2017 10:57:31 +0100 -Subject: [PATCH 192/235] drm/vc4: Fix wrong printk format in +Subject: [PATCH 191/257] drm/vc4: Fix wrong printk format in vc4_bo_stats_debugfs() vc4->purgeable.size and vc4->purgeable.purged_size are size_t fields @@ -142782,10 +142732,10 @@ index 2b587e5b4628fc62cbadd7e99466032438d7e5c3..2decc8e2c79f58aad6ea7626a32a0f26 vc4->purgeable.purged_num); mutex_unlock(&vc4->purgeable.lock); -From c098e2498a0b3614fd6c9a7d89ab2cedba82ed6e Mon Sep 17 00:00:00 2001 +From 5c408210f9d29e569ea53647ada1d14fd8cdbb79 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 20 Sep 2017 15:59:34 -0700 -Subject: [PATCH 193/235] drm/vc4: Reject HDMI modes with too high of clocks. +Subject: [PATCH 192/257] drm/vc4: Reject HDMI modes with too high of clocks. Peter Robinson reported issues on Fedora with 4k monitors not having their modes filtered down to 1920x1080 on Raspberry Pi. @@ -142829,10 +142779,10 @@ index 0b2088264039131f05c2f09bc9ba84d2d3793e39..8ab20c1e9e69e90b90c7f74640033f93 .enable = vc4_hdmi_encoder_enable, }; -From 8bf534b1fefbc2eb542ac00329de241ca7d0729c Mon Sep 17 00:00:00 2001 +From 3d1ed488ddb0c9dd4b8c95df9b11db2e3126d073 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Thu, 16 Nov 2017 14:22:29 +0000 -Subject: [PATCH 194/235] drm/vc4: Add support for DRM_FORMAT_RGB888 and +Subject: [PATCH 193/257] drm/vc4: Add support for DRM_FORMAT_RGB888 and DRM_FORMAT_BGR888 Filling out the list of supported formats based on those the @@ -142867,10 +142817,10 @@ index e2b3cd6d885b080a3c3077cc160a549bec9b0330..497cb7d50946c6aa8e4d676982902694 .drm = DRM_FORMAT_YUV422, .hvs = HVS_PIXEL_FORMAT_YCBCR_YUV422_3PLANE, -From 6a513658692da2d4397795f5345269ae61f6801d Mon Sep 17 00:00:00 2001 +From 4fee6d82f5013adf8adccc4ac1051c963defe08d Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Thu, 16 Nov 2017 14:22:30 +0000 -Subject: [PATCH 195/235] drm/vc4: Use .pixel_order instead of custom +Subject: [PATCH 194/257] drm/vc4: Use .pixel_order instead of custom .flip_cbcr The hardware has enums for altering the Cr and Cb order, @@ -142956,10 +142906,10 @@ index 497cb7d50946c6aa8e4d676982902694ff46e113..5c67090e93f5e574de197735f01c6c4d /* Pointer Context Word 0/1/2: Written by the HVS */ for (i = 0; i < num_planes; i++) -From 592fb5991341ab9dea3011432460e26b69bb5977 Mon Sep 17 00:00:00 2001 +From ee4270585954c661f82a082a115a3ab6d488b32f Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Thu, 16 Nov 2017 14:22:31 +0000 -Subject: [PATCH 196/235] drm/vc4: Add support for NV21 and NV61. +Subject: [PATCH 195/257] drm/vc4: Add support for NV21 and NV61. NV12 (YUV420 2 plane) and NV16 (YUV422 2 plane) were supported, but NV21 and NV61 (same but with Cb and Cr @@ -143001,10 +142951,10 @@ index 5c67090e93f5e574de197735f01c6c4dbbdd0180..44a956cb87c2184e8631868307538b15 static const struct hvs_format *vc4_get_hvs_format(u32 drm_format) -From 0c8d3014651f1f3c8185caca384231787930c910 Mon Sep 17 00:00:00 2001 +From 75dd573f7e02595ec470996aefc6d94d8766649c Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 23 Jan 2017 11:41:54 -0800 -Subject: [PATCH 197/235] BCM270X: Disable VEC unless vc4-kms-v3d is present. +Subject: [PATCH 196/257] BCM270X: Disable VEC unless vc4-kms-v3d is present. Signed-off-by: Eric Anholt (cherry picked from commit dabd52db47d2e799323639734787e3a338c2b2a5) @@ -143044,10 +142994,10 @@ index 7d0d659b4886147e7e3b7eb3f60d546592cf2853..8baa7f77cd94ca76e9a0134601540232 cma-256 = <0>,"+0-1-2-3-4"; cma-192 = <0>,"-0+1-2-3-4"; -From 1ce078820cc788e612611c16c23b5d92dfcabfe2 Mon Sep 17 00:00:00 2001 +From 059c57c9743b13e32976a4c332ffad6474df4442 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 21 Dec 2017 13:32:09 -0800 -Subject: [PATCH 198/235] drm/vc4: Flush the caches before the render jobs, as +Subject: [PATCH 197/257] drm/vc4: Flush the caches before the render jobs, as well. If the frame samples from a render target that was just written, its @@ -143104,10 +143054,10 @@ index 152ce55160fef90b24d737f1457f5e7dcc0bd81d..c94cce96544c8b0196f16b2e9151e154 } -From 816547b1b3a05c9b2b1b7b05abb755ec2743bfd7 Mon Sep 17 00:00:00 2001 +From f42c5ab849a76c77332183255cb1848060f054a5 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 7 Jun 2017 14:39:49 -0700 -Subject: [PATCH 199/235] drm/vc4: Add FB modifier support to firmwarekms. +Subject: [PATCH 198/257] drm/vc4: Add FB modifier support to firmwarekms. Signed-off-by: Eric Anholt (cherry picked from commit 11752d73488e08aaeb65fe8289a9c016acde26c2) @@ -143139,10 +143089,10 @@ index 766f700417f7194d6b01fa1bc18dad40f116744b..6221aeb43d9b314a0a356ea9fca62545 * set to nonzero, the configured pitch gets overwritten with * the previous pitch. So, to get the configured pitch -From 6dfc00d03c60c925629377eaa261680de59503ab Mon Sep 17 00:00:00 2001 +From e65f8437a60bf96a56d8efadd0ebabedd0e8901d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 30 Jan 2018 14:21:02 -0800 -Subject: [PATCH 200/235] drm/vc4: Add missing enable/disable vblank handlers +Subject: [PATCH 199/257] drm/vc4: Add missing enable/disable vblank handlers in fkms. Fixes hang at boot in 4.14. @@ -143223,10 +143173,10 @@ index 6221aeb43d9b314a0a356ea9fca62545135b6521..7edb38953a6a2a875685a9aa4ffa3550 static const struct drm_crtc_helper_funcs vc4_crtc_helper_funcs = { -From 1444877955cee53b5e5079e7eb36cb5ee107c966 Mon Sep 17 00:00:00 2001 +From 714cd95fbfc77aca94d67dfa183a9f4e252c5d9b Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 5 Feb 2018 18:01:02 +0000 -Subject: [PATCH 201/235] drm/vc4: Fix warning about vblank interrupts before +Subject: [PATCH 200/257] drm/vc4: Fix warning about vblank interrupts before DRM core is ready. The SMICS interrupt fires continuously, but since it's 1/100 the rate @@ -143276,10 +143226,10 @@ index 7edb38953a6a2a875685a9aa4ffa3550488833e5..967a0bf5886b746b1177b46aaa205751 return 0; } -From 3e884d070cf6a91fef4c5c93a09c6d9e9bf8e500 Mon Sep 17 00:00:00 2001 +From c6bb7419ace182631d9289fec116ef15d17c547f Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 5 Feb 2018 18:02:30 +0000 -Subject: [PATCH 202/235] drm/vc4: Skip SET_CURSOR_INFO when the cursor +Subject: [PATCH 201/257] drm/vc4: Skip SET_CURSOR_INFO when the cursor contents didn't change. Signed-off-by: Eric Anholt @@ -143336,10 +143286,10 @@ index 967a0bf5886b746b1177b46aaa205751e7233890..462d9084ce53da8bf5966f175f753bf2 static void vc4_cursor_plane_atomic_disable(struct drm_plane *plane, -From 42d12c4347c07e4efb394b01e18539a14bd87e03 Mon Sep 17 00:00:00 2001 +From 9288a4d3e9720a04d7a20dfc9391c7ee476d0b00 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 5 Feb 2018 18:22:03 +0000 -Subject: [PATCH 203/235] drm/vc4: Remove duplicate primary/cursor fields from +Subject: [PATCH 202/257] drm/vc4: Remove duplicate primary/cursor fields from FKMS driver. The CRTC has those fields and we can just use them. @@ -143410,10 +143360,10 @@ index 462d9084ce53da8bf5966f175f753bf22510bfcb..60e9d8fa5511340d63c3fad7a95cfb30 if (!vc4_encoder) return -ENOMEM; -From 64b73322a2be386a7f85073be3ec6e03738e0d25 Mon Sep 17 00:00:00 2001 +From 80e62085bfcf5fd28f057859b99332869dda7afd Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 5 Feb 2018 18:53:18 +0000 -Subject: [PATCH 204/235] drm/vc4: Don't wait for vblank on fkms cursor +Subject: [PATCH 203/257] drm/vc4: Don't wait for vblank on fkms cursor updates. We don't use the same async update path between fkms and normal kms, @@ -143441,10 +143391,10 @@ index 50c4959b5bd33efe329119a0aa9fd39b255e098f..f73343e08fe668fb590074dd86d4f664 drm_atomic_helper_commit_hw_done(state); -From 89f67544213a00b7f791775470c1cc5e5afb8a62 Mon Sep 17 00:00:00 2001 +From 4d0af693153c4bcaf6ed7681304157b9da9e3cf6 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 5 Feb 2018 10:37:54 +0000 -Subject: [PATCH 205/235] config: Add SND_USB_HIFACE=m +Subject: [PATCH 204/257] config: Add SND_USB_HIFACE=m See: https://github.com/raspberrypi/linux/issues/2368 @@ -143479,10 +143429,10 @@ index f2563f6824b6b16d9f44bc0ee1da818bc3ef5ebd..9c166b8c718287010facfb105bd28540 CONFIG_SND_BCM2835_SOC_I2S=m CONFIG_SND_BCM2708_SOC_GOOGLEVOICEHAT_SOUNDCARD=m -From 8ffb60f35cc44d1a60847441ce5a22fd002bd0a1 Mon Sep 17 00:00:00 2001 +From 452df4f73a53dc9e2622228da78bd9c580400310 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 5 Feb 2018 09:35:01 +0000 -Subject: [PATCH 206/235] mmc: bcm2835-sdhost: Add include +Subject: [PATCH 205/257] mmc: bcm2835-sdhost: Add include highmem.h (needed for kmap_atomic) is pulled in by one of the other include files, but only with some CONFIG settings. Make the inclusion @@ -143508,10 +143458,10 @@ index 6c0dafe6c64b03f91cfb0360861c29dd444b3ca5..273b1be058c54bae5b4a18ce64cd0e11 /* For mmc_card_blockaddr */ -From cfa32dfca6f04ac9fa85b8f37b02ee2afdc40664 Mon Sep 17 00:00:00 2001 +From b6fa0e8b1a80d7338e04c4febb610b7dd6548d65 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 14 Jul 2014 22:02:09 +0100 -Subject: [PATCH 207/235] hid: Reduce default mouse polling interval to 60Hz +Subject: [PATCH 206/257] hid: Reduce default mouse polling interval to 60Hz Reduces overhead when using X --- @@ -143543,10 +143493,10 @@ index 045b5da9b992873ce74f5d401de34855b93a6f8e..45abcbab4efe561a3829e9a6b6014abe break; case HID_GD_JOYSTICK: -From 02b7317150f864a3a9703ec7212ebfea8b78aacb Mon Sep 17 00:00:00 2001 +From d1804ccedb658022b6b67aa71c651435e40ef1be Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 6 Feb 2018 11:48:17 +0000 -Subject: [PATCH 208/235] BCM270X_DT: Minor cosmetic DT tidy +Subject: [PATCH 207/257] BCM270X_DT: Minor cosmetic DT tidy Deleting the timer node for all bcm27* DTBs than re-adding an identical one for bcm2708 is wrong - just delete it where it isn't wanted. @@ -143628,10 +143578,10 @@ index 2169fbd14844dd907f027a36984f3372074b331c..6fb5ed655d63cb26f4d5205efad37e9c __overrides__ { -From 54100f36a610867b32079b10b1e9b1255db37af5 Mon Sep 17 00:00:00 2001 +From dd87480f655a455c79081e48e805a38490aee562 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 6 Feb 2018 13:10:09 +0000 -Subject: [PATCH 209/235] BCM270X_DT: More cosmetic DT changes +Subject: [PATCH 208/257] BCM270X_DT: More cosmetic DT changes Remove unnecessary duplicate labels (but keep spi0). @@ -143824,10 +143774,10 @@ index 8baa7f77cd94ca76e9a01346015402321c314f20..489679637306254ff0dedf37d01e5e31 __overlay__ { status = "okay"; -From e690f5cb0e9f4557739ca802d4935e5eef860c45 Mon Sep 17 00:00:00 2001 +From 59470f262e0cee8a2bfb4a622f401dc1a0907bcc Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Tue, 6 Feb 2018 15:37:22 +0100 -Subject: [PATCH 210/235] config: enable Audio Graph Card module +Subject: [PATCH 209/257] config: enable Audio Graph Card module Signed-off-by: Matthias Reichl --- @@ -143860,10 +143810,10 @@ index 9c166b8c718287010facfb105bd28540c46949d8..4e92a1107513b6008b23df3a5d9cc966 CONFIG_HIDRAW=y CONFIG_UHID=m -From b20054a70149894a89f948fd9891491556119879 Mon Sep 17 00:00:00 2001 +From e7b8d1b2879ccbc4b105f69e54079c988e28d32a Mon Sep 17 00:00:00 2001 From: Simon van der Veldt Date: Tue, 6 Feb 2018 15:36:25 +0100 -Subject: [PATCH 211/235] Add missing SND_PISOUND selects dependency to +Subject: [PATCH 210/257] Add missing SND_PISOUND selects dependency to SND_RAWMIDI Without it the Pisound module fails to compile. @@ -143886,10 +143836,10 @@ index 381d32bb9deb3cf2c531e2a4563418cd6eb9d505..630285e4c9a35afc4638ef4742adf704 help Say Y or M if you want to add support for Blokas Labs pisound. -From ebe91854148bff41d1c1940e45d1f7674a59ae97 Mon Sep 17 00:00:00 2001 +From 4451eb009eb73ea3b699ce6384e9a95759365885 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 13 Feb 2017 11:10:50 +0000 -Subject: [PATCH 212/235] BCM2835-V4L2: Ensure H264 header bytes get a sensible +Subject: [PATCH 211/257] BCM2835-V4L2: Ensure H264 header bytes get a sensible timestamp H264 header come off VC with 0 timestamps, which means they get a @@ -143978,10 +143928,10 @@ index 404037476bc5119acb2f37dbd92900a3f8719bf9..1b1b44abb402c99c4c217953206614cf struct vchiq_mmal_port *port; /* port being used for capture */ /* camera port being used for capture */ -From 25055a2da420beef3bbeb33a3b3eb00260ab34c4 Mon Sep 17 00:00:00 2001 +From 5f2e7fd9918ea9e31d00795d0556f90e85f4ef27 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 13 Feb 2017 13:11:41 +0000 -Subject: [PATCH 213/235] BCM2835-V4L2: Correctly denote key frames in encoded +Subject: [PATCH 212/257] BCM2835-V4L2: Correctly denote key frames in encoded data Forward MMAL key frame flags to the V4L2 buffers. @@ -144006,10 +143956,10 @@ index e383cb0f54627e1b9e0aff6928858ece4029ad25..23b785e22098ec1aaf491c799701f9f9 "Buffer has ts %llu", dev->capture.last_timestamp); -From 80d8cf7847aff292ddd4a2d884e268b6f2f697e1 Mon Sep 17 00:00:00 2001 +From 6739a20fca6200506f7c685c967c872dc45e3c55 Mon Sep 17 00:00:00 2001 From: David H Date: Wed, 4 Oct 2017 04:43:07 -0700 -Subject: [PATCH 214/235] bcm2835-camera: Fix timestamp calculation problem +Subject: [PATCH 213/257] bcm2835-camera: Fix timestamp calculation problem (#2214) * bcm2835-camera: Fix timestamp calculation problem @@ -144108,10 +144058,10 @@ index 1b1b44abb402c99c4c217953206614cfaed044c6..31333f57c6020d4990137efca5ff6788 u64 last_timestamp; -From a2b13c1b9d7c23fb7a04da68fa65cc948668bac9 Mon Sep 17 00:00:00 2001 +From 66815f0a79c45e85fda7afa29976dbd7180509e0 Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Fri, 20 Oct 2017 03:28:45 +0300 -Subject: [PATCH 215/235] drm/panel: rpi-touchscreen: propagate errors in +Subject: [PATCH 214/257] drm/panel: rpi-touchscreen: propagate errors in rpi_touchscreen_i2c_read() There is one caller which checks whether rpi_touchscreen_i2c_read() @@ -144143,10 +144093,10 @@ index b57b7ad9aa4c5048186e98553af59ec912973096..128523d8d51873f7835fb95562d05aed return i2c_smbus_read_byte_data(ts->bridge_i2c, reg); } -From 2ebc5aedd3c3d852de97f97ddb522ff3e7014e9b Mon Sep 17 00:00:00 2001 +From 8e93e7e14bbccb68036ad6a29f09844c1fb87e20 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 13 Nov 2017 14:23:48 -0800 -Subject: [PATCH 216/235] drm/vc4: Fix crash if we have to unbind HDMI. +Subject: [PATCH 215/257] drm/vc4: Fix crash if we have to unbind HDMI. We need the card to unregister before the codec that the card references. @@ -144188,10 +144138,10 @@ index 8ab20c1e9e69e90b90c7f74640033f932df76ae7..54fe4ceb1c3efd1aa09819661737db4c #ifdef CONFIG_DRM_VC4_HDMI_CEC -From b5dab8d6be607f81ee8e16dad99040e8f7873e4d Mon Sep 17 00:00:00 2001 +From c8f0b753e0232acad10cdd2595445d312633e3c9 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 31 Oct 2017 11:33:10 -0700 -Subject: [PATCH 217/235] drm/vc4: Skip ULPS latching when we're in that ULPS +Subject: [PATCH 216/257] drm/vc4: Skip ULPS latching when we're in that ULPS state already. It seems that trying to go from unlatched to unlatched will time out @@ -144219,10 +144169,10 @@ index 9a1a559ba287c460b274c6a279883e69c62f7bdb..5cd23540971e2b010ce7c679a908033b DSI_PORT_WRITE(STAT, stat_ulps); DSI_PORT_WRITE(PHYC, DSI_PORT_READ(PHYC) | phyc_ulps); -From 5320376cf365a125f812cd59c8c319bca9306c7f Mon Sep 17 00:00:00 2001 +From 5020b30ebab79585b0ae9ed09bd3abe9a6ba7ffe Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 15 Aug 2017 16:47:18 -0700 -Subject: [PATCH 218/235] drm/vc4: Move the DSI clock divider workaround closer +Subject: [PATCH 217/257] drm/vc4: Move the DSI clock divider workaround closer to the clock call. We want the adjusted_mode->clock to be the actual clock we're @@ -144268,10 +144218,10 @@ index 5cd23540971e2b010ce7c679a908033b752fd9ed..a3f416cbd1d61689c735f5e785dff245 if (ret) { dev_err(&dsi->pdev->dev, -From 04295ba17614659cb6e00701f6a2359560fa6329 Mon Sep 17 00:00:00 2001 +From 10fa5e564b10fe5c2aa66f95ecb7e16e479a4494 Mon Sep 17 00:00:00 2001 From: P33M Date: Tue, 13 Feb 2018 15:41:35 +0000 -Subject: [PATCH 219/235] dwc_otg: Fix a regression when dequeueing isochronous +Subject: [PATCH 218/257] dwc_otg: Fix a regression when dequeueing isochronous transfers In 282bed95 (dwc_otg: make nak_holdoff work as intended with empty queues) @@ -144331,10 +144281,10 @@ index 0c28a6e44299bffd42c501497b6fa02206c2b620..e59747cee7ab9f7d4d858283869bd37c dwc_otg_hc_halt(hcd->core_if, qh->channel, DWC_OTG_HC_XFER_URB_DEQUEUE); -From f2b42907dd329f1b4da6c9bc331c7362c2b6e5b8 Mon Sep 17 00:00:00 2001 +From a21be27f7836be00e2c67df70d2650432586611f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 15 Feb 2018 09:36:52 +0000 -Subject: [PATCH 220/235] overlays: Allow multiple instances of gpio-ir[-tx] +Subject: [PATCH 219/257] overlays: Allow multiple instances of gpio-ir[-tx] Signed-off-by: Phil Elwell --- @@ -144413,10 +144363,10 @@ index a2e271f0f2029acec85637c0ffa9dc5b2f0463a8..e054ba319398ee49801f9ed7a33156a5 }; }; -From 81d3d022975722b427d731b0da06ca0c8b903b84 Mon Sep 17 00:00:00 2001 +From 63a2ed86037315a094bf9aa54f45b26b75a6dad5 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 15 Feb 2018 11:22:44 +0000 -Subject: [PATCH 221/235] dwc_otg: add smp_mb() to prevent driver state +Subject: [PATCH 220/257] dwc_otg: add smp_mb() to prevent driver state corruption on boot Occasional crashes have been seen where the FIQ code dereferences @@ -144461,10 +144411,10 @@ index 992269d61ecf48126379a38e528f719009ee1d75..2ccd2a80dbefa0cee97e996a3eea5b18 } else { smp_call_function_single(0, hcd_init_fiq, otg_dev, 1); -From ca742e1c9bc0aa29b47575d287e29176330f34ef Mon Sep 17 00:00:00 2001 +From b689ac80d6aa5ecb8073f3962c543bccc898c363 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 15 Feb 2018 16:03:04 +0000 -Subject: [PATCH 222/235] overlay: Add missing pinctrl reference to gpio-ir +Subject: [PATCH 221/257] overlay: Add missing pinctrl reference to gpio-ir Signed-off-by: Phil Elwell --- @@ -144485,10 +144435,10 @@ index bfa3cb5fd4ddd238e67a7f08deca16e993146c8e..1bd9bb950efaed966f07426321262e33 // pin number, high or low gpios = <&gpio 18 1>; -From 8d67d4575140296be962d395b1e902f07f0f9860 Mon Sep 17 00:00:00 2001 +From f0bf0d69c1e59291ae05e6f4710034ec2143638e Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:41 +0100 -Subject: [PATCH 223/235] ASoC: pcm512x: revert downstream changes +Subject: [PATCH 222/257] ASoC: pcm512x: revert downstream changes This partially reverts commit 185ea05465aac8bf02a0d2b2f4289d42c72870b7 which was added by https://github.com/raspberrypi/linux/pull/1152 @@ -144522,10 +144472,10 @@ index f7b0977017ed5a6c02eafa0147d49d66876537bf..68feae262476492ae3a0b30855dbb09e dev_err(dev, "No LRCLK?\n"); return -EINVAL; -From 3be60b477538e5fb4f7664d03a8e26442558e05a Mon Sep 17 00:00:00 2001 +From fbcac99822a65c6f6e3daadacae1c3024f3a9411 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:42 +0100 -Subject: [PATCH 224/235] ASoC: allo-boss-dac: fix S24_LE format +Subject: [PATCH 223/257] ASoC: allo-boss-dac: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144581,10 +144531,10 @@ index 203ab76c7045b081578e23bda1099dd103d11154..26c37da070176330abddc7d2d689dcbb return ret; } -From 46167d527fc81838e74a32ac1f6ba30948bde0b0 Mon Sep 17 00:00:00 2001 +From 3a7661244837dfdcfbc84f495ffcdbe219a95bf3 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:42 +0100 -Subject: [PATCH 225/235] ASoC: allo-piano-dac-plus: fix S24_LE format +Subject: [PATCH 224/257] ASoC: allo-piano-dac-plus: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144618,10 +144568,10 @@ index 1800f5e4d414e2d83a9487a89a2800a3e1ec01b1..d1ac0494967fb028921050fc7c7b51b4 } -From d3d332a10b2cef67155b73e9092bc3e9af69a81d Mon Sep 17 00:00:00 2001 +From ccb8a2fecdf87db080cb0652d03b75e57fb121ca Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:42 +0100 -Subject: [PATCH 226/235] ASoC: allo-piano-dac: fix S24_LE format +Subject: [PATCH 225/257] ASoC: allo-piano-dac: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144670,10 +144620,10 @@ index eaf50fb6dbca1970ae1c6f8662088b0f1573fecb..cfe81c946271e2d06b6f055c94fb797e }, }; -From 9b45934986d36a599be1e4a8f582b9466cd749fa Mon Sep 17 00:00:00 2001 +From 2013939d92371b6c69f1d7ed9fc9784747488aeb Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:42 +0100 -Subject: [PATCH 227/235] ASoC: dionaudio_loco-v2: fix S24_LE format +Subject: [PATCH 226/257] ASoC: dionaudio_loco-v2: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144723,10 +144673,10 @@ index a009c49477972a9832175d86f201b0357a08f7c0..8f522deb2a4898b9b03fb6c6a845acbe },}; -From 641f009f2de36598903c8c0a307ba53d0757707b Mon Sep 17 00:00:00 2001 +From c3d40c7056f1756eeb11f02daf096863cc267b9a Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:42 +0100 -Subject: [PATCH 228/235] ASoC: hifiberry_dacplus: fix S24_LE format +Subject: [PATCH 227/257] ASoC: hifiberry_dacplus: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144779,10 +144729,10 @@ index 16697dd6c6db6856022731a07a9a1653dd94b9f5..b32dae9d3b1d7dc687e071a75462444c return ret; } -From 205efb90f92fe3d9b321b987264d88402d3434d8 Mon Sep 17 00:00:00 2001 +From aaa4e00c69553a5c162df5e9c6528b405a793228 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:42 +0100 -Subject: [PATCH 229/235] ASoC: iqaudio-dac: fix S24_LE format +Subject: [PATCH 228/257] ASoC: iqaudio-dac: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144836,10 +144786,10 @@ index 1ee4097c846376666775272ed692ca330881b0cb..4583d199fd83d2b6877682ce4a08f7c6 }, }; -From 5d076bc19bc8e6237c6461009df690f360f06cbc Mon Sep 17 00:00:00 2001 +From 82312fa12da15888db763c872152af3cd4a4faea Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:43 +0100 -Subject: [PATCH 230/235] ASoC: justboom-dac: fix S24_LE format +Subject: [PATCH 229/257] ASoC: justboom-dac: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144882,10 +144832,10 @@ index 9bab6cf063d3d450d96b4ee2196a7384e071cbdb..217626cdad6c2e5d96de9cd677906fd0 .shutdown = snd_rpi_justboom_dac_shutdown, }; -From 53013240263d05cae7959f4bde2f5747f948a906 Mon Sep 17 00:00:00 2001 +From f15ee1286099601bd4de4cdee081be753b6627ea Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 20:30:43 +0100 -Subject: [PATCH 231/235] ASoC: raspidac3: fix S24_LE format +Subject: [PATCH 230/257] ASoC: raspidac3: fix S24_LE format Remove set_bclk_ratio call so 24-bit data is transmitted in 24 bclk cycles. @@ -144930,10 +144880,10 @@ index ad2b5b89bc8213dc2e277306ef50d6e32448759c..1e45db34fe0def5eb210627d4daa552a .shutdown = snd_rpi_raspidac3_shutdown, }; -From 426d7b58610f838369263621e46b56b2185d1e05 Mon Sep 17 00:00:00 2001 +From f1fc7101db7e7514c7cf2b6a2324f80b7e683b99 Mon Sep 17 00:00:00 2001 From: Ismael Asensio Date: Sun, 18 Feb 2018 18:53:58 +0100 -Subject: [PATCH 232/235] Generic Rotary Encoder overlay for multiple instances +Subject: [PATCH 231/257] Generic Rotary Encoder overlay for multiple instances (#2388) Modify the rotary-encoder overlay to support multiple instances. @@ -145035,10 +144985,10 @@ index f88f8a39d9a2f2afbf80edf2d9b328410feebaca..819f400a90546d2edce2d510a1d823e5 + }; }; -From 89fb8974f6ebbbbd2243936aaa4edd980298dcb8 Mon Sep 17 00:00:00 2001 +From f2a2eec2e16ed6d1f3affad5656deac9a2d93da8 Mon Sep 17 00:00:00 2001 From: RF William Hollender Date: Sun, 18 Feb 2018 14:41:43 -0600 -Subject: [PATCH 233/235] Add support for SuperAudioBoard sound card (#2386) +Subject: [PATCH 232/257] Add support for SuperAudioBoard sound card (#2386) SuperAudioBoard support using simple-audio-card driver. --- @@ -145196,10 +145146,10 @@ index 003209bf2362c2a136ab987b2f20065e9fa81b43..1352f5d343e03083a50f0a2ba63eef5b CONFIG_SND_SIMPLE_CARD=m CONFIG_SOUND_PRIME=m -From c90612880e3942055a7ee21c04065c27552df713 Mon Sep 17 00:00:00 2001 +From 0eb776ba62b6229e39d1b4d35abf3ece1573993c Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 2 Feb 2018 12:00:00 +0100 -Subject: [PATCH 234/235] Revert downstream wm8804 changes +Subject: [PATCH 233/257] Revert downstream wm8804 changes The format change from S24_LE to S24_3LE effectively disables 24-bit mode as S24_3LE isn't supported by bcm2835-i2s. This causes issues @@ -145244,10 +145194,10 @@ index d8fdce81b297dcf02e144bdead0c6193c0f5c24b..fc69b87443d80489382b97332de6d5ad .component_driver = { .dapm_widgets = wm8804_dapm_widgets, -From e3adc14024758c1a473e03d6e25ddac4c367a60f Mon Sep 17 00:00:00 2001 +From 2bfcfb027afd910326bb215d02de9592ad7af818 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 19 Feb 2018 17:04:42 +0000 -Subject: [PATCH 235/235] BCM270X_DT: Add brcm,bcm2835-sdhci as a fallback +Subject: [PATCH 234/257] BCM270X_DT: Add brcm,bcm2835-sdhci as a fallback Although downstream uses a different MMC/SDHCI driver there is no reason why can't support the upstream as a fallback. @@ -145272,3 +145222,2076 @@ index c7c58265cd5e24e01ff2194ecc959c284dc83faf..5c12450d2c30cc0cac3c9e7ca75aeed5 reg = <0x7e300000 0x100>; interrupts = <2 30>; clocks = <&clocks BCM2835_CLOCK_EMMC>; + +From d2928e626991f57f53e63d9cd145516eda9717aa Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Mon, 19 Feb 2018 17:29:15 +0000 +Subject: [PATCH 235/257] overlays: i2c-gpio: Support for multiple instances + +Add a 'bus' parameter that, if set to a unique, non-zero +value, allows multiple i2c-gpio instances to coexist. The chosen +value doesn't determine the /dev/i2c-* value, but starting with +1 or 2 and counting upwards seems sensible. N.B. The bus parameter +has a default value of zero, so one instance doesn't need to specify +a value. + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/README | 3 +++ + arch/arm/boot/dts/overlays/i2c-gpio-overlay.dts | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index 65a93e6555750ae633d0afcd06403f15303134b0..b066b19d26616a3fb241ac6bc0e75d179217dc4d 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -693,6 +693,9 @@ Params: i2c_gpio_sda GPIO used for I2C data (default "23") + i2c_gpio_delay_us Clock delay in microseconds + (default "2" = ~100kHz) + ++ bus Set to a unique, non-zero value if wanting ++ multiple i2c-gpio busses (default "0") ++ + + Name: i2c-mux + Info: Adds support for a number of I2C bus multiplexers on i2c_arm +diff --git a/arch/arm/boot/dts/overlays/i2c-gpio-overlay.dts b/arch/arm/boot/dts/overlays/i2c-gpio-overlay.dts +index b72b32e936774d901bc253b06e025c2dd48bdb1b..3f692c1a8958cd8b70ab61951b3f9ffe3901c8fb 100644 +--- a/arch/arm/boot/dts/overlays/i2c-gpio-overlay.dts ++++ b/arch/arm/boot/dts/overlays/i2c-gpio-overlay.dts +@@ -38,6 +38,6 @@ + i2c_gpio_sda = <&i2c_gpio>,"gpios:4"; + i2c_gpio_scl = <&i2c_gpio>,"gpios:16"; + i2c_gpio_delay_us = <&i2c_gpio>,"i2c-gpio,delay-us:0"; ++ bus = <&i2c_gpio>, "reg:0"; + }; + }; +- + +From ab138bf13aa1a76a4da1bdd81297788dedc0c5c3 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 20 Feb 2018 10:07:27 +0000 +Subject: [PATCH 236/257] i2c-gpio: Also set bus numbers from reg property + +I2C busses can be assigned specific bus numbers using aliases in +Device Tree - string properties where the name is the alias and the +value is the path to the node. The current DT parameter mechanism +does not allow property names to be derived from a parameter value +in any way, so it isn't possible to generate unique or matching +aliases for nodes from an overlay that can generate multiple +instances, e.g. i2c-gpio. + +Work around this limitation (at least temporarily) by allowing +the i2c adapter number to be initialised from the "reg" property +if present. + +Signed-off-by: Phil Elwell +--- + drivers/i2c/busses/i2c-gpio.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c +index 0ef8fcc6ac3aca1e6641cd30c3ef3d986e0cb0a7..147dd691652a343de45184895ca88bf761f19e08 100644 +--- a/drivers/i2c/busses/i2c-gpio.c ++++ b/drivers/i2c/busses/i2c-gpio.c +@@ -220,7 +220,9 @@ static int i2c_gpio_probe(struct platform_device *pdev) + adap->dev.parent = &pdev->dev; + adap->dev.of_node = pdev->dev.of_node; + +- adap->nr = pdev->id; ++ if (pdev->id != PLATFORM_DEVID_NONE || !pdev->dev.of_node || ++ of_property_read_u32(pdev->dev.of_node, "reg", &adap->nr)) ++ adap->nr = pdev->id; + ret = i2c_bit_add_numbered_bus(adap); + if (ret) + return ret; + +From e198d2c7b27475b34e6db9df51ca0d6b50fb852a Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 20 Feb 2018 10:47:27 +0000 +Subject: [PATCH 237/257] overlays: i2c-gpio: Explain bus numbers in README + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/README | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index b066b19d26616a3fb241ac6bc0e75d179217dc4d..be63795ad5ef9b2abbb144d0444b52030c59544a 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -694,7 +694,11 @@ Params: i2c_gpio_sda GPIO used for I2C data (default "23") + (default "2" = ~100kHz) + + bus Set to a unique, non-zero value if wanting +- multiple i2c-gpio busses (default "0") ++ multiple i2c-gpio busses. If set, will be used ++ as the preferred bus number (/dev/i2c-). If ++ not set, the default value is 0, but the bus ++ number will be dynamically assigned - probably ++ 3. + + + Name: i2c-mux + +From 65c48f3668b7a9cb1c09a1bc6eaffc2d9739c258 Mon Sep 17 00:00:00 2001 +From: James Hughes +Date: Tue, 20 Feb 2018 13:05:21 +0000 +Subject: [PATCH 238/257] Update rpi-ft5406-overlay.dts + +The Y resolution of the touchscreen was incorrectly set to 600, should be 480. +--- + arch/arm/boot/dts/overlays/rpi-ft5406-overlay.dts | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/overlays/rpi-ft5406-overlay.dts b/arch/arm/boot/dts/overlays/rpi-ft5406-overlay.dts +index d4607b9d1cbfc38c6dd8b504aa00921d9590f6da..1915ce188bf305ed2758644812f03eedbc88a114 100644 +--- a/arch/arm/boot/dts/overlays/rpi-ft5406-overlay.dts ++++ b/arch/arm/boot/dts/overlays/rpi-ft5406-overlay.dts +@@ -12,7 +12,7 @@ + firmware = <&firmware>; + status = "okay"; + touchscreen-size-x = <800>; +- touchscreen-size-y = <600>; ++ touchscreen-size-y = <480>; + touchscreen-inverted-x = <0>; + touchscreen-inverted-y = <0>; + touchscreen-swapped-x-y = <0>; + +From bf683b1b3803ef78269485fcbd4041bd9397fe93 Mon Sep 17 00:00:00 2001 +From: Alexander Graf +Date: Tue, 20 Feb 2018 17:36:21 +0100 +Subject: [PATCH 239/257] overlays: Add overlay for missing AUX interrupt + controller support (#2391) + +Upstream Linux today does not support the AUX interrupt controller +yet. To make sure it can use our device tree, add an overlay that +reverts it to something upstream understands again. + +See: https://github.com/raspberrypi/firmware/issues/943 + +Signed-off-by: Alexander Graf +--- + arch/arm/boot/dts/overlays/Makefile | 1 + + arch/arm/boot/dts/overlays/README | 7 +++++ + .../overlays/upstream-aux-interrupt-overlay.dts | 33 ++++++++++++++++++++++ + 3 files changed, 41 insertions(+) + create mode 100644 arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts + +diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile +index a4c5b740bf74cd0713646c466b44ad8a7ac91f75..fd5698cb4092d8b3f06d8da68fd2be1f6a11006a 100644 +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -122,6 +122,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + tinylcd35.dtbo \ + uart0.dtbo \ + uart1.dtbo \ ++ upstream-aux-interrupt.dtbo \ + vc4-fkms-v3d.dtbo \ + vc4-kms-v3d.dtbo \ + vga666.dtbo \ +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index be63795ad5ef9b2abbb144d0444b52030c59544a..5d5167169d431b8f3bc933a9e3ab355d31af5075 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1721,6 +1721,13 @@ Params: txd1_pin GPIO pin for TXD1 (14, 32 or 40 - default 14) + rxd1_pin GPIO pin for RXD1 (15, 33 or 41 - default 15) + + ++Name: upstream-aux-interrupt ++Info: Allow usage of downstream .dtb with upstream kernel by binding AUX ++ devices directly to the shared AUX interrupt line. ++Load: dtoverlay=upstream-aux-interrupt ++Params: ++ ++ + Name: vc4-fkms-v3d + Info: Enable Eric Anholt's DRM VC4 V3D driver on top of the dispmanx + display stack. +diff --git a/arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts b/arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts +new file mode 100644 +index 0000000000000000000000000000000000000000..04e271b72a3aa8f1e23ce164516a26526c1e82f9 +--- /dev/null ++++ b/arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts +@@ -0,0 +1,33 @@ ++// Overlay for missing AUX interrupt controller ++// Instead we bind all AUX devices to the generic AUX interrupt line ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "brcm,bcm2708"; ++ ++ fragment@0 { ++ target = <&uart1>; ++ __overlay__ { ++ interrupt-parent = <&intc>; ++ interrupts = <0x1 0x1d>; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&spi1>; ++ __overlay__ { ++ interrupt-parent = <&intc>; ++ interrupts = <0x1 0x1d>; ++ }; ++ }; ++ ++ fragment@2 { ++ target = <&spi2>; ++ __overlay__ { ++ interrupt-parent = <&intc>; ++ interrupts = <0x1 0x1d>; ++ }; ++ }; ++}; ++ + +From 8d537937014ad4a7765ede7e407a8145e6cb9b1d Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 20 Feb 2018 11:48:15 +0000 +Subject: [PATCH 240/257] sc16is7xx: Fix for multi-channel stall + +The SC16IS752 is a dual-channel device. The two channels are largely +independent, but the IRQ signals are wired together as an open-drain, +active low signal which will be driven low while either of the +channels requires attention, which can be for significant periods of +time until operations complete and the interrupt can be acknowledged. +In that respect it is should be treated as a true level-sensitive IRQ. + +The kernel, however, needs to be able to exit interrupt context in +order to use I2C or SPI to access the device registers (which may +involve sleeping). Therefore the interrupt needs to be masked out or +paused in some way. + +The usual way to manage sleeping from within an interrupt handler +is to use a threaded interrupt handler - a regular interrupt routine +does the minimum amount of work needed to triage the interrupt before +waking the interrupt service thread. If the threaded IRQ is marked as +IRQF_ONESHOT the kernel will automatically mask out the interrupt +until the thread runs to completion. The sc16is7xx driver used to +use a threaded IRQ, but a patch switched to using a kthread_worker +in order to set realtime priorities on the handler thread and for +other optimisations. The end result is non-threaded IRQ that +schedules some work then returns IRQ_HANDLED, making the kernel +think that all IRQ processing has completed. + +The work-around to prevent a constant stream of interrupts is to +mark the interrupt as edge-sensitive rather than level-sensitive, +but interpreting an active-low source as a falling-edge source +requires care to prevent a total cessation of interrupts. Whereas +an edge-triggering source will generate a new edge for every interrupt +condition a level-triggering source will keep the signal at the +interrupting level until it no longer requires attention; in other +words, the host won't see another edge until all interrupt conditions +are cleared. It is therefore vital that the interrupt handler does not +exit with an outstanding interrupt condition, otherwise the kernel +will not receive another interrupt unless some other operation causes +the interrupt state on the device to be cleared. + +The existing sc16is7xx driver has a very simple interrupt "thread" +(kthread_work job) that processes interrups on each channel in turn +until there are no more. If both channels are active and the first +channel starts interrupting while the handler for the second channel +is running then it will not be detected and an IRQ stall ensues. This +could be handled easily if there was a shared IRQ status register, or +a convenient way to determine if the IRQ had been deasserted for any +length of time, but both appear to be lacking. + +Avoid this problem (or at least make it much less likely to happen) +by reducing the granularity of per-channel interrupt processing +to one condition per iteration, only exiting the overall loop when +both channels are no longer interrupting. + +Signed-off-by: Phil Elwell +--- + drivers/tty/serial/sc16is7xx.c | 22 ++++++++++++++++------ + 1 file changed, 16 insertions(+), 6 deletions(-) + +diff --git a/drivers/tty/serial/sc16is7xx.c b/drivers/tty/serial/sc16is7xx.c +index ca54ce074a5f84c5ea493dde528714f7f4015f65..e8b928877e66c3bfeee28a7b07130efa4d5a7d8b 100644 +--- a/drivers/tty/serial/sc16is7xx.c ++++ b/drivers/tty/serial/sc16is7xx.c +@@ -662,7 +662,7 @@ static void sc16is7xx_handle_tx(struct uart_port *port) + uart_write_wakeup(port); + } + +-static void sc16is7xx_port_irq(struct sc16is7xx_port *s, int portno) ++static bool sc16is7xx_port_irq(struct sc16is7xx_port *s, int portno) + { + struct uart_port *port = &s->p[portno].port; + +@@ -671,7 +671,7 @@ static void sc16is7xx_port_irq(struct sc16is7xx_port *s, int portno) + + iir = sc16is7xx_port_read(port, SC16IS7XX_IIR_REG); + if (iir & SC16IS7XX_IIR_NO_INT_BIT) +- break; ++ return false; + + iir &= SC16IS7XX_IIR_ID_MASK; + +@@ -693,16 +693,26 @@ static void sc16is7xx_port_irq(struct sc16is7xx_port *s, int portno) + port->line, iir); + break; + } +- } while (1); ++ } while (0); ++ return true; + } + + static void sc16is7xx_ist(struct kthread_work *ws) + { + struct sc16is7xx_port *s = to_sc16is7xx_port(ws, irq_work); +- int i; + +- for (i = 0; i < s->devtype->nr_uart; ++i) +- sc16is7xx_port_irq(s, i); ++ while (1) ++ { ++ bool keep_polling = false; ++ int i; ++ ++ for (i = 0; i < s->devtype->nr_uart; ++i) ++ { ++ keep_polling |= sc16is7xx_port_irq(s, i); ++ } ++ if (!keep_polling) ++ break; ++ } + } + + static irqreturn_t sc16is7xx_irq(int irq, void *dev_id) + +From 9b6786e0c785633ac65e7a7c0f31e35736170b3c Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Tue, 20 Feb 2018 17:32:02 +0000 +Subject: [PATCH 241/257] overlays: Add sc16is752-i2c overlay + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/Makefile | 1 + + arch/arm/boot/dts/overlays/README | 15 ++++++-- + .../boot/dts/overlays/sc16is752-i2c-overlay.dts | 40 ++++++++++++++++++++++ + 3 files changed, 53 insertions(+), 3 deletions(-) + create mode 100644 arch/arm/boot/dts/overlays/sc16is752-i2c-overlay.dts + +diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile +index fd5698cb4092d8b3f06d8da68fd2be1f6a11006a..b543b2f478ab90790b662f9ffae3b6d9f8572ae4 100644 +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -100,6 +100,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + rpi-tv.dtbo \ + rra-digidac1-wm8741-audio.dtbo \ + sc16is750-i2c.dtbo \ ++ sc16is752-i2c.dtbo \ + sc16is752-spi1.dtbo \ + sdhost.dtbo \ + sdio.dtbo \ +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index 5d5167169d431b8f3bc933a9e3ab355d31af5075..4c3047a324cc03ccaf4f2c56ff3bf17421fabd3a 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1447,14 +1447,23 @@ Params: + + Name: sc16is750-i2c + Info: Overlay for the NXP SC16IS750 UART with I2C Interface +- Enables the chip on I2C1 at 0x48. To select another address, +- please refer to table 10 in reference manual. +- ++ Enables the chip on I2C1 at 0x48 (or the "addr" parameter value). To ++ select another address, please refer to table 10 in reference manual. + Load: dtoverlay=sc16is750-i2c,= + Params: int_pin GPIO used for IRQ (default 24) + addr Address (default 0x48) + + ++Name: sc16is752-i2c ++Info: Overlay for the NXP SC16IS752 dual UART with I2C Interface ++ Enables the chip on I2C1 at 0x48 (or the "addr" parameter value). To ++ select another address, please refer to table 10 in reference manual. ++Load: dtoverlay=sc16is752-i2c,= ++Params: int_pin GPIO used for IRQ (default 24) ++ addr Address (default 0x48) ++ xtal On-board crystal frequency (default 14745600) ++ ++ + Name: sc16is752-spi1 + Info: Overlay for the NXP SC16IS752 Dual UART with SPI Interface + Enables the chip on SPI1. +diff --git a/arch/arm/boot/dts/overlays/sc16is752-i2c-overlay.dts b/arch/arm/boot/dts/overlays/sc16is752-i2c-overlay.dts +new file mode 100644 +index 0000000000000000000000000000000000000000..e43e81d5a28f9d8f0fcac0cf7a5454703be6ad32 +--- /dev/null ++++ b/arch/arm/boot/dts/overlays/sc16is752-i2c-overlay.dts +@@ -0,0 +1,40 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "brcm,bcm2835"; ++ ++ fragment@0 { ++ target = <&i2c1>; ++ ++ frag1: __overlay__ { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ status = "okay"; ++ ++ sc16is752: sc16is752@48 { ++ compatible = "nxp,sc16is752"; ++ reg = <0x48>; // i2c address ++ clocks = <&sc16is752_clk>; ++ interrupt-parent = <&gpio>; ++ interrupts = <24 0x2>; /* IRQ_TYPE_EDGE_FALLING */ ++ gpio-controller; ++ #gpio-cells = <0>; ++ i2c-max-frequency = <400000>; ++ status = "okay"; ++ ++ sc16is752_clk: sc16is752_clk { ++ compatible = "fixed-clock"; ++ #clock-cells = <0>; ++ clock-frequency = <14745600>; ++ }; ++ }; ++ }; ++ }; ++ ++ __overrides__ { ++ int_pin = <&sc16is752>,"interrupts:0"; ++ addr = <&sc16is752>,"reg:0"; ++ xtal = <&sc16is752>,"clock-frequency:0"; ++ }; ++}; + +From 67e4649b774085d4a7cce52a831a4c5f647c95be Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= +Date: Fri, 23 Feb 2018 15:25:19 +0100 +Subject: [PATCH 242/257] bcm2709: enable usb gadget functions + +they are already in bcmrpi_defconfig +--- + arch/arm/configs/bcm2709_defconfig | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig +index 29915443fce61237d0155a11813ac3e4168f0f36..b04b9737c7aeeae44029e9eb7e865635b5e02a2f 100644 +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -1057,6 +1057,19 @@ CONFIG_USB_CXACRU=m + CONFIG_USB_UEAGLEATM=m + CONFIG_USB_XUSBATM=m + CONFIG_USB_GADGET=m ++CONFIG_USB_ZERO=m ++CONFIG_USB_AUDIO=m ++CONFIG_USB_ETH=m ++CONFIG_USB_GADGETFS=m ++CONFIG_USB_MASS_STORAGE=m ++CONFIG_USB_G_SERIAL=m ++CONFIG_USB_MIDI_GADGET=m ++CONFIG_USB_G_PRINTER=m ++CONFIG_USB_CDC_COMPOSITE=m ++CONFIG_USB_G_ACM_MS=m ++CONFIG_USB_G_MULTI=m ++CONFIG_USB_G_HID=m ++CONFIG_USB_G_WEBCAM=m + CONFIG_MMC=y + CONFIG_MMC_BLOCK_MINORS=32 + CONFIG_MMC_BCM2835_MMC=y + +From 729e57d556e90440429d6399e0f9a7ebc4dc91a3 Mon Sep 17 00:00:00 2001 +From: Matthias Reichl +Date: Thu, 22 Feb 2018 11:55:06 +0100 +Subject: [PATCH 243/257] ASoC: pcm512x: implement set_tdm_slot interface + +PCM512x can accept data padded with additional BCLK cycles +but the driver currently lacks an interface to configure this. + +This leads to the problem that S24_LE format in master mode +can result in non-integer clock divisors and pcm512x running +at a rather off rate. + +For example 48kHz with 48fs BCLK and SCLK at 24.576MHz uses +a divisor of 10 (rounded down from 10.6666) and results in a +51.2kHz LRCLK. With 64fs BCLK a divisor of 8 is used and +LRCLK runs at exactly 48kHz. + +Fix this by providing a minimal set_tdm_slot implementation +so machine drivers can optionally configure custom BCLK ratios. + +Signed-off-by: Matthias Reichl +--- + sound/soc/codecs/pcm512x.c | 28 +++++++++++++++++++++++++++- + 1 file changed, 27 insertions(+), 1 deletion(-) + +diff --git a/sound/soc/codecs/pcm512x.c b/sound/soc/codecs/pcm512x.c +index 68feae262476492ae3a0b30855dbb09e96fa187e..795e9eb3c86361b9a43cdcd0497b5b0922e45b48 100644 +--- a/sound/soc/codecs/pcm512x.c ++++ b/sound/soc/codecs/pcm512x.c +@@ -53,6 +53,7 @@ struct pcm512x_priv { + unsigned long overclock_pll; + unsigned long overclock_dac; + unsigned long overclock_dsp; ++ int lrclk_div; + }; + + /* +@@ -851,7 +852,10 @@ static int pcm512x_set_dividers(struct snd_soc_dai *dai, + int fssp; + int gpio; + +- lrclk_div = snd_soc_params_to_frame_size(params); ++ if (pcm512x->lrclk_div) ++ lrclk_div = pcm512x->lrclk_div; ++ else ++ lrclk_div = snd_soc_params_to_frame_size(params); + if (lrclk_div == 0) { + dev_err(dev, "No LRCLK?\n"); + return -EINVAL; +@@ -1319,10 +1323,32 @@ static int pcm512x_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) + return 0; + } + ++static int pcm512x_set_tdm_slot(struct snd_soc_dai *dai, ++ unsigned int tx_mask, unsigned int rx_mask, ++ int slots, int width) ++{ ++ struct snd_soc_codec *codec = dai->codec; ++ struct pcm512x_priv *pcm512x = snd_soc_codec_get_drvdata(codec); ++ ++ switch (slots) { ++ case 0: ++ pcm512x->lrclk_div = 0; ++ return 0; ++ case 2: ++ if (tx_mask != 0x03 || rx_mask != 0x03) ++ return -EINVAL; ++ pcm512x->lrclk_div = slots * width; ++ return 0; ++ default: ++ return -EINVAL; ++ } ++} ++ + static const struct snd_soc_dai_ops pcm512x_dai_ops = { + .startup = pcm512x_dai_startup, + .hw_params = pcm512x_hw_params, + .set_fmt = pcm512x_set_fmt, ++ .set_tdm_slot = pcm512x_set_tdm_slot, + }; + + static struct snd_soc_dai_driver pcm512x_dai = { + +From eb80ee17d8e1980a0893d3c84ce7402706856afe Mon Sep 17 00:00:00 2001 +From: Matthias Reichl +Date: Thu, 22 Feb 2018 13:07:53 +0100 +Subject: [PATCH 244/257] ASoC: allo-boss-dac: transmit S24_LE with 64 BCLK + cycles + +Signed-off-by: Matthias Reichl +--- + sound/soc/bcm/allo-boss-dac.c | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/sound/soc/bcm/allo-boss-dac.c b/sound/soc/bcm/allo-boss-dac.c +index 26c37da070176330abddc7d2d689dcbb43bd78c2..08b710c7babc6598f1555ccfeca0af1b0c2e49c5 100644 +--- a/sound/soc/bcm/allo-boss-dac.c ++++ b/sound/soc/bcm/allo-boss-dac.c +@@ -273,6 +273,8 @@ static int snd_allo_boss_hw_params( + { + int ret = 0; + struct snd_soc_pcm_runtime *rtd = substream->private_data; ++ int channels = params_channels(params); ++ int width = snd_pcm_format_physical_width(params_format(params)); + + if (snd_soc_allo_boss_master) { + struct snd_soc_codec *codec = rtd->codec; +@@ -282,7 +284,16 @@ static int snd_allo_boss_hw_params( + + ret = snd_allo_boss_update_rate_den( + substream, params); ++ if (ret) ++ return ret; + } ++ ++ ret = snd_soc_dai_set_tdm_slot(rtd->cpu_dai, 0x03, 0x03, ++ channels, width); ++ if (ret) ++ return ret; ++ ret = snd_soc_dai_set_tdm_slot(rtd->codec_dai, 0x03, 0x03, ++ channels, width); + return ret; + } + + +From 5d934ce5606d7209c2a9b5426a920bda5cce5df4 Mon Sep 17 00:00:00 2001 +From: Matthias Reichl +Date: Thu, 22 Feb 2018 13:09:30 +0100 +Subject: [PATCH 245/257] ASoC: hifiberry_dacplus: transmit S24_LE with 64 BCLK + cycles + +Signed-off-by: Matthias Reichl +--- + sound/soc/bcm/hifiberry_dacplus.c | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/sound/soc/bcm/hifiberry_dacplus.c b/sound/soc/bcm/hifiberry_dacplus.c +index b32dae9d3b1d7dc687e071a75462444c820c00c4..e36c4ba1e9a617f46bc63f212fa7fcb2581ba211 100644 +--- a/sound/soc/bcm/hifiberry_dacplus.c ++++ b/sound/soc/bcm/hifiberry_dacplus.c +@@ -221,16 +221,27 @@ static int snd_rpi_hifiberry_dacplus_hw_params( + { + int ret = 0; + struct snd_soc_pcm_runtime *rtd = substream->private_data; ++ int channels = params_channels(params); ++ int width = 32; + + if (snd_rpi_hifiberry_is_dacpro) { + struct snd_soc_codec *codec = rtd->codec; + ++ width = snd_pcm_format_physical_width(params_format(params)); ++ + snd_rpi_hifiberry_dacplus_set_sclk(codec, + params_rate(params)); + + ret = snd_rpi_hifiberry_dacplus_update_rate_den( + substream, params); + } ++ ++ ret = snd_soc_dai_set_tdm_slot(rtd->cpu_dai, 0x03, 0x03, ++ channels, width); ++ if (ret) ++ return ret; ++ ret = snd_soc_dai_set_tdm_slot(rtd->codec_dai, 0x03, 0x03, ++ channels, width); + return ret; + } + + +From 2a892783b41a23136412cce06f95940df2c24c1d Mon Sep 17 00:00:00 2001 +From: Giedrius +Date: Sat, 24 Feb 2018 14:47:02 +0200 +Subject: [PATCH 246/257] Fixing memset call in pisound.c + +Signed-off-by: Giedrius Trainavicius +--- + sound/soc/bcm/pisound.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sound/soc/bcm/pisound.c b/sound/soc/bcm/pisound.c +index 09739d51b70b877e24e4f74f6aaadebd72d9ccd8..00ae628acdd296e785cd87081703adb8decafe6e 100644 +--- a/sound/soc/bcm/pisound.c ++++ b/sound/soc/bcm/pisound.c +@@ -313,7 +313,7 @@ static void spi_transfer(const uint8_t *txbuf, uint8_t *rxbuf, int len) + struct spi_transfer transfer; + struct spi_message msg; + +- memset(rxbuf, 0, sizeof(txbuf)); ++ memset(rxbuf, 0, len); + + if (!pisnd_spi_device) { + printe("pisnd_spi_device null, returning\n"); + +From beb5a978d3409e7e19a087071526259f04740756 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Mon, 26 Feb 2018 19:46:32 +0000 +Subject: [PATCH 247/257] overlays: Rework sdio overlays to allow polling + +MMC/SD interfaces support a DT property (non-removable) that disables +the usual polling required to detect card removal for a configuration +that doesn't have hardware card presence detection. This property is +required for the on-board SDIO WiFi interface, but other uses of the +interface may want the polling to be re-enabled. + +'non-removable' is a boolean DT property - true if present, false if +absent - and the overlay mechanism does not allow a property in the +base DTB to be deleted, so if the base DTB has non-removable set +(which is true for all WiFi-equipped Pis) then an overlay cannot +unset it. + +Modify the SDIO overlays to work around this problem by disabling +the mmc node and adding a clone to which non-removable may +optionally be added. + +N.B. The default state of poll_once is still true, and the overlay +does include a non-removable property, but setting poll_once to false +("off") will remove the property from the overlay before it is applied. + +See: https://github.com/raspberrypi/linux/issues/2401 + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts | 40 ++++++++++++++++------- + arch/arm/boot/dts/overlays/sdio-overlay.dts | 41 +++++++++++++++++------- + 2 files changed, 59 insertions(+), 22 deletions(-) + +diff --git a/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts b/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts +index 0b7f2c6f2603b631e1985df7fbf66749149566d6..c0898dc57036817ddb1468c5975050c756835b02 100644 +--- a/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts ++++ b/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts +@@ -8,21 +8,39 @@ + + fragment@0 { + target = <&mmc>; +- sdio_mmc: __overlay__ { +- compatible = "brcm,bcm2835-mmc"; +- pinctrl-names = "default"; +- pinctrl-0 = <&sdio_pins>; +- non-removable; +- bus-width = <1>; +- brcm,overclock-50 = <0>; +- status = "okay"; ++ __overlay__ { ++ status = "disabled"; + }; + }; + + fragment@1 { ++ target = <&soc>; ++ __overlay__ { ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ++ sdio_1bit: sdio@7e300000 { ++ compatible = "brcm,bcm2835-mmc", ++ "brcm,bcm2835-sdhci"; ++ reg = <0x7e300000 0x100>; ++ interrupts = <2 30>; ++ clocks = <&clocks 28/*BCM2835_CLOCK_EMMC*/>; ++ dmas = <&dma 11>; ++ dma-names = "rx-tx"; ++ brcm,overclock-50 = <0>; ++ status = "okay"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdio_1bit_pins>; ++ non-removable; ++ bus-width = <1>; ++ }; ++ }; ++ }; ++ ++ fragment@2 { + target = <&gpio>; + __overlay__ { +- sdio_pins: sdio_pins { ++ sdio_1bit_pins: sdio_1bit_pins { + brcm,pins = <22 23 24 25>; + brcm,function = <7>; /* ALT3 = SD1 */ + brcm,pull = <0 2 2 2>; +@@ -31,7 +49,7 @@ + }; + + __overrides__ { +- poll_once = <&sdio_mmc>,"non-removable?"; +- sdio_overclock = <&sdio_mmc>,"brcm,overclock-50:0"; ++ poll_once = <&sdio_1bit>,"non-removable?"; ++ sdio_overclock = <&sdio_1bit>,"brcm,overclock-50:0"; + }; + }; +diff --git a/arch/arm/boot/dts/overlays/sdio-overlay.dts b/arch/arm/boot/dts/overlays/sdio-overlay.dts +index 215d5e3e8a8ca4363457fed1f7425427bb5086d7..2ac7d4f5f81d7eb4af674047ae90aeb95cc8357e 100644 +--- a/arch/arm/boot/dts/overlays/sdio-overlay.dts ++++ b/arch/arm/boot/dts/overlays/sdio-overlay.dts +@@ -8,20 +8,39 @@ + + fragment@0 { + target = <&mmc>; +- sdio_mmc: __overlay__ { +- pinctrl-names = "default"; +- pinctrl-0 = <&sdio_pins>; +- non-removable; +- bus-width = <4>; +- brcm,overclock-50 = <0>; +- status = "okay"; ++ __overlay__ { ++ status = "disabled"; + }; + }; + + fragment@1 { ++ target = <&soc>; ++ __overlay__ { ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ++ sdio_ovl: sdio@7e300000 { ++ compatible = "brcm,bcm2835-mmc", ++ "brcm,bcm2835-sdhci"; ++ reg = <0x7e300000 0x100>; ++ interrupts = <2 30>; ++ clocks = <&clocks 28/*BCM2835_CLOCK_EMMC*/>; ++ dmas = <&dma 11>; ++ dma-names = "rx-tx"; ++ brcm,overclock-50 = <0>; ++ status = "okay"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdio_ovl_pins>; ++ non-removable; ++ bus-width = <1>; ++ }; ++ }; ++ }; ++ ++ fragment@2 { + target = <&gpio>; + __overlay__ { +- sdio_pins: sdio_pins { ++ sdio_ovl_pins: sdio_ovl_pins { + brcm,pins = <22 23 24 25 26 27>; + brcm,function = <7>; /* ALT3 = SD1 */ + brcm,pull = <0 2 2 2 2 2>; +@@ -30,8 +49,8 @@ + }; + + __overrides__ { +- poll_once = <&sdio_mmc>,"non-removable?"; +- bus_width = <&sdio_mmc>,"bus-width:0"; +- sdio_overclock = <&sdio_mmc>,"brcm,overclock-50:0"; ++ poll_once = <&sdio_ovl>,"non-removable?"; ++ bus_width = <&sdio_ovl>,"bus-width:0"; ++ sdio_overclock = <&sdio_ovl>,"brcm,overclock-50:0"; + }; + }; + +From 56455d2713809a9295c2f71b0ac71a38a6156edf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= +Date: Sat, 24 Feb 2018 13:41:25 +0100 +Subject: [PATCH 248/257] firmware/raspberrypi: Add a get_throttled sysfs file +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Under-voltage due to inadequate power supplies is a recurring problem for +new Raspberry Pi users. There are visual indications that an +under-voltage situation is occuring like blinking power led and a +lightning icon on the desktop (not shown when using the vc4 driver), but +for new users it's not obvious that this signifies a critical situation. + +This patch provides a twofold improvement to the situation: + +Firstly it logs under-voltage events to the kernel log. This provides +information also for headless installations. + +Secondly it provides a sysfs file to read the value. This improves on +'vcgencmd' by providing change notification. Userspace can poll on the +file and be notified of changes to the value. +A script can poll the file and use dbus notification to put a windows on +the desktop with information about the severity with a recommendation to +change the power supply. A link to more information can also be provided. +Only changes to the sticky bits are reported (cleared between readings). + +Signed-off-by: Noralf Trønnes +--- + drivers/firmware/raspberrypi.c | 108 +++++++++++++++++++++++++++++ + include/soc/bcm2835/raspberrypi-firmware.h | 1 + + 2 files changed, 109 insertions(+) + +diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c +index f261b64d1657c02290904d841e1f087c34e27ded..d0d36c17f4fceba5ed3f76da059d4d6300026adf 100644 +--- a/drivers/firmware/raspberrypi.c ++++ b/drivers/firmware/raspberrypi.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + + #define MBOX_MSG(chan, data28) (((data28) & ~0xf) | ((chan) & 0xf)) +@@ -21,11 +22,14 @@ + #define MBOX_DATA28(msg) ((msg) & ~0xf) + #define MBOX_CHAN_PROPERTY 8 + ++#define UNDERVOLTAGE_BIT BIT(0) ++ + struct rpi_firmware { + struct mbox_client cl; + struct mbox_chan *chan; /* The property channel. */ + struct completion c; + u32 enabled; ++ struct delayed_work get_throttled_poll_work; + }; + + static struct platform_device *g_pdev; +@@ -166,6 +170,101 @@ int rpi_firmware_property(struct rpi_firmware *fw, + } + EXPORT_SYMBOL_GPL(rpi_firmware_property); + ++static int rpi_firmware_get_throttled(struct rpi_firmware *fw, u32 *value) ++{ ++ static ktime_t old_timestamp; ++ static u32 old_value; ++ u32 new_sticky, old_sticky, new_uv, old_uv; ++ ktime_t new_timestamp; ++ s64 elapsed_ms; ++ int ret; ++ ++ if (!fw) ++ return -EBUSY; ++ ++ /* ++ * We can't run faster than the sticky shift (100ms) since we get ++ * flipping in the sticky bits that are cleared. ++ * This happens on polling, so just return the previous value. ++ */ ++ new_timestamp = ktime_get(); ++ elapsed_ms = ktime_ms_delta(new_timestamp, old_timestamp); ++ if (elapsed_ms < 150) { ++ *value = old_value; ++ return 0; ++ } ++ old_timestamp = new_timestamp; ++ ++ /* Clear sticky bits */ ++ *value = 0xffff; ++ ++ ret = rpi_firmware_property(fw, RPI_FIRMWARE_GET_THROTTLED, ++ value, sizeof(*value)); ++ if (ret) ++ return ret; ++ ++ new_sticky = *value >> 16; ++ old_sticky = old_value >> 16; ++ old_value = *value; ++ ++ /* Only notify about changes in the sticky bits */ ++ if (new_sticky == old_sticky) ++ return 0; ++ ++ new_uv = new_sticky & UNDERVOLTAGE_BIT; ++ old_uv = old_sticky & UNDERVOLTAGE_BIT; ++ ++ if (new_uv != old_uv) { ++ if (new_uv) ++ pr_crit("Under-voltage detected! (0x%08x)\n", *value); ++ else ++ pr_info("Voltage normalised (0x%08x)\n", *value); ++ } ++ ++ sysfs_notify(&fw->cl.dev->kobj, NULL, "get_throttled"); ++ ++ return 0; ++} ++ ++static void get_throttled_poll(struct work_struct *work) ++{ ++ struct rpi_firmware *fw = container_of(work, struct rpi_firmware, ++ get_throttled_poll_work.work); ++ u32 dummy; ++ int ret; ++ ++ ret = rpi_firmware_get_throttled(fw, &dummy); ++ if (ret) ++ pr_debug("%s: Failed to read value (%d)", __func__, ret); ++ ++ schedule_delayed_work(&fw->get_throttled_poll_work, 2 * HZ); ++} ++ ++static ssize_t get_throttled_show(struct device *dev, ++ struct device_attribute *attr, char *buf) ++{ ++ struct rpi_firmware *fw = dev_get_drvdata(dev); ++ u32 value; ++ int ret; ++ ++ ret = rpi_firmware_get_throttled(fw, &value); ++ if (ret) ++ return ret; ++ ++ return sprintf(buf, "%x\n", value); ++} ++ ++static DEVICE_ATTR_RO(get_throttled); ++ ++static struct attribute *rpi_firmware_dev_attrs[] = { ++ &dev_attr_get_throttled.attr, ++ NULL, ++}; ++ ++static const struct attribute_group rpi_firmware_dev_group = { ++ .attrs = rpi_firmware_dev_attrs, ++}; ++ + static void + rpi_firmware_print_firmware_revision(struct rpi_firmware *fw) + { +@@ -190,6 +289,11 @@ static int rpi_firmware_probe(struct platform_device *pdev) + { + struct device *dev = &pdev->dev; + struct rpi_firmware *fw; ++ int ret; ++ ++ ret = devm_device_add_group(dev, &rpi_firmware_dev_group); ++ if (ret) ++ return ret; + + fw = devm_kzalloc(dev, sizeof(*fw), GFP_KERNEL); + if (!fw) +@@ -208,12 +312,15 @@ static int rpi_firmware_probe(struct platform_device *pdev) + } + + init_completion(&fw->c); ++ INIT_DELAYED_WORK(&fw->get_throttled_poll_work, get_throttled_poll); + + platform_set_drvdata(pdev, fw); + g_pdev = pdev; + + rpi_firmware_print_firmware_revision(fw); + ++ schedule_delayed_work(&fw->get_throttled_poll_work, 0); ++ + return 0; + } + +@@ -221,6 +328,7 @@ static int rpi_firmware_remove(struct platform_device *pdev) + { + struct rpi_firmware *fw = platform_get_drvdata(pdev); + ++ cancel_delayed_work_sync(&fw->get_throttled_poll_work); + mbox_free_channel(fw->chan); + g_pdev = NULL; + +diff --git a/include/soc/bcm2835/raspberrypi-firmware.h b/include/soc/bcm2835/raspberrypi-firmware.h +index cbd1674570433fc591df89f68c892b338a159e82..95cb67be1d58c8ac8e4f4d379b03e662aa76d690 100644 +--- a/include/soc/bcm2835/raspberrypi-firmware.h ++++ b/include/soc/bcm2835/raspberrypi-firmware.h +@@ -77,6 +77,7 @@ enum rpi_firmware_property_tag { + RPI_FIRMWARE_GET_EDID_BLOCK = 0x00030020, + RPI_FIRMWARE_GET_CUSTOMER_OTP = 0x00030021, + RPI_FIRMWARE_GET_DOMAIN_STATE = 0x00030030, ++ RPI_FIRMWARE_GET_THROTTLED = 0x00030046, + RPI_FIRMWARE_SET_CLOCK_STATE = 0x00038001, + RPI_FIRMWARE_SET_CLOCK_RATE = 0x00038002, + RPI_FIRMWARE_SET_VOLTAGE = 0x00038003, + +From d4178a4bc4e901f280c9c92a69e635cab921231d Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Wed, 28 Feb 2018 21:29:42 +0000 +Subject: [PATCH 249/257] overlays: Add overlay for PiBell soundcard + +This overlay is presented as another example of using the simple card +driver. + +See: https://www.raspberrypi.org/forums/viewtopic.php?f=44&t=99784&p=1279490#p1278971 + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/Makefile | 1 + + arch/arm/boot/dts/overlays/README | 7 +++ + arch/arm/boot/dts/overlays/pibell-overlay.dts | 81 +++++++++++++++++++++++++++ + 3 files changed, 89 insertions(+) + create mode 100644 arch/arm/boot/dts/overlays/pibell-overlay.dts + +diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile +index b543b2f478ab90790b662f9ffae3b6d9f8572ae4..93d4d66c4c633669fa7f19fbede4f3d67172f14a 100644 +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -76,6 +76,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + pi3-disable-bt.dtbo \ + pi3-disable-wifi.dtbo \ + pi3-miniuart-bt.dtbo \ ++ pibell.dtbo \ + piscreen.dtbo \ + piscreen2r.dtbo \ + pisound.dtbo \ +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index 4c3047a324cc03ccaf4f2c56ff3bf17421fabd3a..9a2509572a3e2880b4f6bc3a3ae983134970724d 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1182,6 +1182,13 @@ Load: dtoverlay=pi3-miniuart-bt + Params: + + ++Name: pibell ++Info: Configures the pibell audio card. ++Load: dtoverlay=pibell,= ++Params: alsaname Set the name as it appears in ALSA (default ++ "PiBell") ++ ++ + Name: piscreen + Info: PiScreen display by OzzMaker.com + Load: dtoverlay=piscreen,= +diff --git a/arch/arm/boot/dts/overlays/pibell-overlay.dts b/arch/arm/boot/dts/overlays/pibell-overlay.dts +new file mode 100644 +index 0000000000000000000000000000000000000000..6e71c159357ad55d69f3be005a0e1d064db23407 +--- /dev/null ++++ b/arch/arm/boot/dts/overlays/pibell-overlay.dts +@@ -0,0 +1,81 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "brcm,bcm2708"; ++ ++ fragment@0 { ++ target-path = "/"; ++ __overlay__ { ++ codec_out: spdif-transmitter { ++ #address-cells = <0>; ++ #size-cells = <0>; ++ #sound-dai-cells = <0>; ++ compatible = "linux,spdif-dit"; ++ status = "okay"; ++ }; ++ ++ codec_in: card-codec { ++ #sound-dai-cells = <0>; ++ compatible = "invensense,ics43432"; ++ status = "okay"; ++ }; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&i2s>; ++ __overlay__ { ++ #sound-dai-cells = <0>; ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@2 { ++ target = <&sound>; ++ snd: __overlay__ { ++ compatible = "simple-audio-card"; ++ simple-audio-card,name = "PiBell"; ++ ++ status="okay"; ++ ++ capture_link: simple-audio-card,dai-link@0 { ++ format = "i2s"; ++ ++ r_cpu_dai: cpu { ++ sound-dai = <&i2s>; ++ ++/* example TDM slot configuration ++ dai-tdm-slot-num = <2>; ++ dai-tdm-slot-width = <32>; ++*/ ++ }; ++ ++ r_codec_dai: codec { ++ sound-dai = <&codec_in>; ++ }; ++ }; ++ ++ playback_link: simple-audio-card,dai-link@1 { ++ format = "i2s"; ++ ++ p_cpu_dai: cpu { ++ sound-dai = <&i2s>; ++ ++/* example TDM slot configuration ++ dai-tdm-slot-num = <2>; ++ dai-tdm-slot-width = <32>; ++*/ ++ }; ++ ++ p_codec_dai: codec { ++ sound-dai = <&codec_out>; ++ }; ++ }; ++ }; ++ }; ++ ++ __overrides__ { ++ alsaname = <&snd>, "simple-audio-card,name"; ++ }; ++}; + +From 03fe0823947734d75b02f8b55a6e34fb2593bc41 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Wed, 28 Feb 2018 22:28:14 +0000 +Subject: [PATCH 250/257] Removing (broken) RaspiDac3 support... + +...at the request of the author. + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/Makefile | 1 - + arch/arm/boot/dts/overlays/README | 6 - + arch/arm/boot/dts/overlays/raspidac3-overlay.dts | 49 ------- + arch/arm/configs/bcm2709_defconfig | 1 - + arch/arm/configs/bcmrpi_defconfig | 1 - + arch/arm64/configs/bcmrpi3_defconfig | 1 - + sound/soc/bcm/Kconfig | 8 -- + sound/soc/bcm/Makefile | 2 - + sound/soc/bcm/raspidac3.c | 172 ----------------------- + 9 files changed, 241 deletions(-) + delete mode 100644 arch/arm/boot/dts/overlays/raspidac3-overlay.dts + delete mode 100644 sound/soc/bcm/raspidac3.c + +diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile +index 93d4d66c4c633669fa7f19fbede4f3d67172f14a..e3a7218de94aeeec52eba746ea01491f1e075b79 100644 +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -89,7 +89,6 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + pwm-2chan.dtbo \ + pwm-ir-tx.dtbo \ + qca7000.dtbo \ +- raspidac3.dtbo \ + rotary-encoder.dtbo \ + rpi-backlight.dtbo \ + rpi-cirrus-wm5102.dtbo \ +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index 9a2509572a3e2880b4f6bc3a3ae983134970724d..d72ed0a725ed3f84002579e79e7a6c249f38c661 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1350,12 +1350,6 @@ Params: int_pin GPIO pin for interrupt signal (default 23) + speed SPI bus speed (default 12 MHz) + + +-Name: raspidac3 +-Info: Configures the RaspiDAV Rev.3x audio card +-Load: dtoverlay=raspidac3 +-Params: +- +- + Name: rotary-encoder + Info: Overlay for GPIO connected rotary encoder. + Load: dtoverlay=rotary-encoder,= +diff --git a/arch/arm/boot/dts/overlays/raspidac3-overlay.dts b/arch/arm/boot/dts/overlays/raspidac3-overlay.dts +deleted file mode 100644 +index 2c3c97813f22c94eff6da2193aff0920ac7c39b1..0000000000000000000000000000000000000000 +--- a/arch/arm/boot/dts/overlays/raspidac3-overlay.dts ++++ /dev/null +@@ -1,49 +0,0 @@ +-// Definitions for RaspiDACv3 +-/dts-v1/; +-/plugin/; +- +-/ { +- compatible = "brcm,bcm2708"; +- +- fragment@0 { +- target = <&i2s>; +- __overlay__ { +- status = "okay"; +- }; +- }; +- +- fragment@1 { +- target = <&i2c1>; +- __overlay__ { +- #address-cells = <1>; +- #size-cells = <0>; +- status = "okay"; +- +- pcm5122@4c { +- #sound-dai-cells = <0>; +- compatible = "ti,pcm5122"; +- reg = <0x4c>; +- AVDD-supply = <&vdd_3v3_reg>; +- DVDD-supply = <&vdd_3v3_reg>; +- CPVDD-supply = <&vdd_3v3_reg>; +- status = "okay"; +- }; +- +- tpa6130a2: tpa6130a2@60 { +- compatible = "ti,tpa6130a2"; +- reg = <0x60>; +- Vdd-supply = <&vdd_3v3_reg>; +- status = "okay"; +- }; +- }; +- }; +- +- fragment@2 { +- target = <&sound>; +- __overlay__ { +- compatible = "jg,raspidacv3"; +- i2s-controller = <&i2s>; +- status = "okay"; +- }; +- }; +-}; +diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig +index b04b9737c7aeeae44029e9eb7e865635b5e02a2f..d7594861aeb69942d988d0d1ccdf0471daede85c 100644 +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -879,7 +879,6 @@ CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC=m + CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI=m + CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m + CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI=m +-CONFIG_SND_BCM2708_SOC_RASPIDAC3=m + CONFIG_SND_BCM2708_SOC_ADAU1977_ADC=m + CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD=m + CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD=m +diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig +index 7af3dd3cc385ed1b8ae4a69c9ede660cf718f9ff..0df5380065218ca808606b8f4b1ac6b1989526d2 100644 +--- a/arch/arm/configs/bcmrpi_defconfig ++++ b/arch/arm/configs/bcmrpi_defconfig +@@ -872,7 +872,6 @@ CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC=m + CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI=m + CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m + CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI=m +-CONFIG_SND_BCM2708_SOC_RASPIDAC3=m + CONFIG_SND_BCM2708_SOC_ADAU1977_ADC=m + CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD=m + CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD=m +diff --git a/arch/arm64/configs/bcmrpi3_defconfig b/arch/arm64/configs/bcmrpi3_defconfig +index 1352f5d343e03083a50f0a2ba63eef5b7221ab5d..e9d7a133e0fe026eaa5ab809a87b516dde9da8f6 100644 +--- a/arch/arm64/configs/bcmrpi3_defconfig ++++ b/arch/arm64/configs/bcmrpi3_defconfig +@@ -863,7 +863,6 @@ CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC=m + CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI=m + CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC=m + CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI=m +-CONFIG_SND_BCM2708_SOC_RASPIDAC3=m + CONFIG_SND_BCM2708_SOC_ADAU1977_ADC=m + CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD=m + CONFIG_SND_DIGIDAC1_SOUNDCARD=m +diff --git a/sound/soc/bcm/Kconfig b/sound/soc/bcm/Kconfig +index 630285e4c9a35afc4638ef4742adf70404fb9975..e601eb0bfaba6984c9c827c48462c93d4172ace2 100644 +--- a/sound/soc/bcm/Kconfig ++++ b/sound/soc/bcm/Kconfig +@@ -104,14 +104,6 @@ config SND_BCM2708_SOC_IQAUDIO_DIGI + help + Say Y or M if you want to add support for IQAudIO Digital IO board. + +-config SND_BCM2708_SOC_RASPIDAC3 +- tristate "Support for RaspiDAC Rev.3x" +- depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S +- select SND_SOC_PCM512x_I2C +- select SND_SOC_TPA6130A2 +- help +- Say Y or M if you want to add support for RaspiDAC Rev.3x. +- + config SND_BCM2708_SOC_ADAU1977_ADC + tristate "Support for ADAU1977 ADC" + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S +diff --git a/sound/soc/bcm/Makefile b/sound/soc/bcm/Makefile +index 53ea8229d7ac2065176983385dd7ba85ee3915ea..2b99630f5deceffcfd07a65146bba4691b1e3e16 100644 +--- a/sound/soc/bcm/Makefile ++++ b/sound/soc/bcm/Makefile +@@ -25,7 +25,6 @@ snd-soc-rpi-dac-objs := rpi-dac.o + snd-soc-rpi-proto-objs := rpi-proto.o + snd-soc-iqaudio-dac-objs := iqaudio-dac.o + snd-soc-iqaudio-digi-objs := iqaudio_digi.o +-snd-soc-raspidac3-objs := raspidac3.o + snd-soc-audioinjector-pi-soundcard-objs := audioinjector-pi-soundcard.o + snd-soc-audioinjector-octo-soundcard-objs := audioinjector-octo-soundcard.o + snd-soc-digidac1-soundcard-objs := digidac1-soundcard.o +@@ -52,7 +51,6 @@ obj-$(CONFIG_SND_BCM2708_SOC_RPI_DAC) += snd-soc-rpi-dac.o + obj-$(CONFIG_SND_BCM2708_SOC_RPI_PROTO) += snd-soc-rpi-proto.o + obj-$(CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC) += snd-soc-iqaudio-dac.o + obj-$(CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI) += snd-soc-iqaudio-digi.o +-obj-$(CONFIG_SND_BCM2708_SOC_RASPIDAC3) += snd-soc-raspidac3.o + obj-$(CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD) += snd-soc-audioinjector-pi-soundcard.o + obj-$(CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD) += snd-soc-audioinjector-octo-soundcard.o + obj-$(CONFIG_SND_DIGIDAC1_SOUNDCARD) += snd-soc-digidac1-soundcard.o +diff --git a/sound/soc/bcm/raspidac3.c b/sound/soc/bcm/raspidac3.c +deleted file mode 100644 +index 1e45db34fe0def5eb210627d4daa552a58b29559..0000000000000000000000000000000000000000 +--- a/sound/soc/bcm/raspidac3.c ++++ /dev/null +@@ -1,172 +0,0 @@ +-/* +- * ASoC Driver for RaspiDAC v3 +- * +- * Author: Jan Grulich +- * Copyright 2015 +- * based on code by Daniel Matuschek +- * based on code by Florian Meier +- * +- * This program is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License +- * version 2 as published by the Free Software Foundation. +- * +- * This program is distributed in the hope that it will be useful, but +- * WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * General Public License for more details. +- */ +- +-#include +-#include +- +-#include +-#include +-#include +-#include +-#include +-#include +- +-#include "../codecs/pcm512x.h" +-#include "../codecs/tpa6130a2.h" +- +-/* sound card init */ +-static int snd_rpi_raspidac3_init(struct snd_soc_pcm_runtime *rtd) +-{ +- int ret; +- struct snd_soc_card *card = rtd->card; +- struct snd_soc_codec *codec = rtd->codec; +- snd_soc_update_bits(codec, PCM512x_GPIO_EN, 0x08, 0x08); +- snd_soc_update_bits(codec, PCM512x_GPIO_OUTPUT_4, 0xf, 0x02); +- snd_soc_update_bits(codec, PCM512x_GPIO_CONTROL_1, 0x08,0x00); +- +- ret = snd_soc_limit_volume(card, "Digital Playback Volume", 207); +- if (ret < 0) +- dev_warn(card->dev, "Failed to set volume limit: %d\n", ret); +- else { +- struct snd_kcontrol *kctl; +- +- ret = snd_soc_limit_volume(card, +- "TPA6130A2 Headphone Playback Volume", +- 54); +- if (ret < 0) +- dev_warn(card->dev, "Failed to set TPA6130A2 volume limit: %d\n", +- ret); +- kctl = snd_soc_card_get_kcontrol(card, +- "TPA6130A2 Headphone Playback Volume"); +- if (kctl) { +- strcpy(kctl->id.name, "Headphones Playback Volume"); +- /* disable the volume dB scale so alsamixer works */ +- kctl->vd[0].access = SNDRV_CTL_ELEM_ACCESS_READWRITE; +- } +- +- kctl = snd_soc_card_get_kcontrol(card, +- "TPA6130A2 Headphone Playback Switch"); +- if (kctl) +- strcpy(kctl->id.name, "Headphones Playback Switch"); +- } +- +- return 0; +-} +- +-/* startup */ +-static int snd_rpi_raspidac3_startup(struct snd_pcm_substream *substream) { +- struct snd_soc_pcm_runtime *rtd = substream->private_data; +- struct snd_soc_codec *codec = rtd->codec; +- snd_soc_update_bits(codec, PCM512x_GPIO_CONTROL_1, 0x08,0x08); +- return 0; +-} +- +-/* shutdown */ +-static void snd_rpi_raspidac3_shutdown(struct snd_pcm_substream *substream) { +- struct snd_soc_pcm_runtime *rtd = substream->private_data; +- struct snd_soc_codec *codec = rtd->codec; +- snd_soc_update_bits(codec, PCM512x_GPIO_CONTROL_1, 0x08,0x00); +-} +- +-/* machine stream operations */ +-static struct snd_soc_ops snd_rpi_raspidac3_ops = { +- .startup = snd_rpi_raspidac3_startup, +- .shutdown = snd_rpi_raspidac3_shutdown, +-}; +- +-/* interface setup */ +-static struct snd_soc_dai_link snd_rpi_raspidac3_dai[] = { +-{ +- .name = "RaspiDAC Rev.3x", +- .stream_name = "RaspiDAC HiFi", +- .cpu_dai_name = "bcm2708-i2s.0", +- .codec_dai_name = "pcm512x-hifi", +- .platform_name = "bcm2708-i2s.0", +- .codec_name = "pcm512x.1-004c", +- .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | +- SND_SOC_DAIFMT_CBS_CFS, +- .ops = &snd_rpi_raspidac3_ops, +- .init = snd_rpi_raspidac3_init, +-}, +-}; +- +-/* audio machine driver */ +-static struct snd_soc_card snd_rpi_raspidac3 = { +- .name = "RaspiDAC Rev.3x HiFi Audio Card", +- .owner = THIS_MODULE, +- .dai_link = snd_rpi_raspidac3_dai, +- .num_links = ARRAY_SIZE(snd_rpi_raspidac3_dai), +-}; +- +-/* sound card test */ +-static int snd_rpi_raspidac3_probe(struct platform_device *pdev) +-{ +- int ret = 0; +- +- snd_rpi_raspidac3.dev = &pdev->dev; +- +- if (pdev->dev.of_node) { +- struct device_node *i2s_node; +- struct snd_soc_dai_link *dai = &snd_rpi_raspidac3_dai[0]; +- i2s_node = of_parse_phandle(pdev->dev.of_node, +- "i2s-controller", 0); +- +- if (i2s_node) { +- dai->cpu_dai_name = NULL; +- dai->cpu_of_node = i2s_node; +- dai->platform_name = NULL; +- dai->platform_of_node = i2s_node; +- } +- } +- +- ret = snd_soc_register_card(&snd_rpi_raspidac3); +- if (ret && ret != -EPROBE_DEFER) +- dev_err(&pdev->dev, +- "snd_soc_register_card() failed: %d\n", ret); +- +- return ret; +-} +- +-/* sound card disconnect */ +-static int snd_rpi_raspidac3_remove(struct platform_device *pdev) +-{ +- return snd_soc_unregister_card(&snd_rpi_raspidac3); +-} +- +-static const struct of_device_id raspidac3_of_match[] = { +- { .compatible = "jg,raspidacv3", }, +- {}, +-}; +-MODULE_DEVICE_TABLE(of, raspidac3_of_match); +- +-/* sound card platform driver */ +-static struct platform_driver snd_rpi_raspidac3_driver = { +- .driver = { +- .name = "snd-rpi-raspidac3", +- .owner = THIS_MODULE, +- .of_match_table = raspidac3_of_match, +- }, +- .probe = snd_rpi_raspidac3_probe, +- .remove = snd_rpi_raspidac3_remove, +-}; +- +-module_platform_driver(snd_rpi_raspidac3_driver); +- +-MODULE_AUTHOR("Jan Grulich "); +-MODULE_DESCRIPTION("ASoC Driver for RaspiDAC Rev.3x"); +-MODULE_LICENSE("GPL v2"); + +From cae3948fb35153faddc65101cdf33d47870d8316 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Thu, 1 Mar 2018 21:36:30 +0000 +Subject: [PATCH 251/257] overlays: Add updated mmc1 alias to sdio overlays + +In the downstream RPi kernel, aliases are used to assign instance +numbers to the SD/MMC interfaces. The updated sdio overlays +effectively rename the device node, so the mmc1 alias has to be +updated in order to preserve the mmc1 numbering, otherwise the device +will appear as mmc2. + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts | 8 ++++++++ + arch/arm/boot/dts/overlays/sdio-overlay.dts | 7 +++++++ + 2 files changed, 15 insertions(+) + +diff --git a/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts b/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts +index c0898dc57036817ddb1468c5975050c756835b02..297daae8faf9f41ab625e14251d5fa6cd2ee8540 100644 +--- a/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts ++++ b/arch/arm/boot/dts/overlays/sdio-1bit-overlay.dts +@@ -48,6 +48,14 @@ + }; + }; + ++ fragment@3 { ++ target-path = "/aliases"; ++ __overlay__ { ++ mmc1 = "/soc/sdio@7e300000"; ++ }; ++ }; ++ ++ + __overrides__ { + poll_once = <&sdio_1bit>,"non-removable?"; + sdio_overclock = <&sdio_1bit>,"brcm,overclock-50:0"; +diff --git a/arch/arm/boot/dts/overlays/sdio-overlay.dts b/arch/arm/boot/dts/overlays/sdio-overlay.dts +index 2ac7d4f5f81d7eb4af674047ae90aeb95cc8357e..685b65a858e89c1f379dc4c282a29f0703faad83 100644 +--- a/arch/arm/boot/dts/overlays/sdio-overlay.dts ++++ b/arch/arm/boot/dts/overlays/sdio-overlay.dts +@@ -48,6 +48,13 @@ + }; + }; + ++ fragment@3 { ++ target-path = "/aliases"; ++ __overlay__ { ++ mmc1 = "/soc/sdio@7e300000"; ++ }; ++ }; ++ + __overrides__ { + poll_once = <&sdio_ovl>,"non-removable?"; + bus_width = <&sdio_ovl>,"bus-width:0"; + +From 258093ab62698c1c98f6e36ffe301fa64dd86d26 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Fri, 2 Mar 2018 13:26:51 +0000 +Subject: [PATCH 252/257] config: Enable CONFIG_GPIO_MOCKUP module + +--- + arch/arm/configs/bcm2709_defconfig | 2 +- + arch/arm/configs/bcmrpi_defconfig | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig +index d7594861aeb69942d988d0d1ccdf0471daede85c..cbc3a785848f97890c89168e176a61c960480cc5 100644 +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -615,9 +615,9 @@ CONFIG_PPS=m + CONFIG_PPS_CLIENT_LDISC=m + CONFIG_PPS_CLIENT_GPIO=m + CONFIG_PINCTRL_MCP23S08=m +-CONFIG_GPIO_SYSFS=y + CONFIG_GPIO_BCM_EXP=y + CONFIG_GPIO_BCM_VIRT=y ++CONFIG_GPIO_MOCKUP=m + CONFIG_GPIO_PCF857X=m + CONFIG_GPIO_ARIZONA=m + CONFIG_GPIO_STMPE=y +diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig +index 0df5380065218ca808606b8f4b1ac6b1989526d2..e2cb9979eebd97472fdce173a377a31c746a9e03 100644 +--- a/arch/arm/configs/bcmrpi_defconfig ++++ b/arch/arm/configs/bcmrpi_defconfig +@@ -610,7 +610,7 @@ CONFIG_PPS=m + CONFIG_PPS_CLIENT_LDISC=m + CONFIG_PPS_CLIENT_GPIO=m + CONFIG_PINCTRL_MCP23S08=m +-CONFIG_GPIO_SYSFS=y ++CONFIG_GPIO_MOCKUP=m + CONFIG_GPIO_PCF857X=m + CONFIG_GPIO_ARIZONA=m + CONFIG_GPIO_STMPE=y + +From 7a2f2e265ab491f8f6638bfc7ad1b4825194cbb6 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Sat, 3 Mar 2018 14:18:03 +0000 +Subject: [PATCH 253/257] overlays: Add 'upstream' overlay + +The 'upstream' overlay makes the necessary changes for a downstream +.dtb to be used with an upstream kernel. It is currently made up from +three other overlays - vc4-kms-v3d, dwc2 and upstream-aux-interrupt. +The VPU firmware will soon be made to automatically load this overlay +when an upstream kernel is detected (using the trailer supplied by the +mkknlimg script). + +See: https://github.com/raspberrypi/linux/pull/2393 + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/Makefile | 1 + + arch/arm/boot/dts/overlays/README | 10 +- + arch/arm/boot/dts/overlays/upstream-overlay.dts | 154 ++++++++++++++++++++++++ + 3 files changed, 164 insertions(+), 1 deletion(-) + create mode 100644 arch/arm/boot/dts/overlays/upstream-overlay.dts + +diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile +index e3a7218de94aeeec52eba746ea01491f1e075b79..64ea686d649524966d68063b67b3016b65573053 100644 +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -123,6 +123,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + tinylcd35.dtbo \ + uart0.dtbo \ + uart1.dtbo \ ++ upstream.dtbo \ + upstream-aux-interrupt.dtbo \ + vc4-fkms-v3d.dtbo \ + vc4-kms-v3d.dtbo \ +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index d72ed0a725ed3f84002579e79e7a6c249f38c661..d831fcfb5203069ab88bf19265e3c07733b1e41a 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1731,9 +1731,17 @@ Params: txd1_pin GPIO pin for TXD1 (14, 32 or 40 - default 14) + rxd1_pin GPIO pin for RXD1 (15, 33 or 41 - default 15) + + ++Name: upstream ++Info: Allow usage of downstream .dtb with upstream kernel. Comprises ++ vc4-kms-v3d, dwc2 and upstream-aux-interrupt overlays. ++Load: dtoverlay=upstream ++Params: ++ ++ + Name: upstream-aux-interrupt + Info: Allow usage of downstream .dtb with upstream kernel by binding AUX +- devices directly to the shared AUX interrupt line. ++ devices directly to the shared AUX interrupt line. One of the parts ++ of the 'upstream' overlay + Load: dtoverlay=upstream-aux-interrupt + Params: + +diff --git a/arch/arm/boot/dts/overlays/upstream-overlay.dts b/arch/arm/boot/dts/overlays/upstream-overlay.dts +new file mode 100644 +index 0000000000000000000000000000000000000000..3890d900486f0b529ad2b4e3b3c1407b536f7c60 +--- /dev/null ++++ b/arch/arm/boot/dts/overlays/upstream-overlay.dts +@@ -0,0 +1,154 @@ ++// redo: ovmerge -c vc4-kms-v3d-overlay.dts,cma-96 dwc2-overlay.dts,dr_mode=otg upstream-aux-interrupt-overlay.dts, ++ ++/dts-v1/; ++/plugin/; ++ ++#include ++ ++/ { ++ compatible = "brcm,bcm2835", "brcm,bcm2708", "brcm,bcm2709"; ++ fragment@0 { ++ target-path = "/chosen"; ++ __dormant__ { ++ bootargs = "cma=256M"; ++ }; ++ }; ++ fragment@1 { ++ target-path = "/chosen"; ++ __dormant__ { ++ bootargs = "cma=192M"; ++ }; ++ }; ++ fragment@2 { ++ target-path = "/chosen"; ++ __dormant__ { ++ bootargs = "cma=128M"; ++ }; ++ }; ++ fragment@3 { ++ target-path = "/chosen"; ++ __overlay__ { ++ bootargs = "cma=96M"; ++ }; ++ }; ++ fragment@4 { ++ target-path = "/chosen"; ++ __dormant__ { ++ bootargs = "cma=64M"; ++ }; ++ }; ++ fragment@5 { ++ target = <&i2c2>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ fragment@6 { ++ target = <&fb>; ++ __overlay__ { ++ status = "disabled"; ++ }; ++ }; ++ fragment@7 { ++ target = <&pixelvalve0>; ++ __overlay__ { ++ interrupts = <2 13>; ++ status = "okay"; ++ }; ++ }; ++ fragment@8 { ++ target = <&pixelvalve1>; ++ __overlay__ { ++ interrupts = <2 14>; ++ status = "okay"; ++ }; ++ }; ++ fragment@9 { ++ target = <&pixelvalve2>; ++ __overlay__ { ++ interrupts = <2 10>; ++ status = "okay"; ++ }; ++ }; ++ fragment@10 { ++ target = <&hvs>; ++ __overlay__ { ++ interrupts = <2 1>; ++ status = "okay"; ++ }; ++ }; ++ fragment@11 { ++ target = <&hdmi>; ++ __overlay__ { ++ interrupts = <2 8>, <2 9>; ++ status = "okay"; ++ }; ++ }; ++ fragment@12 { ++ target = <&v3d>; ++ __overlay__ { ++ interrupts = <1 10>; ++ status = "okay"; ++ }; ++ }; ++ fragment@13 { ++ target = <&vc4>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ fragment@14 { ++ target-path = "/soc/dma"; ++ __overlay__ { ++ brcm,dma-channel-mask = <0x7f35>; ++ }; ++ }; ++ fragment@15 { ++ target = <&clocks>; ++ __overlay__ { ++ claim-clocks = ; ++ }; ++ }; ++ fragment@16 { ++ target = <&vec>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ fragment@17 { ++ target = <&usb>; ++ #address-cells = <1>; ++ #size-cells = <1>; ++ dwc2_usb: __overlay__ { ++ compatible = "brcm,bcm2835-usb"; ++ reg = <0x7e980000 0x10000>; ++ interrupts = <1 9>; ++ dr_mode = "otg"; ++ g-np-tx-fifo-size = <32>; ++ g-rx-fifo-size = <256>; ++ g-tx-fifo-size = <512 512 512 512 512 768>; ++ status = "okay"; ++ }; ++ }; ++ fragment@18 { ++ target = <&uart1>; ++ __overlay__ { ++ interrupt-parent = <&intc>; ++ interrupts = <0x1 0x1d>; ++ }; ++ }; ++ fragment@19 { ++ target = <&spi1>; ++ __overlay__ { ++ interrupt-parent = <&intc>; ++ interrupts = <0x1 0x1d>; ++ }; ++ }; ++ fragment@20 { ++ target = <&spi2>; ++ __overlay__ { ++ interrupt-parent = <&intc>; ++ interrupts = <0x1 0x1d>; ++ }; ++ }; ++}; + +From 22c41b3889c8012ddc3f820099b5924557199969 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Sat, 3 Mar 2018 16:25:19 +0000 +Subject: [PATCH 254/257] audioinjector-octo: Add continuous clock feature + +By user request, add a switch to prevent the clocks being stopped when +the stream is paused, stopped or shutdown. Provide access to the switch +by adding a 'non-stop-clocks' parameter to the audioinjector-addons +overlay. + +See: https://github.com/raspberrypi/linux/issues/2409 + +Signed-off-by: Phil Elwell +--- + arch/arm/boot/dts/overlays/README | 5 +++-- + .../dts/overlays/audioinjector-addons-overlay.dts | 6 +++++- + sound/soc/bcm/audioinjector-octo-soundcard.c | 19 +++++++++++-------- + 3 files changed, 19 insertions(+), 11 deletions(-) + +diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README +index d831fcfb5203069ab88bf19265e3c07733b1e41a..a850674f6d741ec5a343c05ec6ccb653a12c4f89 100644 +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -357,8 +357,9 @@ Params: interrupt GPIO used for INT (default 23) + + Name: audioinjector-addons + Info: Configures the audioinjector.net audio add on soundcards +-Load: dtoverlay=audioinjector-addons +-Params: ++Load: dtoverlay=audioinjector-addons,= ++Params: non-stop-clocks Keeps the clocks running even when the stream ++ is paused or stopped (default off) + + + Name: audioinjector-wm8731-audio +diff --git a/arch/arm/boot/dts/overlays/audioinjector-addons-overlay.dts b/arch/arm/boot/dts/overlays/audioinjector-addons-overlay.dts +index a40bb1193a4cebc5672709e8db861e1167d3a699..60b2e94f2c9a68c15c519749e00e171bda8e40ff 100644 +--- a/arch/arm/boot/dts/overlays/audioinjector-addons-overlay.dts ++++ b/arch/arm/boot/dts/overlays/audioinjector-addons-overlay.dts +@@ -42,7 +42,7 @@ + + fragment@2 { + target = <&sound>; +- __overlay__ { ++ snd: __overlay__ { + compatible = "ai,audioinjector-octo-soundcard"; + mult-gpios = <&gpio 27 0>, <&gpio 22 0>, <&gpio 23 0>, + <&gpio 24 0>; +@@ -52,4 +52,8 @@ + status = "okay"; + }; + }; ++ ++ __overrides__ { ++ non-stop-clocks = <&snd>, "non-stop-clocks?"; ++ }; + }; +diff --git a/sound/soc/bcm/audioinjector-octo-soundcard.c b/sound/soc/bcm/audioinjector-octo-soundcard.c +index 5e79f4eff93a21ed3495c77a90f73525695cb3d5..2ad83c40473f91223b63418cfa8f291ab7bf17af 100644 +--- a/sound/soc/bcm/audioinjector-octo-soundcard.c ++++ b/sound/soc/bcm/audioinjector-octo-soundcard.c +@@ -29,6 +29,7 @@ + static struct gpio_descs *mult_gpios; + static struct gpio_desc *codec_rst_gpio; + static unsigned int audioinjector_octo_rate; ++static bool non_stop_clocks; + + static const unsigned int audioinjector_octo_rates[] = { + 96000, 48000, 32000, 24000, 16000, 8000, 88200, 44100, 29400, 22050, 14700, +@@ -133,12 +134,16 @@ static int audioinjector_octo_hw_params(struct snd_pcm_substream *substream, + static int audioinjector_octo_trigger(struct snd_pcm_substream *substream, + int cmd){ + int mult[4]; +- mult[0] = 0; +- mult[1] = 0; +- mult[2] = 0; +- mult[3] = 0; ++ ++ memset(mult, 0, sizeof(mult)); + + switch (cmd) { ++ case SNDRV_PCM_TRIGGER_STOP: ++ case SNDRV_PCM_TRIGGER_SUSPEND: ++ case SNDRV_PCM_TRIGGER_PAUSE_PUSH: ++ if (!non_stop_clocks) ++ break; ++ /* Drop through... */ + case SNDRV_PCM_TRIGGER_START: + case SNDRV_PCM_TRIGGER_RESUME: + case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: +@@ -177,10 +182,6 @@ static int audioinjector_octo_trigger(struct snd_pcm_substream *substream, + return -EINVAL; + } + break; +- case SNDRV_PCM_TRIGGER_STOP: +- case SNDRV_PCM_TRIGGER_SUSPEND: +- case SNDRV_PCM_TRIGGER_PAUSE_PUSH: +- break; + default: + return -EINVAL; + } +@@ -276,6 +277,8 @@ static int audioinjector_octo_probe(struct platform_device *pdev) + if (IS_ERR(codec_rst_gpio)) + return PTR_ERR(codec_rst_gpio); + ++ non_stop_clocks = of_property_read_bool(pdev->dev.of_node, "non-stop-clocks"); ++ + if (codec_rst_gpio) + gpiod_set_value(codec_rst_gpio, 1); + msleep(500); + +From 1b46b551257e64970752c2b0fe2e7d7ea2c78c3e Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Sun, 4 Mar 2018 17:20:25 -0700 +Subject: [PATCH 255/257] sound: bcm: Fix memset dereference warning +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This warning appears with GCC 6.4.0 from toolchains.bootlin.com: + +../sound/soc/bcm/allo-piano-dac-plus.c: In function ‘snd_allo_piano_dac_init’: +../sound/soc/bcm/allo-piano-dac-plus.c:711:30: warning: argument to ‘sizeof’ in ‘memset’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess] + memset(glb_ptr, 0x00, sizeof(glb_ptr)); + ^ + +Suggested-by: Phil Elwell +Signed-off-by: Nathan Chancellor +--- + sound/soc/bcm/allo-piano-dac-plus.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/sound/soc/bcm/allo-piano-dac-plus.c b/sound/soc/bcm/allo-piano-dac-plus.c +index d1ac0494967fb028921050fc7c7b51b40ff64a33..bede9bdec3c71574f459f994efdcce346affc5eb 100644 +--- a/sound/soc/bcm/allo-piano-dac-plus.c ++++ b/sound/soc/bcm/allo-piano-dac-plus.c +@@ -704,11 +704,10 @@ static int snd_allo_piano_dac_init(struct snd_soc_pcm_runtime *rtd) + struct snd_soc_card *card = rtd->card; + struct glb_pool *glb_ptr; + +- glb_ptr = kmalloc(sizeof(struct glb_pool), GFP_KERNEL); ++ glb_ptr = kzalloc(sizeof(struct glb_pool), GFP_KERNEL); + if (!glb_ptr) + return -ENOMEM; + +- memset(glb_ptr, 0x00, sizeof(glb_ptr)); + card->drvdata = glb_ptr; + glb_ptr->dual_mode = 2; + glb_ptr->set_mode = 0; + +From 0fad3793f65a71d3418db96cbc6848137b1657fa Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Sat, 3 Mar 2018 23:34:50 -0700 +Subject: [PATCH 256/257] staging: vchiq_arm: Remove unused variable +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This warning appears with GCC 6.4.0 from toolchains.bootlin.com: + +../drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c: In function ‘vchiq_open’: +../drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c:1735:7: warning: unused variable ‘ret’ [-Wunused-variable] + int ret; + ^~~ + +This variable's usage was removed by commit 3c980263c592 ("staging: +vchiq_arm: Make debugfs failure non-fatal"), making it useless. + +Signed-off-by: Nathan Chancellor +--- + drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c +index e4bad872b7e547de268648fae690524ff265f235..fe99c96fc6fcda313372eb6406f72306a1d37605 100644 +--- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c ++++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c +@@ -1732,7 +1732,6 @@ vchiq_open(struct inode *inode, struct file *file) + vchiq_log_info(vchiq_arm_log_level, "vchiq_open"); + switch (dev) { + case VCHIQ_MINOR: { +- int ret; + VCHIQ_STATE_T *state = vchiq_get_state(); + VCHIQ_INSTANCE_T instance; + + +From 07672e5376201884e0edf7f3627a20b68fd52cb8 Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Sun, 4 Mar 2018 20:09:26 -0700 +Subject: [PATCH 257/257] usb: dwb_otg: Fix unreachable switch statement + warning +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This warning appears with GCC 7.3.0 from toolchains.bootlin.com: + +../drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c: In function ‘fiq_fsm_update_hs_isoc’: +../drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c:595:61: warning: statement will never be executed [-Wswitch-unreachable] + st->hctsiz_copy.b.xfersize = nrpackets * st->hcchar_copy.b.mps; + ~~~~~~~~~~~~~~~~~^~~~ + +Signed-off-by: Nathan Chancellor +--- + drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c +index ec804c7cd06d2db897ce6f72fce29733effdd76c..ca362db1602aa935ae48ab89fc740859f72d83cd 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c +@@ -591,8 +591,8 @@ static int notrace noinline fiq_fsm_update_hs_isoc(struct fiq_state *state, int + } + + } else { +- switch (st->hcchar_copy.b.multicnt) { + st->hctsiz_copy.b.xfersize = nrpackets * st->hcchar_copy.b.mps; ++ switch (st->hcchar_copy.b.multicnt) { + case 1: + st->hctsiz_copy.b.pid = DWC_PID_DATA0; + break; diff --git a/tools/RPi/gen-rpi-linux-patch.sh b/tools/RPi/gen-rpi-linux-patch.sh index d4c402d8e8..7e44db4291 100755 --- a/tools/RPi/gen-rpi-linux-patch.sh +++ b/tools/RPi/gen-rpi-linux-patch.sh @@ -105,6 +105,14 @@ cat /tmp/dropped echo echo "Dropped patches: /tmp/dropped" +LINE_START=$(grep -n '^DROP_COMMITS="$' ${BIN}/rpi-linux-rebase.sh | awk -F: '{print $1}') +LINE_END=$(grep -n '^"$' ${BIN}/rpi-linux-rebase.sh | awk -F: '{print $1}') +while read -r msg; do + grep -qxE "drop [a-f0-9]{40} ${msg}$" /tmp/dropped || LINES+="${msg}\n" +done <<< "$(sed -n "$((LINE_START + 1)),$((LINE_END - 1))p" ${BIN}/rpi-linux-rebase.sh | grep -v "^#### " | tr -d "\\\\")" + +[ -n "${LINES}" ] && echo -e "*****\nThe following commits are no longer being dropped:\n\n${LINES}*****" + echo "New patch file : /tmp/linux-01-RPi_support.patch" echo diff --git a/tools/RPi/rpi-linux-rebase.sh b/tools/RPi/rpi-linux-rebase.sh index 6db2898a39..eea38d09e2 100755 --- a/tools/RPi/rpi-linux-rebase.sh +++ b/tools/RPi/rpi-linux-rebase.sh @@ -17,11 +17,13 @@ DROP_COMMITS=" Added Device IDs for August DVB-T 205 net: Add non-mainline source for rtl8192cu wlan net: Fix rtl8192cu build errors on other platforms +net: rtl8192cu: Normalize indentation +net: rtl8192cu: Fix implicit fallthrough warnings ARM64: Fix build break for RTL8187\/RTL8192CU wifi -fixup: rtl8192cu fixes from milhouse -rtl8192: Fixup build -rtl8192: switch to netdev->priv_destructor() Revert \"softirq: Let ksoftirqd do its job\" +#### Following commits are dropped to avoid merge conflicts #### +drm\/vc4: Release fence after signalling +i2c: bcm2835: Set up the rising\/falling edge delays " IFS=$'\n'