From a4efc52625c6eae7bdca6fb5d2ecd748b2faa388 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Fri, 14 Jul 2017 21:30:56 +0100 Subject: [PATCH] RPi: update linux support patch for linux 4.12-rc6 --- .../patches/linux/linux-01-RPi_support.patch | 736 +++++++++++------- 1 file changed, 453 insertions(+), 283 deletions(-) diff --git a/projects/RPi/patches/linux/linux-01-RPi_support.patch b/projects/RPi/patches/linux/linux-01-RPi_support.patch index 0806f8d6a8..214f9d14ec 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 33612ef3a8e990f746a28ca20a9870bb0ef23118 Mon Sep 17 00:00:00 2001 +From 6c4718e6798c6da6dadcae291ca6f94ec48320ec Mon Sep 17 00:00:00 2001 From: Steve Glendinning Date: Thu, 19 Feb 2015 18:47:12 +0000 -Subject: [PATCH 001/139] smsx95xx: fix crimes against truesize +Subject: [PATCH 001/140] 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. @@ -48,10 +48,10 @@ index 2dfca96a63b60283b89efab676932a711024a499..88843b36182f0f12175df06e3a6fb55a usbnet_skb_return(dev, ax_skb); } -From 0058b5465f80330920c6d8c47479663ea3b5fdd6 Mon Sep 17 00:00:00 2001 +From 752dc4e9c9f668b99df95fa06cc00c4e449a1ae1 Mon Sep 17 00:00:00 2001 From: Sam Nazarko Date: Fri, 1 Apr 2016 17:27:21 +0100 -Subject: [PATCH 002/139] smsc95xx: Experimental: Enable turbo_mode and +Subject: [PATCH 002/140] smsc95xx: Experimental: Enable turbo_mode and packetsize=2560 by default See: http://forum.kodi.tv/showthread.php?tid=285288 @@ -94,10 +94,10 @@ index 88843b36182f0f12175df06e3a6fb55a3a8f47e5..27813c57707c4b001646a26d8b1174a0 netif_dbg(dev, ifup, dev->net, "rx_urb_size=%ld\n", -From 9db1119cf205761bedbd6c637872f9e3776706a0 Mon Sep 17 00:00:00 2001 +From 85c90afc2d840d67d912857eb31fa01db3771022 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 17:26:38 +0000 -Subject: [PATCH 003/139] Allow mac address to be set in smsc95xx +Subject: [PATCH 003/140] Allow mac address to be set in smsc95xx Signed-off-by: popcornmix --- @@ -193,10 +193,10 @@ index 27813c57707c4b001646a26d8b1174a0162c55ec..fac7a5f8642030a7dca7807e6c4808ea eth_hw_addr_random(dev->net); netif_dbg(dev, ifup, dev->net, "MAC address set to eth_random_addr\n"); -From 96c1dc2c80c0126e9720a8ae4483fc5022110405 Mon Sep 17 00:00:00 2001 +From a52d566c2ddb772b8648dce5cc17a99791c88359 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 13 Mar 2015 12:43:36 +0000 -Subject: [PATCH 004/139] Protect __release_resource against resources without +Subject: [PATCH 004/140] Protect __release_resource against resources without parents Without this patch, removing a device tree overlay can crash here. @@ -224,10 +224,10 @@ index 9b5f04404152c296af3a96132f27cfc80ffa9af9..f8a9af6e6b915812be2ba2c1c2b40106 for (;;) { tmp = *p; -From fd122a603ed702382ea14fd6154fdfd02e183a96 Mon Sep 17 00:00:00 2001 +From 8686230cd4ff90e172ddf50422109437ec79bc33 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 18 Dec 2014 16:07:15 -0800 -Subject: [PATCH 005/139] mm: Remove the PFN busy warning +Subject: [PATCH 005/140] mm: Remove the PFN busy warning See commit dae803e165a11bc88ca8dbc07a11077caf97bbcb -- the warning is expected sometimes when using CMA. However, that commit still spams @@ -252,10 +252,10 @@ index 2302f250d6b1ba150e3c2e4e17cfb6c99574ab5b..f434dbb4aaa8845318e2d40153339b08 goto done; } -From aa5e9625500debbd8da47c94225389d2f084589d Mon Sep 17 00:00:00 2001 +From 3411e59c0a85532297e1ba3d04bb08495aabdb70 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 4 Dec 2015 17:41:50 +0000 -Subject: [PATCH 006/139] irq-bcm2836: Prevent spurious interrupts, and trap +Subject: [PATCH 006/140] irq-bcm2836: Prevent spurious interrupts, and trap them early The old arch-specific IRQ macros included a dsb to ensure the @@ -282,10 +282,10 @@ index e7463e3c08143acae3e8cc5682f918c6a0b07ebd..a8db33b50ad9ff83d284fa54fe4d3b65 #endif } else if (stat) { -From 12563ecb3cf579180e0c3ffc03856c1a219a43c4 Mon Sep 17 00:00:00 2001 +From 8dde382f29add11576386543ea212c45f12bcfb5 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 9 Feb 2017 14:33:30 +0000 -Subject: [PATCH 007/139] irq-bcm2836: Avoid "Invalid trigger warning" +Subject: [PATCH 007/140] irq-bcm2836: Avoid "Invalid trigger warning" Initialise the level for each IRQ to avoid a warning from the arm arch timer code. @@ -309,10 +309,10 @@ index a8db33b50ad9ff83d284fa54fe4d3b65f859df0f..c4e151451cf8c8ebde5225515eac2786 static void -From 9a7bbfcf2a8b0a254173f2f453b0459ab2a0a10a Mon Sep 17 00:00:00 2001 +From d89282db35984810806bce56eddceabb1bd5d98b 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/139] irqchip: bcm2835: Add FIQ support +Subject: [PATCH 008/140] irqchip: bcm2835: Add FIQ support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -441,10 +441,10 @@ index 44d7c38dde479d771f3552e914bf8c1c1f5019f7..42ff5e6a8e0d532f5b60a1e7af7cc4d9 } -From 8ec2aa88b67e803e54d074499cdd8bac617e355a Mon Sep 17 00:00:00 2001 +From 06c0ef1c72e5af05b74753f38c7311155d709383 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/139] irqchip: irq-bcm2835: Add 2836 FIQ support +Subject: [PATCH 009/140] irqchip: irq-bcm2835: Add 2836 FIQ support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -543,10 +543,10 @@ index 42ff5e6a8e0d532f5b60a1e7af7cc4d941bd5008..eccf6ed025299cb480884f5bcbe77abf for (b = 0; b < NR_BANKS; b++) { for (i = 0; i < bank_irqs[b]; i++) { -From 52f33887b335f0e9d03550c15de2f18f83d24539 Mon Sep 17 00:00:00 2001 +From 02436dccdfff25765528b30e9af666b383f5c797 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Jul 2015 10:26:09 +0100 -Subject: [PATCH 010/139] spidev: Add "spidev" compatible string to silence +Subject: [PATCH 010/140] spidev: Add "spidev" compatible string to silence warning See: https://github.com/raspberrypi/linux/issues/1054 @@ -567,10 +567,10 @@ index 9a2a79a871ba009fcfa8b7e2b52002c8845d94ce..4ffd24e8c50fd0df03cbb1257448c202 }; MODULE_DEVICE_TABLE(of, spidev_dt_ids); -From f350927b3128445ef8e64eaf0f5c6c61b6da8f3c Mon Sep 17 00:00:00 2001 +From 363307ea346cd2505a15bf5ebe4a4b4dfc9c7425 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 3 Jan 2017 18:25:01 +0000 -Subject: [PATCH 011/139] Revert "pinctrl: bcm2835: switch to GPIOLIB_IRQCHIP" +Subject: [PATCH 011/140] Revert "pinctrl: bcm2835: switch to GPIOLIB_IRQCHIP" This reverts commit 85ae9e512f437cd09bf61564bdba29ab88bab3e3. --- @@ -864,10 +864,10 @@ index 85d0091128644c446aed878e87769e82c77c3ebf..4f2621272bfd5cbc0d691d2fabe89e2e if (IS_ERR(pc->pctl_dev)) { gpiochip_remove(&pc->gpio_chip); -From bde1a4263576d5716d6e77de988e8c55e32dd24d Mon Sep 17 00:00:00 2001 +From eaacdb9b581ddad914ee29ba68aec1d94218a59f Mon Sep 17 00:00:00 2001 From: notro Date: Thu, 10 Jul 2014 13:59:47 +0200 -Subject: [PATCH 012/139] pinctrl-bcm2835: Set base to 0 give expected gpio +Subject: [PATCH 012/140] pinctrl-bcm2835: Set base to 0 give expected gpio numbering Signed-off-by: Noralf Tronnes @@ -889,10 +889,10 @@ index 4f2621272bfd5cbc0d691d2fabe89e2ee428d6db..5b7cb4c415e19f98e25b221ab0ad36b6 .can_sleep = false, }; -From b566006186491384c1c1de263e2fd6c2570d85cc Mon Sep 17 00:00:00 2001 +From c99d45a886af26665db54c3a9f0d1e5b29795e8e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 26 Feb 2015 09:58:22 +0000 -Subject: [PATCH 013/139] pinctrl-bcm2835: Only request the interrupts listed +Subject: [PATCH 013/140] pinctrl-bcm2835: Only request the interrupts listed in the DTB Although the GPIO controller can generate three interrupts (four counting @@ -919,10 +919,10 @@ index 5b7cb4c415e19f98e25b221ab0ad36b6885dae4c..6351fe7f8e314ac5ebb102dd20847b38 pc->irq_data[i].irqgroup = i; -From 258e70acb025e38ecf3f46364bceddb102e9d334 Mon Sep 17 00:00:00 2001 +From bcf681a6168c6f51077f508c0c327118afad2292 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Jun 2015 14:10:44 +0100 -Subject: [PATCH 014/139] spi-bcm2835: Support pin groups other than 7-11 +Subject: [PATCH 014/140] 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 @@ -1003,10 +1003,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 e2bf8ffe80d65f21555622cc539f7cf989d83fef Mon Sep 17 00:00:00 2001 +From 656411c4417004ba817f50eb4620d2f37ef6ce97 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 1 Jul 2016 22:09:24 +0100 -Subject: [PATCH 015/139] spi-bcm2835: Disable forced software CS +Subject: [PATCH 015/140] 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 @@ -1040,10 +1040,10 @@ index 5dfe20ffc2866fa6789825016c585175a29705b6..8493474d286f7a1ac6454a22c61c8c2c return 0; } -From 2da712afa88e7a8d41d35103c248858a9ad4055e Mon Sep 17 00:00:00 2001 +From 31ed8a32ead798f762c4bd6eb2e0aaa7af793dba Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 8 Nov 2016 21:35:38 +0000 -Subject: [PATCH 016/139] spi-bcm2835: Remove unused code +Subject: [PATCH 016/140] spi-bcm2835: Remove unused code --- drivers/spi/spi-bcm2835.c | 61 ----------------------------------------------- @@ -1131,10 +1131,10 @@ index 8493474d286f7a1ac6454a22c61c8c2cef9121bf..33d75ad38a7f77d085321ace9101900a } -From 20858b73a37db6bf9ea8ba31abbdb47c782f8c75 Mon Sep 17 00:00:00 2001 +From 9f9261dcf5a99ba49d42084694fdc09a0396f6bf 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 017/139] ARM: bcm2835: Set Serial number and Revision +Subject: [PATCH 017/140] ARM: bcm2835: Set Serial number and Revision MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -1187,10 +1187,10 @@ index 0c1edfc98696da0e0bb7f4a18cdfbcdd27a9795d..8f152266ba9b470df2eaaed9ebcf158e static const char * const bcm2835_compat[] = { -From 0d40d5ac02f1e1260e768e0ccf5d5d667c74f1c8 Mon Sep 17 00:00:00 2001 +From bbdb02227b5d8904c94942361eb1196752d36125 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 018/139] dmaengine: bcm2835: Load driver early and support +Subject: [PATCH 018/140] dmaengine: bcm2835: Load driver early and support legacy API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -1293,10 +1293,10 @@ index 6204cc32d09c5096df8aec304c3c37b3bcb6be44..599c218dc8a73172dd4bd4a058fc8f95 MODULE_ALIAS("platform:bcm2835-dma"); MODULE_DESCRIPTION("BCM2835 DMA engine driver"); -From a66dc50facf528b75505f0e2f5bacf0f08c42a7d Mon Sep 17 00:00:00 2001 +From 389f25ea90bcbb8836939eac891bb4dc3172d271 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 25 Jan 2016 17:25:12 +0000 -Subject: [PATCH 019/139] firmware: Updated mailbox header +Subject: [PATCH 019/140] firmware: Updated mailbox header --- include/soc/bcm2835/raspberrypi-firmware.h | 9 +++++++++ @@ -1357,10 +1357,10 @@ index cb979ad90401e299344dd5fae38d09c489d8bd58..30fb37fe175df604a738258a2a632bca RPI_FIRMWARE_VCHIQ_INIT = 0x00048010, -From 64145b728078b43f60ed503b8edc2d7f8c6bee2a Mon Sep 17 00:00:00 2001 +From 5106c450c6e511cbca89851d8a5c23dc3760063a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 15 Jun 2016 16:48:41 +0100 -Subject: [PATCH 020/139] rtc: Add SPI alias for pcf2123 driver +Subject: [PATCH 020/140] rtc: Add SPI alias for pcf2123 driver Without this alias, Device Tree won't cause the driver to be loaded. @@ -1380,10 +1380,10 @@ index 8895f77726e8da5444afcd602dceff8f25a9b3fd..1833b8853ceb0e6147cceb93a00e558c MODULE_LICENSE("GPL"); +MODULE_ALIAS("spi:rtc-pcf2123"); -From e84dc1977beb6942ad4c0b8ede8fa369c846d05e Mon Sep 17 00:00:00 2001 +From e5b0c44f0995e1ed8512f06f21eeb17416fac67a 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 021/139] watchdog: bcm2835: Support setting reboot partition +Subject: [PATCH 021/140] watchdog: bcm2835: Support setting reboot partition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -1485,10 +1485,10 @@ index b339e0e67b4c1275fd4992fea4f1e24c0575b783..26b7177573fac2af1cd4ab5488d2686f static int bcm2835_wdt_probe(struct platform_device *pdev) -From b4f0a885a11b73a4aa28ff4a45cd2e757d067a2c Mon Sep 17 00:00:00 2001 +From 4ed01c974a5d19698ebea2921723971167d190dd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 5 Apr 2016 19:40:12 +0100 -Subject: [PATCH 022/139] reboot: Use power off rather than busy spinning when +Subject: [PATCH 022/140] reboot: Use power off rather than busy spinning when halt is requested --- @@ -1511,10 +1511,10 @@ index 3b2aa9a9fe268d45335f781c4aa22cf573753a1b..0180d89a34af45c56243fe0f17fbe209 /* -From 171a97c51736b1bc787e46c917970f2b4eee6b1d Mon Sep 17 00:00:00 2001 +From b78f6b4dd22272e53eef643271ed9032a83b985a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 9 Nov 2016 13:02:52 +0000 -Subject: [PATCH 023/139] bcm: Make RASPBERRYPI_POWER depend on PM +Subject: [PATCH 023/140] bcm: Make RASPBERRYPI_POWER depend on PM --- drivers/soc/bcm/Kconfig | 1 + @@ -1533,10 +1533,10 @@ index a39b0d58ddd0fdf0ac1cc7295f8aafb12546e226..e037a6dd79d1881a09e3ca9115782709 help This enables support for the RPi power domains which can be enabled -From 0e76476116a0af91d4b371594dcd9c92e080b705 Mon Sep 17 00:00:00 2001 +From ee4a10dd50661f0a0e4e42b2e1d6995dfa923bf3 Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Fri, 2 Sep 2016 16:45:27 +0100 -Subject: [PATCH 024/139] Register the clocks early during the boot process, so +Subject: [PATCH 024/140] 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. @@ -1581,10 +1581,10 @@ index 02585387061967ac9408e18ac1bce67e9e9414c0..283d2de45e4f29406d01f24ab1cae3f9 MODULE_AUTHOR("Eric Anholt "); MODULE_DESCRIPTION("BCM2835 clock driver"); -From 74cbfe945c3294f8df9faa704dc5eb938777266e Mon Sep 17 00:00:00 2001 +From 19f18eb467bbe14641b1e3dc07f61603f8f8fbcd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 6 Dec 2016 17:05:39 +0000 -Subject: [PATCH 025/139] bcm2835-rng: Avoid initialising if already enabled +Subject: [PATCH 025/140] bcm2835-rng: Avoid initialising if already enabled Avoids the 0x40000 cycles of warmup again if firmware has already used it --- @@ -1610,10 +1610,10 @@ index 574211a495491d9d6021dcaefe4274a63ed02055..e66c0fca8c6090e32f72796c0877a1cf err = hwrng_register(&bcm2835_rng_ops); if (err) { -From 8158286804d2410a41379d1f7b6a4c240d5fc3bc Mon Sep 17 00:00:00 2001 +From 082775217df61035640fdcaa909586183dee8bfa Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Aug 2016 16:28:44 +0100 -Subject: [PATCH 026/139] kbuild: Ignore dtco targets when filtering symbols +Subject: [PATCH 026/140] kbuild: Ignore dtco targets when filtering symbols --- scripts/Kbuild.include | 2 +- @@ -1633,10 +1633,10 @@ index 61f87a99bf0a1c512e572d3cbdcf4b4b5d7ae785..0a5e36778eacf7dc589486f8bc8033f5 esac | tr ";" "\n" | sed -rn 's/^.*=== __KSYM_(.*) ===.*$$/KSYM_\1/p' -From 3a25bb16311b7e0b73f4fd2637845994c050d154 Mon Sep 17 00:00:00 2001 +From a5db13eac30dafdc4926414a03f88a500f2d5ecc Mon Sep 17 00:00:00 2001 From: Robert Tiemann Date: Mon, 20 Jul 2015 11:01:25 +0200 -Subject: [PATCH 027/139] BCM2835_DT: Fix I2S register map +Subject: [PATCH 027/140] BCM2835_DT: Fix I2S register map --- Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt | 4 ++-- @@ -1674,10 +1674,10 @@ index 65783de0aedf3da79adc36fd077b7a89954ddb6b..a89fe4220fdc3f26f75ee66daf187554 dmas = <&dma 2>, <&dma 3>; -From 50e493339e12a9c68a777df708960418f808b0df Mon Sep 17 00:00:00 2001 +From 765523a4a9868cb9647a9309272a8eaae5246f01 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Feb 2017 17:20:08 +0000 -Subject: [PATCH 028/139] clk-bcm2835: Mark used PLLs and dividers CRITICAL +Subject: [PATCH 028/140] 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 @@ -1705,10 +1705,10 @@ index 283d2de45e4f29406d01f24ab1cae3f9f879234a..85df8c74a309f0b877ef65f1c55b086f divider->data = data; -From 82bd6370298f1329099aef321e3f183bfdecc8a5 Mon Sep 17 00:00:00 2001 +From 590a192932f87320eaffa74d4bd4165589aaece5 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Feb 2017 17:20:08 +0000 -Subject: [PATCH 029/139] clk-bcm2835: Add claim-clocks property +Subject: [PATCH 029/140] 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, @@ -1810,10 +1810,10 @@ index 85df8c74a309f0b877ef65f1c55b086f1bb774a1..eec6735505c074c0a76ae647bf0e1bb6 sizeof(cprman_parent_names)); of_clk_parent_fill(dev->of_node, cprman->real_parent_names, -From 24533ef1a8bb34fad484c57bb0858fcf71fdea16 Mon Sep 17 00:00:00 2001 +From a0109fb360b265d85b6936533e23b42812f69186 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 1 Mar 2017 16:06:53 +0000 -Subject: [PATCH 030/139] clk-bcm2835: Correct the prediv logic +Subject: [PATCH 030/140] clk-bcm2835: Correct the prediv logic If a clock has the prediv flag set, both the integer and fractional parts must be scaled when calculating the resulting frequency. @@ -1840,10 +1840,10 @@ index eec6735505c074c0a76ae647bf0e1bb68ab3a488..e0d28add45efdf70d1eba590282a3a26 return bcm2835_pll_rate_from_divisors(parent_rate, ndiv, fdiv, pdiv); } -From bb2c9d23c027a15e042cbfb7eb64624fd7a04934 Mon Sep 17 00:00:00 2001 +From 2f81616cccb5c9091cd2037fc84157a7f419864b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 6 Mar 2017 09:06:18 +0000 -Subject: [PATCH 031/139] clk-bcm2835: Read max core clock from firmware +Subject: [PATCH 031/140] 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 @@ -1958,10 +1958,10 @@ index e0d28add45efdf70d1eba590282a3a2654af328d..39f72da6ba1f6ec6ec41d5dc1bf46344 for (i = 0; !of_property_read_u32_index(pdev->dev.of_node, "claim-clocks", -From 719762a8d56c975bcda617b128ff78ecca0a1376 Mon Sep 17 00:00:00 2001 +From ad25d00490e65ecb11700730e0c0af0128d8250e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 9 Feb 2017 14:36:44 +0000 -Subject: [PATCH 032/139] sound: Demote deferral errors to INFO level +Subject: [PATCH 032/140] 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. @@ -1996,10 +1996,10 @@ index 754e3ef8d7ae1b8b188c3e52986f2c306fb7b763..90b385d1f79b63ccc43a8d4ba849084a goto _err_defer; } -From 18e656c35c1420ca6780fc42de5f5aed2d1153f3 Mon Sep 17 00:00:00 2001 +From 66ca90cdc57bdcc43b747ddb197c03cf9adedffe Mon Sep 17 00:00:00 2001 From: Claggy3 Date: Sat, 11 Feb 2017 14:00:30 +0000 -Subject: [PATCH 033/139] Update vfpmodule.c +Subject: [PATCH 033/140] 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 @@ -2136,10 +2136,10 @@ index a71a48e71fffa8626fe90106815376c44bbe679b..d6c0a5a0a5ae3510db3ace5e3f5d3410 /* * Save the userland NEON/VFP state. Under UP, -From 6dc19f89227211ee65486a22cb33b7f9b01de725 Mon Sep 17 00:00:00 2001 +From 06c6e8a843d6e0dc20b1d6f9fff13a754abc97b4 Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Wed, 8 Mar 2017 21:13:24 +1100 -Subject: [PATCH 034/139] ASoC: bcm2835_i2s.c: relax the ch2 register setting +Subject: [PATCH 034/140] 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. @@ -2160,10 +2160,10 @@ index 6ba20498202ed36906b52096893a88867a79269f..56df7d8a43d0aac055a91b0d24aca8e1 format |= BCM2835_I2S_CH1(BCM2835_I2S_CHPOS(ch1pos)); format |= BCM2835_I2S_CH2(BCM2835_I2S_CHPOS(ch2pos)); -From e64ff7d856b780ea033bab8a8b7f2479b31c9931 Mon Sep 17 00:00:00 2001 +From 6d7b4abf8aaf0a771978680a9e41cda02fc431ca 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 035/139] i2c: bcm2835: Add debug support +Subject: [PATCH 035/140] i2c: bcm2835: Add debug support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -2352,10 +2352,10 @@ index cd07a69e2e9355540442785f95e90823b05c9d10..47167f403cc8329bd811b47c7011c299 if (i2c_dev->msg_err & BCM2835_I2C_S_ERR) return -EREMOTEIO; -From ecdeaab1aba5b2ef1113c65166f0a861d2e13292 Mon Sep 17 00:00:00 2001 +From 3b4fca1547ac61f54405450445e4f8e4b8a74ae0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 12 May 2013 12:24:19 +0100 -Subject: [PATCH 036/139] Main bcm2708/bcm2709 linux port +Subject: [PATCH 036/140] Main bcm2708/bcm2709 linux port MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -2543,10 +2543,10 @@ index cfb4b4496dd9f61362dea012176c146120fada07..d9c6c217c4d6a2408abe2665bf7f2700 MODULE_AUTHOR("Lubomir Rintel "); MODULE_DESCRIPTION("BCM2835 mailbox IPC driver"); -From 2ba12cf67ea835b883762117150418746e47490a Mon Sep 17 00:00:00 2001 +From d2d6b59e256d78d994d0d3490bd7c7f1d2c67eb3 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:46:17 +0100 -Subject: [PATCH 037/139] Add dwc_otg driver +Subject: [PATCH 037/140] Add dwc_otg driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -63688,10 +63688,10 @@ index 0000000000000000000000000000000000000000..cdc9963176e5a4a0d5250613b61e26c5 +test_main(); +0; -From 22febc0cd659a7dfc2857a49f1b64bb9f27e3b4b Mon Sep 17 00:00:00 2001 +From a58bf2ca8205b49a0a3720bc69b64d271a68969c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 17 Jun 2015 17:06:34 +0100 -Subject: [PATCH 038/139] bcm2708 framebuffer driver +Subject: [PATCH 038/140] bcm2708 framebuffer driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -67150,10 +67150,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 55da167ebb4d28447a0b33a9c938f2af5dda4105 Mon Sep 17 00:00:00 2001 +From 7c167a2a82495353b9fd79db0b4432e27f5e7f8d Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:22:53 +0100 -Subject: [PATCH 039/139] dmaengine: Add support for BCM2708 +Subject: [PATCH 039/140] dmaengine: Add support for BCM2708 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -67784,10 +67784,10 @@ index 0000000000000000000000000000000000000000..c5bfff2765be4606077e6c8af73040ec + +#endif /* _PLAT_BCM2708_DMA_H */ -From 23bbd8f422a04cbfd1db8011d86dcb9e3f9ca0ce Mon Sep 17 00:00:00 2001 +From 9b01c576087e2302e6cb87105f42c09c84bcd7d9 Mon Sep 17 00:00:00 2001 From: gellert Date: Fri, 15 Aug 2014 16:35:06 +0100 -Subject: [PATCH 040/139] MMC: added alternative MMC driver +Subject: [PATCH 040/140] MMC: added alternative MMC driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -69509,10 +69509,10 @@ index 0000000000000000000000000000000000000000..4fe8d1fe44578fbefcd48f8c327ba3d0 +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Gellert Weisz"); -From 765e4ac5eea09794445f80f394cd45b63b229312 Mon Sep 17 00:00:00 2001 +From 6ce351462ce689cdcf201e93f3391f53b05c12d2 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 25 Mar 2015 17:49:47 +0000 -Subject: [PATCH 041/139] Adding bcm2835-sdhost driver, and an overlay to +Subject: [PATCH 041/140] Adding bcm2835-sdhost driver, and an overlay to enable it BCM2835 has two SD card interfaces. This driver uses the other one. @@ -71918,10 +71918,10 @@ index 0000000000000000000000000000000000000000..9c6f199a7830959f31012d86bc1f8b1a +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Phil Elwell"); -From 0f4c8bcee7496b52332136b074a45ec4fa325da3 Mon Sep 17 00:00:00 2001 +From 2792e240dfc4721bf9236838b8f9bb682c6e48b4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 28 Oct 2016 15:36:43 +0100 -Subject: [PATCH 042/139] vc_mem: Add vc_mem driver for querying firmware +Subject: [PATCH 042/140] vc_mem: Add vc_mem driver for querying firmware memory addresses MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -72446,10 +72446,10 @@ index 0000000000000000000000000000000000000000..20a475377eb3078ea1ecaef2b24efc35 + +#endif /* _VC_MEM_H */ -From f62d2cd84f99a320275e94459d5e8e34545a58c7 Mon Sep 17 00:00:00 2001 +From e78aadb697491366bcc628425d3b28aa8c9d8eea Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 22 Jul 2014 15:41:04 +0100 -Subject: [PATCH 043/139] vcsm: VideoCore shared memory service for BCM2835 +Subject: [PATCH 043/140] vcsm: VideoCore shared memory service for BCM2835 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -76904,10 +76904,10 @@ index 0000000000000000000000000000000000000000..334f36d0d697b047df2922b5f2db67f3 + +#endif /* __VMCS_SM_IOCTL_H__INCLUDED__ */ -From b4893676c1e3078e98b4bcb0069526dedc8fab0d Mon Sep 17 00:00:00 2001 +From 16a66ea3db7c9a7b6195366140353f31da6400bf Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Fri, 21 Aug 2015 23:14:48 +0100 -Subject: [PATCH 044/139] Add /dev/gpiomem device for rootless user GPIO access +Subject: [PATCH 044/140] Add /dev/gpiomem device for rootless user GPIO access Signed-off-by: Luke Wren @@ -77215,10 +77215,10 @@ index 0000000000000000000000000000000000000000..f5e7f1ba8fb6f18dee77fad06a17480c +MODULE_DESCRIPTION("gpiomem driver for accessing GPIO from userspace"); +MODULE_AUTHOR("Luke Wren "); -From 796e0bca0804624467b783fa69861b22d7531893 Mon Sep 17 00:00:00 2001 +From f1ae8aeb7e1babdaa7e129ef171dd86490b5b373 Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Sat, 5 Sep 2015 01:14:45 +0100 -Subject: [PATCH 045/139] Add SMI driver +Subject: [PATCH 045/140] Add SMI driver Signed-off-by: Luke Wren --- @@ -79169,10 +79169,10 @@ index 0000000000000000000000000000000000000000..ee3a75edfc033eeb0d90a687ffb68b10 + +#endif /* BCM2835_SMI_H */ -From 99c0f283d37bf32158bbb2868019bb8caba4239a Mon Sep 17 00:00:00 2001 +From bf096b41ac2c0d9bdcf9a2fcd522a6fc5b2fee28 Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Tue, 26 Apr 2016 14:59:21 +0000 -Subject: [PATCH 046/139] MISC: bcm2835: smi: use clock manager and fix reload +Subject: [PATCH 046/140] MISC: bcm2835: smi: use clock manager and fix reload issues Use clock manager instead of self-made clockmanager. @@ -79342,10 +79342,10 @@ index 63a4ea08b9930a3a31a985f0a1d969b488ed49ec..1261540703127d1d63b9f3c87042c6e5 return 0; } -From 027e1e153757a9fb9d3b94eadc4c3b1576e393b5 Mon Sep 17 00:00:00 2001 +From 924e3680f712aa3f0235006a24a34697a4739f5c Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Sat, 5 Sep 2015 01:16:10 +0100 -Subject: [PATCH 047/139] Add SMI NAND driver +Subject: [PATCH 047/140] Add SMI NAND driver Signed-off-by: Luke Wren --- @@ -79710,10 +79710,10 @@ index 0000000000000000000000000000000000000000..02adda6da18bd0ba9ab19a104975b79d + ("Driver for NAND chips using Broadcom Secondary Memory Interface"); +MODULE_AUTHOR("Luke Wren "); -From 76a50cee5ed33ae48958fdc383ce21ebf9ea8349 Mon Sep 17 00:00:00 2001 +From cb684be5505d5f3ffaadcdcde2ca6e980e426718 Mon Sep 17 00:00:00 2001 From: Aron Szabo Date: Sat, 16 Jun 2012 12:15:55 +0200 -Subject: [PATCH 048/139] lirc: added support for RaspberryPi GPIO +Subject: [PATCH 048/140] 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 @@ -80574,10 +80574,10 @@ index 0000000000000000000000000000000000000000..fb69624ccef00ddbdccf8256d6baf1b1 + +#endif -From 3b740c294b5a90fb6e1d3bd105add8b6be65ba31 Mon Sep 17 00:00:00 2001 +From 54455063a8ab5ffecdab329561c1c2adb33f67f8 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:49:20 +0100 -Subject: [PATCH 049/139] Add cpufreq driver +Subject: [PATCH 049/140] Add cpufreq driver Signed-off-by: popcornmix --- @@ -80844,10 +80844,10 @@ index 0000000000000000000000000000000000000000..414fbdc10dfbfc6e4bb47870a7af3fd5 +module_init(bcm2835_cpufreq_module_init); +module_exit(bcm2835_cpufreq_module_exit); -From 07357d3c8ecc2e3b299549dd883a3b57e0eb094b Mon Sep 17 00:00:00 2001 +From 3e7bcb96b00904c8fb5d7369e5976ffeb1fb64fc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 19:24:24 +0000 -Subject: [PATCH 050/139] Added hwmon/thermal driver for reporting core +Subject: [PATCH 050/140] Added hwmon/thermal driver for reporting core temperature. Thanks Dorian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -81030,10 +81030,10 @@ index 0000000000000000000000000000000000000000..25b78c3eac1503fbc9e679b963a6284b +MODULE_DESCRIPTION("Thermal driver for bcm2835 chip"); +MODULE_LICENSE("GPL"); -From 56f1f7549cc46b38947bb6d05e71f3ab32ab6191 Mon Sep 17 00:00:00 2001 +From 14b7ab093534d0c775706b3c707fc66bce6c1538 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 17 Jun 2015 15:44:08 +0100 -Subject: [PATCH 051/139] Add Chris Boot's i2c driver +Subject: [PATCH 051/140] Add Chris Boot's i2c driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -81698,10 +81698,10 @@ index 0000000000000000000000000000000000000000..962f2e5c7455d91bf32925d785f5f16b +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); -From 7b5d0c53e8cc783a9a8e28631772b8a541327640 Mon Sep 17 00:00:00 2001 +From 567f7b278b6320ac4e4b235a9c451b001a6ee6a3 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 052/139] char: broadcom: Add vcio module +Subject: [PATCH 052/140] char: broadcom: Add vcio module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -81926,10 +81926,10 @@ index 0000000000000000000000000000000000000000..c19bc2075c77879563ef5e59038b5a14 +MODULE_DESCRIPTION("Mailbox userspace access"); +MODULE_LICENSE("GPL"); -From b8871cd5acf434f1d4870a40f115a1f4fa178bad Mon Sep 17 00:00:00 2001 +From 28235002bd49cfad774b1bc92ef7340dd732f8a9 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 053/139] firmware: bcm2835: Support ARCH_BCM270x +Subject: [PATCH 053/140] firmware: bcm2835: Support ARCH_BCM270x MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -82012,10 +82012,10 @@ index dd506cd3a5b874f9e1acd07efb8cd151bb6145d1..3f070bd38a91511c986e3fb114b15bd4 MODULE_AUTHOR("Eric Anholt "); MODULE_DESCRIPTION("Raspberry Pi firmware driver"); -From 5b38792582939591810feff1fe40a7d159fcccf1 Mon Sep 17 00:00:00 2001 +From 3d3ba2c44c20529ede0421c9ac55e50f346ac387 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 11 May 2015 09:00:42 +0100 -Subject: [PATCH 054/139] scripts: Add mkknlimg and knlinfo scripts from tools +Subject: [PATCH 054/140] scripts: Add mkknlimg and knlinfo scripts from tools repo The Raspberry Pi firmware looks for a trailer on the kernel image to @@ -82542,10 +82542,10 @@ index 0000000000000000000000000000000000000000..84be2593ec1de8f97b0167ff06b3e05d + return $trailer; +} -From 9934d9399eb0ae620ce9e2b492ff8d4d364ad4ba Mon Sep 17 00:00:00 2001 +From 54dcf0ee553e0ebdfac0e7c4e0731a89cc2ace7f Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:46:08 +0200 -Subject: [PATCH 055/139] BCM2708: Add core Device Tree support +Subject: [PATCH 055/140] BCM2708: Add core Device Tree support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -93990,10 +93990,10 @@ index 58c05e5d9870b6c18a72da7dc44ff3112994946d..9842523b225a88505d796cc689c04f40 # Bzip2 -From 5b62e79d10e131a219f0759894de5c0fbff90f30 Mon Sep 17 00:00:00 2001 +From 007600dea5919f3d6068a202e236a7cc29e3e13f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 6 Feb 2015 13:50:57 +0000 -Subject: [PATCH 056/139] BCM270x_DT: Add pwr_led, and the required "input" +Subject: [PATCH 056/140] BCM270x_DT: Add pwr_led, and the required "input" trigger The "input" trigger makes the associated GPIO an input. This is to support @@ -94168,10 +94168,10 @@ index 64c56d454f7df9f864a5242ce4212df586f66886..3fd74c8737871cb56f0355c858fc135e /* set_brightness_work / blink_timer flags, atomic, private. */ unsigned long work_flags; -From e316ce6bb6081561bfc23a25ef5b23607c96cdc0 Mon Sep 17 00:00:00 2001 +From c4b901d280fc02d18aca975bb273aec98c967283 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka Date: Mon, 17 Jun 2013 13:32:11 +0300 -Subject: [PATCH 057/139] fbdev: add FBIOCOPYAREA ioctl +Subject: [PATCH 057/140] fbdev: add FBIOCOPYAREA ioctl Based on the patch authored by Ali Gholami Rudi at https://lkml.org/lkml/2009/7/13/153 @@ -94439,10 +94439,10 @@ index fb795c3b3c178ad3cd7c9e9e4547ffd492bac181..703fa8a70574323abe2fb32599254582 __u32 dx; /* screen-relative */ __u32 dy; -From 3c9e28bffbaa70237c3dc2412d73986f8a06f8ea Mon Sep 17 00:00:00 2001 +From f0c392f2ab7ebd27c4c80c2b82faa22963d26bcb Mon Sep 17 00:00:00 2001 From: Harm Hanemaaijer Date: Thu, 20 Jun 2013 20:21:39 +0200 -Subject: [PATCH 058/139] Speed up console framebuffer imageblit function +Subject: [PATCH 058/140] 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 @@ -94651,10 +94651,10 @@ index a2bb276a8b2463eee98eb237c4647bc00cd93601..436494fba15abecb400ef28688466faf start_index, pitch_index); } else -From d62e66536844ee9cec4ea654a6fa9904f083c96e Mon Sep 17 00:00:00 2001 +From 3af3fcbf5f5ff1145dec587aca01f6434bc70741 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 May 2013 11:46:50 +0100 -Subject: [PATCH 059/139] enabling the realtime clock 1-wire chip DS1307 and +Subject: [PATCH 059/140] 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 @@ -94904,10 +94904,10 @@ index d58594a3232492e33f1dd4babd3798b03e0f0203..feae94256256316fd9d850c3d83325af unsigned int ext_pullup_enable_pin; unsigned int pullup_duration; -From 2fc2878cabdac719e545949b57f4134c057c3ec6 Mon Sep 17 00:00:00 2001 +From d28c8587f40f51aee1224c14d0a5b4069021ab36 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 14 Jul 2014 22:02:09 +0100 -Subject: [PATCH 060/139] hid: Reduce default mouse polling interval to 60Hz +Subject: [PATCH 060/140] hid: Reduce default mouse polling interval to 60Hz Reduces overhead when using X --- @@ -94939,10 +94939,10 @@ index 83772fa7d92a6f6178cd3a4a5c0fea28350040b5..3f4a7e34b3f775e712b1b4d6afe27a2a break; case HID_GD_JOYSTICK: -From e32dc4eff3be8cd4c07ec669ef5958ccab06fdb6 Mon Sep 17 00:00:00 2001 +From c3c80995eaefd69bb1956c5a5fd235f5d13eda4c Mon Sep 17 00:00:00 2001 From: Gordon Hollingworth Date: Tue, 12 May 2015 14:47:56 +0100 -Subject: [PATCH 061/139] rpi-ft5406: Add touchscreen driver for pi LCD display +Subject: [PATCH 061/140] 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 @@ -95300,10 +95300,10 @@ index 30fb37fe175df604a738258a2a632bca3bfff33f..4a3d79d3b48eb483a4e4bf498f617515 RPI_FIRMWARE_FRAMEBUFFER_SET_BACKLIGHT = 0x0004800f, -From 7b71c5a7188ac7d35a95d90751d73151f64dec65 Mon Sep 17 00:00:00 2001 +From c78b5af8f99ce82a29d67c0bfde82f56ebdc28f4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 28 Nov 2016 16:50:04 +0000 -Subject: [PATCH 062/139] Improve __copy_to_user and __copy_from_user +Subject: [PATCH 062/140] Improve __copy_to_user and __copy_from_user performance Provide a __copy_from_user that uses memcpy. On BCM2708, use @@ -96878,10 +96878,10 @@ index 567601148318bf4a5fbc581d6c9881d9e190c409..45ea7866761a71470bd335f6f37ea603 bool "Broadcom BCM63xx DSL SoC" depends on ARCH_MULTI_V7 -From a7dc42ec5134e2fa081486f96587cd5310157ad0 Mon Sep 17 00:00:00 2001 +From 05551c210e0f8d3478d62e18b2e2efc85d292d16 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 25 Jun 2015 12:16:11 +0100 -Subject: [PATCH 063/139] gpio-poweroff: Allow it to work on Raspberry Pi +Subject: [PATCH 063/140] 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 @@ -96916,10 +96916,10 @@ index be3d81ff51cc3f510d85e4eed7a52960e51e7bc1..a030ae9fb1fca325061c093696e82186 "%s: pm_power_off function already registered", __func__); -From 74ce356101c1caaf47c69ab6ad5be42a433085cd Mon Sep 17 00:00:00 2001 +From b111a6fe790961cd1cb0a953cadcd4998b66b133 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Jul 2015 14:32:47 +0100 -Subject: [PATCH 064/139] mfd: Add Raspberry Pi Sense HAT core driver +Subject: [PATCH 064/140] mfd: Add Raspberry Pi Sense HAT core driver --- drivers/input/joystick/Kconfig | 8 + @@ -97784,10 +97784,10 @@ index 0000000000000000000000000000000000000000..56196dc2af10e464a1e3f98b028dca1c + +#endif -From daa290fddf619230944d5413354ee00f5f231772 Mon Sep 17 00:00:00 2001 +From ad43916d78c30e323c4bd139f14a38cfe30f0def Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:19:08 +0100 -Subject: [PATCH 065/139] ASoC: Add support for HifiBerry DAC +Subject: [PATCH 065/140] ASoC: Add support for HifiBerry DAC This adds a machine driver for the HifiBerry DAC. It is a sound card that can @@ -97962,10 +97962,10 @@ index 0000000000000000000000000000000000000000..ee9f133953544629282631e5ef3f73fe +MODULE_DESCRIPTION("ASoC Driver for HifiBerry DAC"); +MODULE_LICENSE("GPL v2"); -From 62e8689d9719e5cee09fc7d572043dd3be482bc4 Mon Sep 17 00:00:00 2001 +From 8c1c860b75d3df114693032fca0c9f302443cdc9 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Mon, 25 Jan 2016 15:48:59 +0000 -Subject: [PATCH 066/139] ASoC: Add support for Rpi-DAC +Subject: [PATCH 066/140] ASoC: Add support for Rpi-DAC --- sound/soc/bcm/Kconfig | 7 +++ @@ -98249,10 +98249,10 @@ index 0000000000000000000000000000000000000000..afe1b419582aa40c4b2729d242bb13cd +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From c1a7305c2c9028669069e30a696222691811a75e Mon Sep 17 00:00:00 2001 +From 2fd85c8d5bad9ec4bfecb1e132924d39ac615300 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:41:23 +0100 -Subject: [PATCH 067/139] ASoC: wm8804: Implement MCLK configuration options, +Subject: [PATCH 067/140] 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 @@ -98301,10 +98301,10 @@ index af95d648265b3e92e345101542b332aee35191d4..513f56ba132929662802d15cdc653af3 .component_driver = { .dapm_widgets = wm8804_dapm_widgets, -From a4415c659c160c37d1f45f50922ae2b946009ee5 Mon Sep 17 00:00:00 2001 +From 4745826c6b124e6edd9a5ac2e4ed9939c9cd5668 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:42:08 +0100 -Subject: [PATCH 068/139] ASoC: BCM:Add support for HiFiBerry Digi. Driver is +Subject: [PATCH 068/140] ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patched WM8804 driver. Signed-off-by: Daniel Matuschek @@ -98648,10 +98648,10 @@ index 0000000000000000000000000000000000000000..7620dd02de40b6d644ff038b445d375d +MODULE_DESCRIPTION("ASoC Driver for HifiBerry Digi"); +MODULE_LICENSE("GPL v2"); -From fc1eba6e68d9266ee321eec6e79666f47674976e Mon Sep 17 00:00:00 2001 +From f4fa4291973abc8a005c77e2d7ef2305f428026d Mon Sep 17 00:00:00 2001 From: Gordon Garrity Date: Sat, 8 Mar 2014 16:56:57 +0000 -Subject: [PATCH 069/139] Add IQaudIO Sound Card support for Raspberry Pi +Subject: [PATCH 069/140] Add IQaudIO Sound Card support for Raspberry Pi Set a limit of 0dB on Digital Volume Control @@ -98986,10 +98986,10 @@ index 0000000000000000000000000000000000000000..1ee4097c846376666775272ed692ca33 +MODULE_DESCRIPTION("ASoC Driver for IQAudio DAC"); +MODULE_LICENSE("GPL v2"); -From b9a4d23f87fbde129dad1c81e8d68209ad5ce63e Mon Sep 17 00:00:00 2001 +From bf6f463eec2151ce6fd002c1daaa9fb99032b550 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 10:06:56 +0200 -Subject: [PATCH 070/139] Added support for HiFiBerry DAC+ +Subject: [PATCH 070/140] 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. @@ -99619,10 +99619,10 @@ index 72b19e62f6267698aea45d2410d616d91c1825cb..c6839ef6e16754ed9de2698507b8986a dev_err(dev, "No LRCLK?\n"); return -EINVAL; -From f3e164f03f2e2209ffa91a3ae9b53aa934854ec6 Mon Sep 17 00:00:00 2001 +From f57dd928be9e3684d66dbd37c8fb91fe090dac5a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 11:09:58 +0200 -Subject: [PATCH 071/139] Added driver for HiFiBerry Amp amplifier add-on board +Subject: [PATCH 071/140] 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. @@ -100457,10 +100457,10 @@ index 0000000000000000000000000000000000000000..8f019e04898754d2f87e9630137be9e8 + +#endif /* _TAS5713_H */ -From 7d69d349d7a41e3f4d31cb93334506d7a77995bc Mon Sep 17 00:00:00 2001 +From 3bdba0749957ee31be979598121fd1df89c7eaca Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Wed, 25 Mar 2015 09:26:17 +0100 -Subject: [PATCH 072/139] Add driver for rpi-proto +Subject: [PATCH 072/140] 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 @@ -100675,10 +100675,10 @@ index 0000000000000000000000000000000000000000..fadbfade100228aaafabb0d3bdf35c01 +MODULE_DESCRIPTION("ASoC Driver for Raspberry Pi connected to PROTO board (WM8731)"); +MODULE_LICENSE("GPL"); -From edf7bedc19f7086c8a636bb225e6dd432934aa65 Mon Sep 17 00:00:00 2001 +From dacfd3ce982d63d236ff024705ea10a92e33ac26 Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Mon, 24 Aug 2015 16:03:47 +0100 -Subject: [PATCH 073/139] RaspiDAC3 support +Subject: [PATCH 073/140] RaspiDAC3 support Signed-off-by: Jan Grulich @@ -100921,10 +100921,10 @@ index 0000000000000000000000000000000000000000..ad2b5b89bc8213dc2e277306ef50d6e3 +MODULE_DESCRIPTION("ASoC Driver for RaspiDAC Rev.3x"); +MODULE_LICENSE("GPL v2"); -From b94460f020bff1533d251a6fa5c5d56f65ff32e2 Mon Sep 17 00:00:00 2001 +From 1f13e0de937e08bbccf2c5ec0484aaaa954b59f1 Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Thu, 7 Apr 2016 21:26:21 +0100 -Subject: [PATCH 074/139] Add Support for JustBoom Audio boards +Subject: [PATCH 074/140] Add Support for JustBoom Audio boards justboom-dac: Adjust for ALSA API change @@ -101380,10 +101380,10 @@ index 0000000000000000000000000000000000000000..909cf8928f2f4313982316f9c5b8a709 +MODULE_DESCRIPTION("ASoC Driver for JustBoom PI Digi HAT Sound Card"); +MODULE_LICENSE("GPL v2"); -From d9a3c7a27491bfefee76351a7760cab2201bc015 Mon Sep 17 00:00:00 2001 +From cbfd93d424b1b26ac2254bb22531c0c21a3a5a4a Mon Sep 17 00:00:00 2001 From: Andrey Grodzovsky Date: Tue, 3 May 2016 22:10:59 -0400 -Subject: [PATCH 075/139] ARM: adau1977-adc: Add basic machine driver for +Subject: [PATCH 075/140] ARM: adau1977-adc: Add basic machine driver for adau1977 codec driver. This commit adds basic support for the codec usage including: Device tree overlay, @@ -101565,10 +101565,10 @@ index 0000000000000000000000000000000000000000..f3d7e5db7bb912e1d7ca6f8e8d42df5f +MODULE_DESCRIPTION("ASoC Driver for ADAU1977 ADC"); +MODULE_LICENSE("GPL v2"); -From 259569d6df34636021bddd697d680539a66aeb5e Mon Sep 17 00:00:00 2001 +From a947dd40bcf428ff1ca6c9410a6867d414a4ef2d Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Mon, 16 May 2016 21:36:31 +1000 -Subject: [PATCH 076/139] New AudioInjector.net Pi soundcard with low jitter +Subject: [PATCH 076/140] 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. @@ -101819,10 +101819,10 @@ index 0000000000000000000000000000000000000000..ef54e0f07ea03f59e9957b5d98f3e7fd +MODULE_ALIAS("platform:audioinjector-pi-soundcard"); + -From 4541b978f09cfc16093fe48285561d41d543698a Mon Sep 17 00:00:00 2001 +From 6d123e18c0a7a8b69c017f08c73588b70bb82eee Mon Sep 17 00:00:00 2001 From: DigitalDreamtime Date: Thu, 30 Jun 2016 18:38:42 +0100 -Subject: [PATCH 077/139] Add IQAudIO Digi WM8804 board support +Subject: [PATCH 077/140] Add IQAudIO Digi WM8804 board support Support IQAudIO Digi board with iqaudio_digi machine driver and iqaudio-digi-wm8804-audio overlay. @@ -102122,10 +102122,10 @@ index 0000000000000000000000000000000000000000..33aa2be8a43a12a12cfb5d844dd9732c +MODULE_DESCRIPTION("ASoC Driver for IQAudIO WM8804 Digi"); +MODULE_LICENSE("GPL v2"); -From c75e8ccd95298d8eb3bb890a06cae00631f12787 Mon Sep 17 00:00:00 2001 +From 17f633eb2b07f2b2f3d6a84c8f532aa84931a2bd Mon Sep 17 00:00:00 2001 From: escalator2015 Date: Tue, 24 May 2016 16:20:09 +0100 -Subject: [PATCH 078/139] New driver for RRA DigiDAC1 soundcard using WM8741 + +Subject: [PATCH 078/140] New driver for RRA DigiDAC1 soundcard using WM8741 + WM8804 --- @@ -102598,10 +102598,10 @@ index 0000000000000000000000000000000000000000..f200688bb4ae32b90a0ced555aed94b0 +MODULE_DESCRIPTION("ASoC Driver for RRA DigiDAC1"); +MODULE_LICENSE("GPL v2"); -From 782b0e7e3a6db4124de9b319d6b5c8e26d5548bd Mon Sep 17 00:00:00 2001 +From bc37f48b84eb53f6b3cd8002b44b700f91d32cdc Mon Sep 17 00:00:00 2001 From: DigitalDreamtime Date: Sat, 2 Jul 2016 16:26:19 +0100 -Subject: [PATCH 079/139] Add support for Dion Audio LOCO DAC-AMP HAT +Subject: [PATCH 079/140] Add support for Dion Audio LOCO DAC-AMP HAT Using dedicated machine driver and pcm5102a codec driver. @@ -102774,10 +102774,10 @@ index 0000000000000000000000000000000000000000..65e03741d349a2dc5bd91f69855ea952 +MODULE_DESCRIPTION("ASoC Driver for DionAudio LOCO"); +MODULE_LICENSE("GPL v2"); -From e1b319c67d6a7fda6834372fe14336cd9e087527 Mon Sep 17 00:00:00 2001 +From aff9b0b91eea30a218c22f5de3131f4a1b594563 Mon Sep 17 00:00:00 2001 From: Clive Messer Date: Mon, 19 Sep 2016 14:01:04 +0100 -Subject: [PATCH 080/139] Allo Piano DAC boards: Initial 2 channel (stereo) +Subject: [PATCH 080/140] 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, @@ -102984,10 +102984,10 @@ index 0000000000000000000000000000000000000000..eaf50fb6dbca1970ae1c6f8662088b0f +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Piano DAC"); +MODULE_LICENSE("GPL v2"); -From fc74d3c6e91d3fac0e293569c1a7744bd4787a26 Mon Sep 17 00:00:00 2001 +From bc686aace22fd701e6ff66370db447252e5f4f2b Mon Sep 17 00:00:00 2001 From: Raashid Muhammed Date: Mon, 27 Mar 2017 12:35:00 +0530 -Subject: [PATCH 081/139] Add support for Allo Piano DAC 2.1 plus add-on board +Subject: [PATCH 081/140] 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. @@ -103732,10 +103732,10 @@ index 0000000000000000000000000000000000000000..56e43f98846b41e487b3089813f7edc3 +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Piano DAC Plus"); +MODULE_LICENSE("GPL v2"); -From a7e595ad83ebaddb21612cb2ed61a88252ed11cc Mon Sep 17 00:00:00 2001 +From 013940554fc9adb417a3b73847f6b77602d5a98c Mon Sep 17 00:00:00 2001 From: BabuSubashChandar Date: Tue, 28 Mar 2017 20:04:42 +0530 -Subject: [PATCH 082/139] Add support for Allo Boss DAC add-on board for +Subject: [PATCH 082/140] Add support for Allo Boss DAC add-on board for Raspberry Pi. (#1924) Signed-off-by: Baswaraj K @@ -104438,10 +104438,10 @@ index 0000000000000000000000000000000000000000..203ab76c7045b081578e23bda1099dd1 +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Boss DAC"); +MODULE_LICENSE("GPL v2"); -From 894c186f284cb08758580c22a0ebeda5275f779d Mon Sep 17 00:00:00 2001 +From 579235d8dedd478d94fdec39f645aee1ad0f2598 Mon Sep 17 00:00:00 2001 From: gtrainavicius Date: Sun, 23 Oct 2016 12:06:53 +0300 -Subject: [PATCH 083/139] Support for Blokas Labs pisound board +Subject: [PATCH 083/140] Support for Blokas Labs pisound board Pisound dynamic overlay (#1760) @@ -105640,10 +105640,10 @@ index 0000000000000000000000000000000000000000..06ff1e53dc9d860946965b6303577762 +MODULE_DESCRIPTION("ASoC Driver for pisound, http://blokas.io/pisound"); +MODULE_LICENSE("GPL v2"); -From 7e9d56629ca2ea75dd9503c837c8764428a8da32 Mon Sep 17 00:00:00 2001 +From 71ed5d581e56846063f9d7b5890a73cbef3d4120 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 22 Jan 2017 12:49:37 +0100 -Subject: [PATCH 084/139] ASoC: Add driver for Cirrus Logic Audio Card +Subject: [PATCH 084/140] 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 @@ -106708,10 +106708,10 @@ index 0000000000000000000000000000000000000000..ac8651ddff7bd3701dffe22c7fb88352 +MODULE_DESCRIPTION("ASoC driver for Cirrus Logic Audio Card"); +MODULE_LICENSE("GPL"); -From 67d8b5a7c0782ffef9767ba0f0868834e74c0602 Mon Sep 17 00:00:00 2001 +From 642b3e3f9648897f711272296fcb8c61f99d0fe7 Mon Sep 17 00:00:00 2001 From: Miquel Date: Fri, 24 Feb 2017 20:51:06 +0100 -Subject: [PATCH 085/139] sound: Support for Dion Audio LOCO-V2 DAC-AMP HAT +Subject: [PATCH 085/140] sound: Support for Dion Audio LOCO-V2 DAC-AMP HAT Signed-off-by: Miquel Blauw --- @@ -106906,10 +106906,10 @@ index 0000000000000000000000000000000000000000..a009c49477972a9832175d86f201b035 +MODULE_DESCRIPTION("ASoC Driver for DionAudio LOCO-V2"); +MODULE_LICENSE("GPL v2"); -From 214c0a151d675423066fd8a05c3386dc5bb24163 Mon Sep 17 00:00:00 2001 +From 1504d1afb59b6dbdfa5c79a7538d6531acc7b28f Mon Sep 17 00:00:00 2001 From: Fe-Pi Date: Wed, 1 Mar 2017 04:42:43 -0700 -Subject: [PATCH 086/139] Add support for Fe-Pi audio sound card. (#1867) +Subject: [PATCH 086/140] 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. @@ -107123,10 +107123,10 @@ index 0000000000000000000000000000000000000000..015b56fd73cc36be5b5eecd17548fd03 +MODULE_DESCRIPTION("ASoC Driver for Fe-Pi Audio"); +MODULE_LICENSE("GPL v2"); -From bd490d673dbb2f9e8b223402c04574a96366a681 Mon Sep 17 00:00:00 2001 +From 791fa3a2bf519f8f548b53c243af962fbd81c9be Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Wed, 8 Mar 2017 20:04:13 +1100 -Subject: [PATCH 087/139] Add support for the AudioInjector.net Octo sound card +Subject: [PATCH 087/140] Add support for the AudioInjector.net Octo sound card AudioInjector Octo: sample rates, regulators, reset @@ -107528,10 +107528,10 @@ index 0000000000000000000000000000000000000000..dcf403ab37639ba79e38278d7e4b1ade +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:audioinjector-octo-soundcard"); -From 0e5a3ad859fe3baa9e4319a2e4c1be052b3ea728 Mon Sep 17 00:00:00 2001 +From 99bf92dae267748e5ae9a021a67caf766afd7140 Mon Sep 17 00:00:00 2001 From: Peter Malkin Date: Mon, 27 Mar 2017 16:38:21 -0700 -Subject: [PATCH 088/139] Driver support for Google voiceHAT soundcard. +Subject: [PATCH 088/140] Driver support for Google voiceHAT soundcard. --- sound/soc/bcm/Kconfig | 7 ++ @@ -107922,10 +107922,10 @@ index 0000000000000000000000000000000000000000..225854b8e5298b3c3018f59a49404354 +MODULE_DESCRIPTION("ASoC Driver for Google voiceHAT SoundCard"); +MODULE_LICENSE("GPL v2"); -From 6048d11526c6e66a1848d4d34f4aee89d9587625 Mon Sep 17 00:00:00 2001 +From d5e54868ee75f6d1ce055b3c9078e4cfecdf016d Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 21 Oct 2015 14:55:21 +0100 -Subject: [PATCH 089/139] rpi_display: add backlight driver and overlay +Subject: [PATCH 089/140] 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 @@ -108094,10 +108094,10 @@ index 0000000000000000000000000000000000000000..14a0d9b037395497c1fdae2961feccd5 +MODULE_DESCRIPTION("Raspberry Pi mailbox based Backlight Driver"); +MODULE_LICENSE("GPL"); -From 4ea4714b4b512301ebc98fe4aa4be9ca8bb65ed3 Mon Sep 17 00:00:00 2001 +From e62708dcbdc508ce55cb3062eab39e39554fcf67 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 23 Feb 2016 19:56:04 +0000 -Subject: [PATCH 090/139] bcm2835-virtgpio: Virtual GPIO driver +Subject: [PATCH 090/140] bcm2835-virtgpio: Virtual GPIO driver Add a virtual GPIO driver that uses the firmware mailbox interface to request that the VPU toggles LEDs. @@ -108371,10 +108371,10 @@ index 4a3d79d3b48eb483a4e4bf498f617515e3ad158f..5f34e1257117fb48013c9926a8a223d6 RPI_FIRMWARE_FRAMEBUFFER_SET_BACKLIGHT = 0x0004800f, -From 7edad3bf5e3f47a8ad3318858ba61d1a9af6beab Mon Sep 17 00:00:00 2001 +From 2e5662c28a7315b7953521d063b1b49bd884c804 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 20 Feb 2017 17:01:21 +0000 -Subject: [PATCH 091/139] bcm2835-gpio-exp: Driver for GPIO expander via +Subject: [PATCH 091/140] bcm2835-gpio-exp: Driver for GPIO expander via mailbox service Pi3 and Compute Module 3 have a GPIO expander that the @@ -108700,10 +108700,10 @@ index 5f34e1257117fb48013c9926a8a223d64a598ab7..c819c21b0158a59c1308882e5a40e3f3 /* Dispmanx TAGS */ RPI_FIRMWARE_FRAMEBUFFER_ALLOCATE = 0x00040001, -From fcbc1cc327228ea673a553f0af18c54209d63c68 Mon Sep 17 00:00:00 2001 +From 0a00eca8571235dd92e3b67669743274b2a9047d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 23 Feb 2016 17:26:48 +0000 -Subject: [PATCH 092/139] amba_pl011: Don't use DT aliases for numbering +Subject: [PATCH 092/140] 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 @@ -108732,10 +108732,10 @@ index 8a857bb34fbb26c6d60784d3fe7576730a9aa5b3..0afd6f3ee7e8d021d6e324915af4dc7c uap->old_cr = 0; uap->port.dev = dev; -From 0aa8b3217fd57dd9a2b7c9d3a4c7010d59ea86c1 Mon Sep 17 00:00:00 2001 +From d3ab8c998a963b346fca3911400291220d0e2e8f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 1 Mar 2017 16:07:39 +0000 -Subject: [PATCH 093/139] amba_pl011: Round input clock up +Subject: [PATCH 093/140] 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 @@ -108821,10 +108821,10 @@ index 0afd6f3ee7e8d021d6e324915af4dc7c7db56083..be4aa91bac66982b1fd9a13e9f971b3b /* unregisters the driver also if no more ports are left */ static void pl011_unregister_port(struct uart_amba_port *uap) -From 558eb33f85c31a56edfe2bc0a8fbc80829be5364 Mon Sep 17 00:00:00 2001 +From 303a038c02f401d8b3847939fcd04c74ac3e8351 Mon Sep 17 00:00:00 2001 From: Pantelis Antoniou Date: Wed, 3 Dec 2014 13:23:28 +0200 -Subject: [PATCH 094/139] OF: DT-Overlay configfs interface +Subject: [PATCH 094/140] 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. @@ -109256,10 +109256,10 @@ index 0000000000000000000000000000000000000000..0037e6868a6cda8706c88194c6a4454b +} +late_initcall(of_cfs_init); -From 95e1b5476222d1a8872c75989b729cfd3715ca7f Mon Sep 17 00:00:00 2001 +From f502f347406fe176f47bc0e283576d44bbcb6e8b Mon Sep 17 00:00:00 2001 From: Cheong2K Date: Fri, 26 Feb 2016 18:20:10 +0800 -Subject: [PATCH 095/139] brcm: adds support for BCM43341 wifi +Subject: [PATCH 095/140] brcm: adds support for BCM43341 wifi brcmfmac: Disable power management @@ -109305,7 +109305,7 @@ Signed-off-by: Phil Elwell 3 files changed, 26 insertions(+), 10 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -index cd1d6730eab73d514db5a1b88d442607c7834e3d..844bd80458a53e3134c8a54d3958e559c39c5551 100644 +index 617199c0e5a0e644576b3c73be0808878d4c102b..e1bfd47ae97923a9f14689d8a0e5f45f5efa5650 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -2745,6 +2745,8 @@ brcmf_cfg80211_set_power_mgmt(struct wiphy *wiphy, struct net_device *ndev, @@ -109336,7 +109336,7 @@ index cd1d6730eab73d514db5a1b88d442607c7834e3d..844bd80458a53e3134c8a54d3958e559 if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_MBSS)) brcmf_fil_iovar_int_set(ifp, "mbss", 0); brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_REGULATORY, -@@ -6711,12 +6716,18 @@ static s32 brcmf_translate_country_code(struct brcmf_pub *drvr, char alpha2[2], +@@ -6710,12 +6715,18 @@ static s32 brcmf_translate_country_code(struct brcmf_pub *drvr, char alpha2[2], struct brcmfmac_pd_cc *country_codes; struct brcmfmac_pd_cc_entry *cc; s32 found_index; @@ -109357,7 +109357,7 @@ index cd1d6730eab73d514db5a1b88d442607c7834e3d..844bd80458a53e3134c8a54d3958e559 } if ((alpha2[0] == ccreq->country_abbrev[0]) && -@@ -6740,10 +6751,14 @@ static s32 brcmf_translate_country_code(struct brcmf_pub *drvr, char alpha2[2], +@@ -6739,10 +6750,14 @@ static s32 brcmf_translate_country_code(struct brcmf_pub *drvr, char alpha2[2], brcmf_dbg(TRACE, "No country code match found\n"); return -EINVAL; } @@ -109410,10 +109410,10 @@ index e03450059b06c0bfe510148f985c19668bcd3dff..825473488513f41a4abfc8ccd88e0bad BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43362_CHIP_ID, 0xFFFFFFFE, 43362), BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, 4339), -From ef2d2c82a23a90180c24dccc37fcb83e04bc1a6f Mon Sep 17 00:00:00 2001 +From 8854363a8f788bffbb6003e9526c0dc76952c7ef Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 17 Feb 2017 15:26:13 +0000 -Subject: [PATCH 096/139] brcmfmac: Mute expected startup 'errors' +Subject: [PATCH 096/140] brcmfmac: Mute expected startup 'errors' The brcmfmac WiFi driver always complains about the '00' country code. Modify the driver to ignore '00' silently. @@ -109424,10 +109424,10 @@ Signed-off-by: Phil Elwell 1 file changed, 2 insertions(+) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -index 844bd80458a53e3134c8a54d3958e559c39c5551..0e3c71dc0da4c21954ab1a1b329549a1321518ca 100644 +index e1bfd47ae97923a9f14689d8a0e5f45f5efa5650..e8637fe8026eab77902c9322fe0e4d4334e3cbb2 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -@@ -6782,6 +6782,8 @@ static void brcmf_cfg80211_reg_notifier(struct wiphy *wiphy, +@@ -6781,6 +6781,8 @@ static void brcmf_cfg80211_reg_notifier(struct wiphy *wiphy, /* ignore non-ISO3166 country codes */ for (i = 0; i < sizeof(req->alpha2); i++) if (req->alpha2[i] < 'A' || req->alpha2[i] > 'Z') { @@ -109437,10 +109437,10 @@ index 844bd80458a53e3134c8a54d3958e559c39c5551..0e3c71dc0da4c21954ab1a1b329549a1 req->alpha2[0], req->alpha2[1]); return; -From d7cbf579f471fa2e91c65e4a98534d609205e784 Mon Sep 17 00:00:00 2001 +From f0eace344ea37f67cd1d67f751f26536ef644c8d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 17 Dec 2015 13:37:07 +0000 -Subject: [PATCH 097/139] hci_h5: Don't send conf_req when ACTIVE +Subject: [PATCH 097/140] 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. @@ -109463,10 +109463,10 @@ index 90d0456b67446bcc624fab4b1542c4eaf21531b1..f9adeac3bbba6418dcca298c55706356 if (H5_HDR_LEN(hdr) > 2) h5->tx_win = (data[2] & 0x07); -From f8da815b5992bbde3d6424d69f7d16ab5c4bd492 Mon Sep 17 00:00:00 2001 +From c19a083cb96360dcb7e63268a4ba959e28bec526 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 13 Apr 2015 17:16:29 +0100 -Subject: [PATCH 098/139] config: Add default configs +Subject: [PATCH 098/140] config: Add default configs --- arch/arm/configs/bcm2709_defconfig | 1314 +++++++++++++++++++++++++++++++++++ @@ -112124,10 +112124,10 @@ index 0000000000000000000000000000000000000000..ace19d6f5bc04091130bd28b65ce25e8 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y -From 7c3025f8028484ac4ab865a9a0520ee3b2b99d7a Mon Sep 17 00:00:00 2001 +From 4b4b744e200594d997b9fb60739a86208e9c166d Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Wed, 24 Aug 2016 03:35:56 -0700 -Subject: [PATCH 099/139] Add arm64 configuration and device tree differences. +Subject: [PATCH 099/140] Add arm64 configuration and device tree differences. Disable MMC_BCM2835_SDHOST and MMC_BCM2835 since these drivers are crashing at the moment. @@ -113541,10 +113541,10 @@ index 0000000000000000000000000000000000000000..e6b09fafa27eed2b762e3d53b55041f7 +CONFIG_LIBCRC32C=y +CONFIG_BCM2835_VCHIQ=n -From 4d578832887e4c726d87117c7f545e8a3144b547 Mon Sep 17 00:00:00 2001 +From 660dc68d31eff83c2f77bd69eb07fb98cf7e7d58 Mon Sep 17 00:00:00 2001 From: Electron752 Date: Thu, 12 Jan 2017 07:07:08 -0800 -Subject: [PATCH 100/139] ARM64: Make it work again on 4.9 (#1790) +Subject: [PATCH 100/140] 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. @@ -113947,10 +113947,10 @@ index e6b09fafa27eed2b762e3d53b55041f793683d27..c7e891d72969a388d9b135a36dbfc9c9 CONFIG_LIBCRC32C=y -CONFIG_BCM2835_VCHIQ=n -From 727b12de7bd89437db3874db59142959fb5cf3d4 Mon Sep 17 00:00:00 2001 +From 111589bcfbf85c0ddcee7bb6f9b4234aff09428a Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Thu, 12 Jan 2017 19:10:07 -0800 -Subject: [PATCH 101/139] ARM64: Enable HDMI audio and vc04_services in +Subject: [PATCH 101/140] ARM64: Enable HDMI audio and vc04_services in bcmrpi3_defconfig Signed-off-by: Michael Zoran @@ -113979,10 +113979,10 @@ index c7e891d72969a388d9b135a36dbfc9c9cb609bf8..4b90f9b64abe9f089ba56b13d5a00de3 CONFIG_BCM2835_MBOX=y # CONFIG_IOMMU_SUPPORT is not set -From 8beceba8476275964e35ffcc8fcc3e7493fafadd Mon Sep 17 00:00:00 2001 +From 0fbf9beab81e3c999ca31e06fd68506eae152d98 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Thu, 12 Jan 2017 19:14:03 -0800 -Subject: [PATCH 102/139] ARM64: Run bcmrpi3_defconfig through savedefconfig. +Subject: [PATCH 102/140] ARM64: Run bcmrpi3_defconfig through savedefconfig. Signed-off-by: Michael Zoran --- @@ -114027,10 +114027,10 @@ index 4b90f9b64abe9f089ba56b13d5a00de33343bfb9..dac962ca1634662ce7d966f1ffb53b5b CONFIG_FB_TFT_AGM1264K_FL=m CONFIG_FB_TFT_BD663474=m -From 8166fcd27513ed13e76584b9463e4849cac4263d Mon Sep 17 00:00:00 2001 +From bf4e0d7b2f8f6ef47ef6456dae714bfefbad0f82 Mon Sep 17 00:00:00 2001 From: Electron752 Date: Sat, 14 Jan 2017 02:54:26 -0800 -Subject: [PATCH 103/139] ARM64: Enable Kernel Address Space Randomization +Subject: [PATCH 103/140] ARM64: Enable Kernel Address Space Randomization (#1792) Randomization allows the mapping between virtual addresses and physical @@ -114062,10 +114062,10 @@ index dac962ca1634662ce7d966f1ffb53b5bfa27c506..aae33b4b3c3e736ea7cd3ca242158ad6 CONFIG_BINFMT_MISC=y CONFIG_COMPAT=y -From ecbbb52bff43297fab1c2d20b43f500ceefe5bd3 Mon Sep 17 00:00:00 2001 +From e19dd8254b23b766d9472230c15365857beb78ad Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sun, 15 Jan 2017 07:31:59 -0800 -Subject: [PATCH 104/139] ARM64: Enable RTL8187/RTL8192CU wifi in build config +Subject: [PATCH 104/140] 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 @@ -114090,10 +114090,10 @@ index aae33b4b3c3e736ea7cd3ca242158ad6ba558aff..b7d762df19b85e369a32cd823dfd0621 CONFIG_ZD1211RW=m CONFIG_MAC80211_HWSIM=m -From 1db90c837d7460dcadd1d088c1298f7460802671 Mon Sep 17 00:00:00 2001 +From b033b08aff9e0fd97f774bec18650db2d89f90cf Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:33:51 -0800 -Subject: [PATCH 105/139] ARM64/DWC_OTG: Port dwc_otg driver to ARM64 +Subject: [PATCH 105/140] 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 @@ -114436,10 +114436,10 @@ index 6b2c7d0c93f36a63863ff4b0ecc1f3eab77e058b..d7b700ff17821ad1944e36721fe6b2db /** The OS page size */ #define DWC_OS_PAGE_SIZE PAGE_SIZE -From b9e17acfcb4dd48648c83b5a672db2e212ec547b Mon Sep 17 00:00:00 2001 +From 9d2df65f7c12a4c29beb51ee01692919880f7b13 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:43:57 -0800 -Subject: [PATCH 106/139] ARM64: Round-Robin dispatch IRQs between CPUs. +Subject: [PATCH 106/140] 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 @@ -114513,10 +114513,10 @@ index c4e151451cf8c8ebde5225515eac2786d6f61d46..9a7ee04ee0d9b7aa734cf3159ed59c19 .name = "bcm2836-gpu", .irq_mask = bcm2836_arm_irqchip_mask_gpu_irq, -From 603355b1c6dd1fdd00cce99b2273d746e86c2ba8 Mon Sep 17 00:00:00 2001 +From f91e4f26a88354b53cc449d3aa0b95eda5fee3ff Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:45:03 -0800 -Subject: [PATCH 107/139] ARM64: Enable DWC_OTG Driver In ARM64 Build +Subject: [PATCH 107/140] ARM64: Enable DWC_OTG Driver In ARM64 Build Config(bcmrpi3_defconfig) Signed-off-by: Michael Zoran @@ -114537,10 +114537,10 @@ index b7d762df19b85e369a32cd823dfd062145bdefa7..4d85c231c5ea0244e1b05fb4a5e3c8fd CONFIG_USB_STORAGE=y CONFIG_USB_STORAGE_REALTEK=m -From 296167b8c011da4740031e8fea1c66bf263d4d69 Mon Sep 17 00:00:00 2001 +From 6e952425478fad34d2031c468186696a15c7f058 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 11 Feb 2017 01:18:31 -0800 -Subject: [PATCH 108/139] ARM64: Force hardware emulation of deprecated +Subject: [PATCH 108/140] ARM64: Force hardware emulation of deprecated instructions. --- @@ -114568,10 +114568,10 @@ index f0e6d717885b1fcf3b22f64c10c38f19c25f809d..0cb830d30fb6d2bd26ab572efe893649 case INSN_OBSOLETE: insn->current_mode = INSN_UNDEF; -From 239e6044f40f0a7df8f2339a9bdfb657bfb170df Mon Sep 17 00:00:00 2001 +From 8f7127f1f2b5fe5a50978a7a964d2f9e2f5dddb0 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 10 Feb 2017 17:57:08 -0800 -Subject: [PATCH 109/139] build/arm64: Add rules for .dtbo files for dts +Subject: [PATCH 109/140] build/arm64: Add rules for .dtbo files for dts overlays We now create overlays as .dtbo files. @@ -114596,10 +114596,10 @@ index f839ecd919f934c54a73d8e9f8179aff3d3cba26..a4010b3cc8ef11d449bcff8018522667 dtbs: prepare scripts -From a67221372892bc577297a53facd41a98770a2ed4 Mon Sep 17 00:00:00 2001 +From fe73b3e6149764789a96e593e781b6712e9af526 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 9 May 2016 17:28:18 -0700 -Subject: [PATCH 110/139] clk: bcm2835: Mark GPIO clocks enabled at boot as +Subject: [PATCH 110/140] clk: bcm2835: Mark GPIO clocks enabled at boot as critical. These divide off of PLLD_PER and are used for the ethernet and wifi @@ -114637,10 +114637,10 @@ index 39f72da6ba1f6ec6ec41d5dc1bf46344aab008da..fe3298b54cdfb96bd90fb4f39e13921d * rate changes on at least of the parents. */ -From a348ce4c3d2497b2126657e8230d64f37835cf3c Mon Sep 17 00:00:00 2001 +From 6e78dde9086546d975779dd11998191f7c8d482e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 24 Feb 2015 13:40:50 +0000 -Subject: [PATCH 111/139] pinctrl-bcm2835: Fix interrupt handling for GPIOs +Subject: [PATCH 111/140] pinctrl-bcm2835: Fix interrupt handling for GPIOs 28-31 and 46-53 Contrary to the documentation, the BCM2835 GPIO controller actually has @@ -114673,10 +114673,10 @@ index 6351fe7f8e314ac5ebb102dd20847b383fd5b857..28745af5aadf3cb91fa7ff39118385c3 }, }; -From f05990f21eeea2c0c054e9cea5f3afc0fd0970ac Mon Sep 17 00:00:00 2001 +From 3a6fe6c4eed3e2ee6906d341e598a9e7c21d80e0 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 10:06:56 +0000 -Subject: [PATCH 112/139] ASoC: Add prompt for ICS43432 codec +Subject: [PATCH 112/140] 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 @@ -114701,10 +114701,10 @@ index adf3b7b75e303430d6a03a2b457d389596f39c1a..ba4a36dd0196e8eece5e22ad6717c189 config SND_SOC_INNO_RK3036 tristate "Inno codec driver for RK3036 SoC" -From 0c1424fffac2766b62fc71ec1a9a9a3a0b01aa38 Mon Sep 17 00:00:00 2001 +From d3af9d7df0099df305b0c43b3033aae512a51f94 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 16:34:46 +0000 -Subject: [PATCH 113/139] bcm2835-aux: Add aux interrupt controller +Subject: [PATCH 113/140] 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 @@ -114868,10 +114868,10 @@ index bd750cf2238d61489811e7d7bd3b5f9950ed53c8..41e0702fae4692221980b0d02aed1ba6 BCM2835_AUX_CLOCK_COUNT, GFP_KERNEL); if (!onecell) -From 489750b88750dd3a9595145cd306d866aab610f5 Mon Sep 17 00:00:00 2001 +From e220064256ea5c61ec0f313f96a32e1fe6d9d22f Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Fri, 29 Apr 2016 10:32:17 -0700 -Subject: [PATCH 114/139] mmc: read mmc alias from device tree +Subject: [PATCH 114/140] mmc: read mmc alias from device tree To get the SD/MMC host device ID, read the alias from the device tree. @@ -114928,10 +114928,10 @@ index 3f8c85d5aa094b43666904c7dbbe5e62c9763c19..4dbd0e8e27a496bfbe67d188cf795ecc kfree(host); return NULL; -From 54a4c382466562453a36364b01900632107392fa Mon Sep 17 00:00:00 2001 +From a294e5e5ea1bbd1e0d1a3d41decac1091a3d921e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 11 May 2016 12:50:33 +0100 -Subject: [PATCH 115/139] mmc: Add MMC_QUIRK_ERASE_BROKEN for some cards +Subject: [PATCH 115/140] mmc: Add MMC_QUIRK_ERASE_BROKEN for some cards Some SD cards have been found that corrupt data when small blocks are erased. Add a quirk to indicate that ERASE should not be used, @@ -115071,10 +115071,10 @@ index aad015e0152b7f1d32f92c500825b723498d1be9..d44a9c84a90a02388c05a427814fb8fc unsigned int erase_size; /* erase size in sectors */ -From 53bf52cdbf0b9936678e793abf464f3b9d16f207 Mon Sep 17 00:00:00 2001 +From e6823ad9f788a410bd7ed7e107956cd62ce3e535 Mon Sep 17 00:00:00 2001 From: Yasunari Takiguchi Date: Fri, 14 Apr 2017 10:43:57 +0100 -Subject: [PATCH 116/139] This is the driver for Sony CXD2880 DVB-T2/T tuner + +Subject: [PATCH 116/140] 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. @@ -131206,10 +131206,10 @@ index 0000000000000000000000000000000000000000..82e122349055be817eb74ed5bbcd7560 +MODULE_AUTHOR("Sony Semiconductor Solutions Corporation"); +MODULE_LICENSE("GPL v2"); -From 5049d2845dd95c2c47267ce6bc291603544d01e6 Mon Sep 17 00:00:00 2001 +From 5cdc72105b48b2fbf86226ab1ae1fe84534e5eff Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 09:18:09 +0100 -Subject: [PATCH 117/139] raspberrypi-firmware: Define the MBOX channel in the +Subject: [PATCH 117/140] raspberrypi-firmware: Define the MBOX channel in the header. Signed-off-by: Eric Anholt @@ -131231,10 +131231,10 @@ index c819c21b0158a59c1308882e5a40e3f3fe73cbdf..de2a3dcd562beb752266eaf0070e5586 enum rpi_firmware_property_status { -From 93fe8d377242427eebafdb0af3ede66d90b0ea64 Mon Sep 17 00:00:00 2001 +From dd7b64c166de3e91054b24a1df02359cb54b2eb9 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 09:16:19 +0100 -Subject: [PATCH 118/139] raspberrypi-firmware: Export the general transaction +Subject: [PATCH 118/140] raspberrypi-firmware: Export the general transaction function. The vc4-firmware-kms module is going to be doing the MBOX FB call. @@ -131278,10 +131278,10 @@ index de2a3dcd562beb752266eaf0070e55861d553f5f..dc7fd58afd5dddebf9b17065bb069a1d #endif /* __SOC_RASPBERRY_FIRMWARE_H__ */ -From abd439dbafac0faf4e2d2aec71cfe2bfb4b67483 Mon Sep 17 00:00:00 2001 +From 921f66fe6630190ccb4a1bc64cfc4a90cdf15da7 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 08:39:33 +0100 -Subject: [PATCH 119/139] drm/vc4: Add a mode for using the closed firmware for +Subject: [PATCH 119/140] drm/vc4: Add a mode for using the closed firmware for display. Signed-off-by: Eric Anholt @@ -132054,10 +132054,10 @@ index 0000000000000000000000000000000000000000..1e09980c61a91246156c4ab661c03779 + }, +}; -From d3aa2b5d881bf151bdb1286647bec106631733de Mon Sep 17 00:00:00 2001 +From e3bece6d519beef43d53682e771108f0f1d46642 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:09:18 -0800 -Subject: [PATCH 120/139] drm/vc4: Name the primary and cursor planes in fkms. +Subject: [PATCH 120/140] drm/vc4: Name the primary and cursor planes in fkms. This makes debugging nicer, compared to trying to remember what the IDs are. @@ -132081,10 +132081,10 @@ index 1e09980c61a91246156c4ab661c03779baa1fc97..174a2f90c5bd78798ed47cca243b68a9 if (type == DRM_PLANE_TYPE_PRIMARY) { vc4_plane->fbinfo = -From eb5901313c3752e561c064985cf9bb370aeb4c06 Mon Sep 17 00:00:00 2001 +From b52cd3e3598ac22f35f7d57751ee64a74597ee02 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:10:09 -0800 -Subject: [PATCH 121/139] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of +Subject: [PATCH 121/140] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of fkms. Trying to debug weston on fkms involved figuring out what calls I was @@ -132154,10 +132154,10 @@ index 174a2f90c5bd78798ed47cca243b68a968e6e735..611a3c6d622deb9b511fe70c363d201b RPI_FIRMWARE_SET_CURSOR_STATE, &packet_state, -From 073e783483f9de954d519bcf884ab7220cc5389f Mon Sep 17 00:00:00 2001 +From 7728caab44141e4a39b28edf392549bac2acecc3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 2 Feb 2017 09:42:18 -0800 -Subject: [PATCH 122/139] drm/vc4: Fix sending of page flip completion events +Subject: [PATCH 122/140] 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 @@ -132199,10 +132199,10 @@ index 611a3c6d622deb9b511fe70c363d201b091c414a..eb97443533c5a8fb5e142541adb1165b static void vc4_crtc_handle_page_flip(struct vc4_crtc *vc4_crtc) -From 2561444cef2bd20693e73e65d826d23ccceb83d3 Mon Sep 17 00:00:00 2001 +From 09e1cc525a8e356a49c6ecdfe08eb7422cfc460b Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 18 Apr 2017 21:43:46 +0100 -Subject: [PATCH 123/139] vc4_fkms: Apply firmware overscan offset to hardware +Subject: [PATCH 123/140] vc4_fkms: Apply firmware overscan offset to hardware cursor --- @@ -132259,10 +132259,10 @@ index eb97443533c5a8fb5e142541adb1165b55e32aea..aa0ab7bcd904b775f64045c4d5baf39a return 0; -From 2daae4e08422f0f5b78d40b2204eb9f6b9e4ee89 Mon Sep 17 00:00:00 2001 +From f9bca07a32f0fa1ac4923413a5445ba3ba0353c9 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 15 May 2017 09:28:36 -0700 -Subject: [PATCH 124/139] drm/vc4: Mark the device as active when enabling +Subject: [PATCH 124/140] drm/vc4: Mark the device as active when enabling runtime PM. Failing to do so meant that we got a resume() callback on first use of @@ -132288,10 +132288,10 @@ index 7cc346ad9b0baed63701d1fae8f0306aa7713129..c82326ff994d03719a66d42f8f9ac0e2 pm_runtime_set_autosuspend_delay(dev, 40); /* a little over 2 frames. */ pm_runtime_enable(dev); -From ad493de2e3d2751eddea68643b7965d1db42576e Mon Sep 17 00:00:00 2001 +From 4c80e7deb25e71ceb8f4bc70a9f64562b94d9dc1 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 16 May 2017 14:39:49 +0100 -Subject: [PATCH 125/139] mmc: Change downstream MMC driver CONFIG option +Subject: [PATCH 125/140] mmc: Change downstream MMC driver CONFIG option The upstream SDHOST driver has now claimed CONFIG_MMC_BCM2835, which clashes with the downstream MMC driver. Rename the downstream option to @@ -132339,10 +132339,10 @@ index f4b8951af214fd0b0392d4fb38b29a0b41c7340e..d352fabf6b61c803fef3e10f974214bf obj-$(CONFIG_MMC_WBSD) += wbsd.o obj-$(CONFIG_MMC_AU1X) += au1xmmc.o -From 50c770400200c76b817e5267b64a3b9049805ef0 Mon Sep 17 00:00:00 2001 +From ad8551ebd1e61b5d01b8695cfc7a9f24fffcbe43 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 16 May 2017 19:34:52 +0100 -Subject: [PATCH 126/139] config: Add CONFIG_I2C_ROBOTFUZZ_OSIF +Subject: [PATCH 126/140] config: Add CONFIG_I2C_ROBOTFUZZ_OSIF --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -132374,10 +132374,10 @@ index ace19d6f5bc04091130bd28b65ce25e863117a43..17952377907afac28fd982ca2f910206 CONFIG_SPI_BCM2835=m CONFIG_SPI_BCM2835AUX=m -From 0af0f97256bd40043970eb0da7c3eba9ff7af83a Mon Sep 17 00:00:00 2001 +From 69a8f591dae071cf72819d61ebb076417ef93ab7 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 18 May 2017 11:40:43 +0100 -Subject: [PATCH 127/139] config: Add FB_TFT_ST7789V module +Subject: [PATCH 127/140] config: Add FB_TFT_ST7789V module --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -132409,10 +132409,10 @@ index 17952377907afac28fd982ca2f9102067a062d6e..ef7bfc431c43eec6deb7c52e8cdac317 CONFIG_FB_TFT_TLS8204=m CONFIG_FB_TFT_UC1701=m -From 61e9796fff72dc3ebec973cb7a7bcf11f2681ee8 Mon Sep 17 00:00:00 2001 +From 026fa704cb712d4eacdd72e0f72e5fba4046f4e7 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 18 May 2017 15:36:46 +0100 -Subject: [PATCH 128/139] staging: bcm2835-audio: Fix memory corruption +Subject: [PATCH 128/140] staging: bcm2835-audio: Fix memory corruption I'm all for fixing memory leaks, but freeing a block while it is still being used is a recipe for hard-to-debug kernel exeptions. @@ -132447,10 +132447,10 @@ index 5f3d8f2339e34834d11edfa8de1d5819e3e32b4f..89f96f3c02805f4114ec9b488e18d00e return ret; } -From 5f906afc548c7d20dd8400357b6cec1bf6221c3e Mon Sep 17 00:00:00 2001 +From 4d04c0a1859fbb3da8e6be1f9e3b5c54dbe77041 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 15 May 2017 16:40:05 +0100 -Subject: [PATCH 129/139] config: Add CONFIG_TOUCHSCREEN_GOODIX +Subject: [PATCH 129/140] config: Add CONFIG_TOUCHSCREEN_GOODIX --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -132482,10 +132482,10 @@ index ef7bfc431c43eec6deb7c52e8cdac31794ccccbe..573cbd71ca0990b7a7e48fa3bbc98eec CONFIG_TOUCHSCREEN_RPI_FT5406=m CONFIG_TOUCHSCREEN_USB_COMPOSITE=m -From 3acf94bac396f495a6c8c46f161cca0431d901f9 Mon Sep 17 00:00:00 2001 +From be259f0f466e8e86d24ce99769a8b2bcfe79e28d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 16 May 2017 15:58:00 +0100 -Subject: [PATCH 130/139] config: Add CONFIG_TOUCHSCREEN_EDT_FT5X06 +Subject: [PATCH 130/140] config: Add CONFIG_TOUCHSCREEN_EDT_FT5X06 --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -132517,10 +132517,10 @@ index 573cbd71ca0990b7a7e48fa3bbc98eec2d3d776f..6c4d62cdea7e4ed642e265861c6f1c1a CONFIG_TOUCHSCREEN_USB_COMPOSITE=m CONFIG_TOUCHSCREEN_STMPE=m -From 7dacd05a62fffde672c18a059f8f58e35b671d89 Mon Sep 17 00:00:00 2001 +From af338c0f420324d2875c1371608faf9f3547f464 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 22 May 2017 13:35:28 +0100 -Subject: [PATCH 131/139] config: Add CONFIG_IPV6_SIT_6RD +Subject: [PATCH 131/140] config: Add CONFIG_IPV6_SIT_6RD --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -132552,10 +132552,10 @@ index 6c4d62cdea7e4ed642e265861c6f1c1a964e331c..676dfebfbab8f1cba521bc032b8d2137 CONFIG_IPV6_MULTIPLE_TABLES=y CONFIG_IPV6_SUBTREES=y -From 4e5d5465b62ea69b06d2b13048b4e9fac5bf3518 Mon Sep 17 00:00:00 2001 +From f91e0a39e873daa843f590e234298aca6b1d7c19 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 22 May 2017 15:28:27 +0100 -Subject: [PATCH 132/139] config: Add CONFIG_IPV6_ROUTE_INFO +Subject: [PATCH 132/140] config: Add CONFIG_IPV6_ROUTE_INFO --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -132587,10 +132587,10 @@ index 676dfebfbab8f1cba521bc032b8d21371c38abfa..4ae560370a972b9c56e8af38a537b1db CONFIG_INET6_ESP=m CONFIG_INET6_IPCOMP=m -From 84052be646624e8646171e27908260e06fad4aed Mon Sep 17 00:00:00 2001 +From 712da8e42a992418af1c2efd2682a220c4f9e381 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 26 Apr 2017 17:28:47 +0100 -Subject: [PATCH 133/139] clk: bcm2835: Limit PCM clock to OSC and PLLD_PER +Subject: [PATCH 133/140] clk: bcm2835: Limit PCM clock to OSC and PLLD_PER It is unwise to use sources other than the oscillator and PLLD_PER for the PCM peripheral (and perhaps others - TBD) because their rate can @@ -132635,10 +132635,10 @@ index fe3298b54cdfb96bd90fb4f39e13921d2e1d4356..c24b4defb2b046e4ecdc109befc2b224 [BCM2835_CLOCK_PWM] = REGISTER_PER_CLK( .name = "pwm", -From 9a984d2f9924bca1292cfc55f8c15e805b15db07 Mon Sep 17 00:00:00 2001 +From 598bf79e48ff2a28b6677f098ae63ca3b261c872 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 22 May 2017 13:56:41 +0100 -Subject: [PATCH 134/139] clk: bcm2835: Minimise clock jitter for PCM clock +Subject: [PATCH 134/140] clk: bcm2835: Minimise clock jitter for PCM clock Fractional clock dividers generate accurate average frequencies but with jitter, particularly when the integer divisor is small. @@ -132763,10 +132763,10 @@ index c24b4defb2b046e4ecdc109befc2b22497060647..db3ba74acf78f4dfec0d2206b58bc7c3 .tcnt_mux = 23), [BCM2835_CLOCK_PWM] = REGISTER_PER_CLK( -From 6104889414a6899946349e4ebacc5d093af84f98 Mon Sep 17 00:00:00 2001 +From 3f031b3665946b33f1e9f38fa6a60444baffb776 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 25 May 2017 16:04:53 +0100 -Subject: [PATCH 135/139] dwc_otg: make periodic scheduling behave properly for +Subject: [PATCH 135/140] dwc_otg: make periodic scheduling behave properly for FS buses If the root port is in full-speed mode, transfer times at 12mbit/s @@ -132937,10 +132937,10 @@ index 85a6d431ca54b47dc10573aa72d1ad69d06f2e36..4b1dd9de99e9e08b2e006fb5f8a7ef92 status = check_max_xfer_size(hcd, qh); if (status) { -From 135f6e5c276dc32a0de8961ae79a82db65499188 Mon Sep 17 00:00:00 2001 +From e17eb615c0fbd28025e605b07f63340699807910 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 19 May 2017 16:07:23 +0100 -Subject: [PATCH 136/139] serial: 8250: Add CAP_MINI, set for bcm2835aux +Subject: [PATCH 136/140] serial: 8250: Add CAP_MINI, set for bcm2835aux commit d087e7a991f1f61ee2c07db1be7c5cc2aa373f5d upstream. @@ -133013,10 +133013,10 @@ index 68fd045a7025047726860547ecd661b95d61ac80..af954e278d78002cc5d07086dcc69608 baud = serial8250_get_baud_rate(port, termios, old); -From 8fe800df3ddec9746663b9a87a1abbb838f90b9d Mon Sep 17 00:00:00 2001 +From eec15fbf4c06d43fe3628aaeb79e0b7cd1b4eb24 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 26 May 2017 12:50:31 +0100 -Subject: [PATCH 137/139] dwc_otg: fiq_fsm: Make isochronous compatibility +Subject: [PATCH 137/140] dwc_otg: fiq_fsm: Make isochronous compatibility checks work properly Get rid of the spammy printk and local pointer mangling. @@ -133080,10 +133080,10 @@ index 38bf5fc792d32352f9e208e0e90f968599b9bc31..71834cf365e67d7ad995bba7869216c4 return 1; } -From 773cd58298f8856da39c2232d36742f46c86f436 Mon Sep 17 00:00:00 2001 +From 1cd34f18e264f237d2966d2dd8bbbdc0f71c3f06 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 12 Jun 2017 13:05:43 +0100 -Subject: [PATCH 138/139] config: Add CONFIG_CAN_GS_USB +Subject: [PATCH 138/140] config: Add CONFIG_CAN_GS_USB --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -133115,10 +133115,10 @@ index 4ae560370a972b9c56e8af38a537b1dbebd5488a..8894ef2ed78968ea56d83d56ba4d770b CONFIG_IRLAN=m CONFIG_IRNET=m -From 63646e2421dc44fea758798804d408032c684627 Mon Sep 17 00:00:00 2001 +From 0c54cc5132b46ae0ce29c1633755eb4e8b8a672c Mon Sep 17 00:00:00 2001 From: P33M Date: Mon, 12 Jun 2017 16:10:03 +0100 -Subject: [PATCH 139/139] dwc_otg: add module parameter int_ep_interval_min +Subject: [PATCH 139/140] dwc_otg: add module parameter int_ep_interval_min Add a module parameter (defaulting to ignored) that clamps the polling rate of high-speed Interrupt endpoints to a minimum microframe interval. @@ -133199,3 +133199,173 @@ index 4b1dd9de99e9e08b2e006fb5f8a7ef92f20c2553..fe8e8f841f03660c2ad49ab8e66193be } DWC_DEBUGPL(DBG_HCD, "DWC OTG HCD QH Initialized\n"); + +From 32deb59eaae5fc26238776c279e62fef44bad526 Mon Sep 17 00:00:00 2001 +From: P33M +Date: Tue, 20 Jun 2017 13:44:01 +0100 +Subject: [PATCH 140/140] dwc_otg: fiq_fsm: Add non-periodic TT exclusivity + constraints + +Certain hub types do not discriminate between pipe direction (IN or OUT) +when considering non-periodic transfers. Therefore these hubs get confused +if multiple transfers are issued in different directions with the same +device address and endpoint number. + +Constrain queuing non-periodic split transactions so they are performed +serially in such cases. + +Related: https://github.com/raspberrypi/linux/issues/2024 +--- + drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 32 ++++++++++++++++++ + drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h | 2 ++ + drivers/usb/host/dwc_otg/dwc_otg_hcd.c | 53 ++++++++++++++++++++++++++++-- + 3 files changed, 85 insertions(+), 2 deletions(-) + +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 208252645c09d1d17bf07673989f91b7f4b3ef7a..0163e9cf620ba58df36a872b82cea92734baada6 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c +@@ -191,6 +191,32 @@ static void notrace fiq_fsm_setup_csplit(struct fiq_state *st, int n) + mb(); + } + ++/** ++ * fiq_fsm_restart_np_pending() - Restart a single non-periodic contended transfer ++ * @st: Pointer to the channel's state ++ * @num_channels: Total number of host channels ++ * @orig_channel: Channel index of completed transfer ++ * ++ * In the case where an IN and OUT transfer are simultaneously scheduled to the ++ * same device/EP, inadequate hub implementations will misbehave. Once the first ++ * transfer is complete, a pending non-periodic split can then be issued. ++ */ ++static void notrace fiq_fsm_restart_np_pending(struct fiq_state *st, int num_channels, int orig_channel) ++{ ++ int i; ++ int dev_addr = st->channel[orig_channel].hcchar_copy.b.devaddr; ++ int ep_num = st->channel[orig_channel].hcchar_copy.b.epnum; ++ for (i = 0; i < num_channels; i++) { ++ if (st->channel[i].fsm == FIQ_NP_SSPLIT_PENDING && ++ st->channel[i].hcchar_copy.b.devaddr == dev_addr && ++ st->channel[i].hcchar_copy.b.epnum == ep_num) { ++ st->channel[i].fsm = FIQ_NP_SSPLIT_STARTED; ++ fiq_fsm_restart_channel(st, i, 0); ++ break; ++ } ++ } ++} ++ + static inline int notrace fiq_get_xfer_len(struct fiq_state *st, int n) + { + /* The xfersize register is a bit wonky. For IN transfers, it decrements by the packet size. */ +@@ -870,6 +896,9 @@ static int notrace noinline fiq_fsm_do_hcintr(struct fiq_state *state, int num_c + st->fsm = FIQ_NP_SPLIT_HS_ABORTED; + } + } ++ if (st->fsm != FIQ_NP_IN_CSPLIT_RETRY) { ++ fiq_fsm_restart_np_pending(state, num_channels, n); ++ } + break; + + case FIQ_NP_OUT_CSPLIT_RETRY: +@@ -919,6 +948,9 @@ static int notrace noinline fiq_fsm_do_hcintr(struct fiq_state *state, int num_c + st->fsm = FIQ_NP_SPLIT_HS_ABORTED; + } + } ++ if (st->fsm != FIQ_NP_OUT_CSPLIT_RETRY) { ++ fiq_fsm_restart_np_pending(state, num_channels, n); ++ } + break; + + /* Periodic split states (except isoc out) */ +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h +index 0a1ddf3f89f45ca75b8880722fbc22cbdc9f4a2f..ed088f34f210e9a337ab9b80fff0cf9e9b0241ea 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h ++++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h +@@ -178,6 +178,8 @@ enum fiq_fsm_state { + /* Nonperiodic state groups */ + FIQ_NP_SSPLIT_STARTED = 1, + FIQ_NP_SSPLIT_RETRY = 2, ++ /* TT contention - working around hub bugs */ ++ FIQ_NP_SSPLIT_PENDING = 33, + FIQ_NP_OUT_CSPLIT_RETRY = 3, + FIQ_NP_IN_CSPLIT_RETRY = 4, + FIQ_NP_SPLIT_DONE = 5, +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c +index 71834cf365e67d7ad995bba7869216c4091c3a74..7710370b30363e3170bf9bf522597c5f41dfb908 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c +@@ -1572,6 +1572,45 @@ int fiq_fsm_setup_periodic_dma(dwc_otg_hcd_t *hcd, struct fiq_channel_state *st, + } + } + ++/** ++ * fiq_fsm_np_tt_contended() - Avoid performing contended non-periodic transfers ++ * @hcd: Pointer to the dwc_otg_hcd struct ++ * @qh: Pointer to the endpoint's queue head ++ * ++ * Certain hub chips don't differentiate between IN and OUT non-periodic pipes ++ * with the same endpoint number. If transfers get completed out of order ++ * (disregarding the direction token) then the hub can lock up ++ * or return erroneous responses. ++ * ++ * Returns 1 if initiating the transfer would cause contention, 0 otherwise. ++ */ ++int fiq_fsm_np_tt_contended(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh) ++{ ++ int i; ++ struct fiq_channel_state *st; ++ int dev_addr = qh->channel->dev_addr; ++ int ep_num = qh->channel->ep_num; ++ for (i = 0; i < hcd->core_if->core_params->host_channels; i++) { ++ if (i == qh->channel->hc_num) ++ continue; ++ st = &hcd->fiq_state->channel[i]; ++ switch (st->fsm) { ++ case FIQ_NP_SSPLIT_STARTED: ++ case FIQ_NP_SSPLIT_RETRY: ++ case FIQ_NP_SSPLIT_PENDING: ++ case FIQ_NP_OUT_CSPLIT_RETRY: ++ case FIQ_NP_IN_CSPLIT_RETRY: ++ if (st->hcchar_copy.b.devaddr == dev_addr && ++ st->hcchar_copy.b.epnum == ep_num) ++ return 1; ++ break; ++ default: ++ break; ++ } ++ } ++ return 0; ++} ++ + /* + * Pushing a periodic request into the queue near the EOF1 point + * in a microframe causes erroneous behaviour (frmovrun) interrupt. +@@ -1894,7 +1933,12 @@ int fiq_fsm_queue_split_transaction(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh) + switch (hc->ep_type) { + case UE_CONTROL: + case UE_BULK: +- st->fsm = FIQ_NP_SSPLIT_STARTED; ++ if (fiq_fsm_np_tt_contended(hcd, qh)) { ++ st->fsm = FIQ_NP_SSPLIT_PENDING; ++ start_immediate = 0; ++ } else { ++ st->fsm = FIQ_NP_SSPLIT_STARTED; ++ } + break; + case UE_ISOCHRONOUS: + if (hc->ep_is_in) { +@@ -1918,7 +1962,12 @@ int fiq_fsm_queue_split_transaction(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh) + break; + case UE_INTERRUPT: + if (fiq_fsm_mask & 0x8) { +- st->fsm = FIQ_NP_SSPLIT_STARTED; ++ if (fiq_fsm_np_tt_contended(hcd, qh)) { ++ st->fsm = FIQ_NP_SSPLIT_PENDING; ++ start_immediate = 0; ++ } else { ++ st->fsm = FIQ_NP_SSPLIT_STARTED; ++ } + } else if (start_immediate) { + st->fsm = FIQ_PER_SSPLIT_STARTED; + } else {