From f10d816c00eba77dd5115008cdb3fc17fa69ac3f Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Wed, 7 Jun 2017 21:21:12 +0100 Subject: [PATCH] RPi: update linux support patch for linux 4.11.3 --- .../patches/linux/linux-01-RPi_support.patch | 1105 +++++++++++------ 1 file changed, 702 insertions(+), 403 deletions(-) diff --git a/projects/RPi/patches/linux/linux-01-RPi_support.patch b/projects/RPi/patches/linux/linux-01-RPi_support.patch index 41ce32b6b8..7d1c40dcb7 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 6c45d12897311bc17c5f26ffdbfd97fbaa0ebf98 Mon Sep 17 00:00:00 2001 +From 5fc41f5c9f33aee928a06758394ecd2630d1b824 Mon Sep 17 00:00:00 2001 From: Steve Glendinning Date: Thu, 19 Feb 2015 18:47:12 +0000 -Subject: [PATCH 001/160] smsx95xx: fix crimes against truesize +Subject: [PATCH 001/163] 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 5f19fb0f025d9449d0ba20958610e0d1f083f032..ed28f1c3e1d0f2559a62a1c289937944 usbnet_skb_return(dev, ax_skb); } -From d2e96b71e10f3ecb3b980bb60968c05419921706 Mon Sep 17 00:00:00 2001 +From 5e1812e69a2057f9e9332b22f50575e29b74e88e Mon Sep 17 00:00:00 2001 From: Sam Nazarko Date: Fri, 1 Apr 2016 17:27:21 +0100 -Subject: [PATCH 002/160] smsc95xx: Experimental: Enable turbo_mode and +Subject: [PATCH 002/163] smsc95xx: Experimental: Enable turbo_mode and packetsize=2560 by default See: http://forum.kodi.tv/showthread.php?tid=285288 @@ -94,10 +94,10 @@ index ed28f1c3e1d0f2559a62a1c28993794497730c5d..f758e122c65685799d4aeeb1c3e6ca81 netif_dbg(dev, ifup, dev->net, "rx_urb_size=%ld\n", -From 96ef65e81e6a4a11014ee0a18458cbdd41ad430a Mon Sep 17 00:00:00 2001 +From 0a2f6fb3e879ba169cf275a1d897176e6fef93ff Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 17:26:38 +0000 -Subject: [PATCH 003/160] Allow mac address to be set in smsc95xx +Subject: [PATCH 003/163] Allow mac address to be set in smsc95xx Signed-off-by: popcornmix --- @@ -193,10 +193,10 @@ index f758e122c65685799d4aeeb1c3e6ca81df0d7980..f6661e388f6e801c1b88e48a3b71407b eth_hw_addr_random(dev->net); netif_dbg(dev, ifup, dev->net, "MAC address set to eth_random_addr\n"); -From b02f9e226bb0755a7e8a06874f943051f4d1ac36 Mon Sep 17 00:00:00 2001 +From df8d18a436aae709d4c6126a7ed083762e306047 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 13 Mar 2015 12:43:36 +0000 -Subject: [PATCH 004/160] Protect __release_resource against resources without +Subject: [PATCH 004/163] 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 57b11e50a7baa8c8b46926c83ec4bb05eb98d6fd Mon Sep 17 00:00:00 2001 +From c6de3b140ceb3ea40cc543ecad2f370b398e7bd6 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 18 Dec 2014 16:07:15 -0800 -Subject: [PATCH 005/160] mm: Remove the PFN busy warning +Subject: [PATCH 005/163] 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 c5fee5a0316d96d84003ab168e58ed40e0d34bdd..2bea43c7acb2e7ba1f47f8aa8d6e803a goto done; } -From 02ab48c7d8cd35beb0274ccfdb274fdc3eb646c2 Mon Sep 17 00:00:00 2001 +From ddb749121934ad549536dc4179214910e52e3d50 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 4 Dec 2015 17:41:50 +0000 -Subject: [PATCH 006/160] irq-bcm2836: Prevent spurious interrupts, and trap +Subject: [PATCH 006/163] 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 27acc2319a11fbfdb20b96bc8ee7e0055dcc00fe Mon Sep 17 00:00:00 2001 +From 4f086e4ce9fa35bfc129e6c560f129dc49084f10 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 9 Feb 2017 14:33:30 +0000 -Subject: [PATCH 007/160] irq-bcm2836: Avoid "Invalid trigger warning" +Subject: [PATCH 007/163] 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 85527603f7087812836fc8e57b7900bbc0e3a6ab Mon Sep 17 00:00:00 2001 +From 0bef5ed7bebb26a60f1aff1dbbf10270ce730d67 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/160] irqchip: bcm2835: Add FIQ support +Subject: [PATCH 008/163] 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 74c51d721e14e0dfbe259e518a733060048fa6ef Mon Sep 17 00:00:00 2001 +From 1f2b53ad164177d69f3f02b57cca48c1c8277a15 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/160] irqchip: irq-bcm2835: Add 2836 FIQ support +Subject: [PATCH 009/163] 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 7b718032401aa2dea1ad1ad1c5e542d09b9f49fd Mon Sep 17 00:00:00 2001 +From c1a8621dd5f255a263a162325be6b0c2177b9e17 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Jul 2015 10:26:09 +0100 -Subject: [PATCH 010/160] spidev: Add "spidev" compatible string to silence +Subject: [PATCH 010/163] spidev: Add "spidev" compatible string to silence warning See: https://github.com/raspberrypi/linux/issues/1054 @@ -567,10 +567,10 @@ index 9e2e099baf8ca5cc6510912a36d4ca03daeb8273..e59640942826db2ea14d0bde0ff5ab22 }; MODULE_DEVICE_TABLE(of, spidev_dt_ids); -From a97fb8fe5b19c070b9e09e6317289265b7d3c9d7 Mon Sep 17 00:00:00 2001 +From 53008c289448ccaf8d7e6a3e2b98fc5620a4c3de Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 3 Jan 2017 18:25:01 +0000 -Subject: [PATCH 011/160] Revert "pinctrl: bcm2835: switch to GPIOLIB_IRQCHIP" +Subject: [PATCH 011/163] 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 69f0dd2f4576c34d2d16e70d8bcc9b241f2dedc8 Mon Sep 17 00:00:00 2001 +From 419df603cd1a7c6a82ac63a32848f4622b6b6feb Mon Sep 17 00:00:00 2001 From: notro Date: Thu, 10 Jul 2014 13:59:47 +0200 -Subject: [PATCH 012/160] pinctrl-bcm2835: Set base to 0 give expected gpio +Subject: [PATCH 012/163] 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 9db94c537e98a7b5f23c0f03c5caaccac6435277 Mon Sep 17 00:00:00 2001 +From ba780da75ffd0be9ce6f898e8fd6f05595d7f584 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 26 Feb 2015 09:58:22 +0000 -Subject: [PATCH 013/160] pinctrl-bcm2835: Only request the interrupts listed +Subject: [PATCH 013/163] 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 4624d7f45575bf474a0e172730f9dd95242b4ef9 Mon Sep 17 00:00:00 2001 +From b62cbe479270ffa9b035918a67172866ad41469f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Jun 2015 14:10:44 +0100 -Subject: [PATCH 014/160] spi-bcm2835: Support pin groups other than 7-11 +Subject: [PATCH 014/163] 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 a086970c23c56b57f315bcf24dab06e46941dfe2 Mon Sep 17 00:00:00 2001 +From b7828f550839fedcd59048e2cfa421c6a03db99e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 1 Jul 2016 22:09:24 +0100 -Subject: [PATCH 015/160] spi-bcm2835: Disable forced software CS +Subject: [PATCH 015/163] 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 4e154918c75d48a4753ad7a44447a2d8b36b54be Mon Sep 17 00:00:00 2001 +From a6196e059a30526b05e3d99170d52c631855d41d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 8 Nov 2016 21:35:38 +0000 -Subject: [PATCH 016/160] spi-bcm2835: Remove unused code +Subject: [PATCH 016/163] spi-bcm2835: Remove unused code --- drivers/spi/spi-bcm2835.c | 61 ----------------------------------------------- @@ -1131,10 +1131,10 @@ index 8493474d286f7a1ac6454a22c61c8c2cef9121bf..33d75ad38a7f77d085321ace9101900a } -From 6f6145a2de8125705b191babfaaec07c6f8b1e61 Mon Sep 17 00:00:00 2001 +From 23da7277f1010e1b276893a4ee62dd1a2f3c407a 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/160] ARM: bcm2835: Set Serial number and Revision +Subject: [PATCH 017/163] 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 d1bbbafb454fc7862d870f9a5f7b8eef98f4e627 Mon Sep 17 00:00:00 2001 +From 8e4a796b7bdf57be6f27ce7f0d857c88beefb49e 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/160] dmaengine: bcm2835: Load driver early and support +Subject: [PATCH 018/163] 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 35ca49022b45d668d2f6a639d7448d773a0ea241 Mon Sep 17 00:00:00 2001 +From 5a31d2f01df5a7b9d580ac511d51e5f96f29919f Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 25 Jan 2016 17:25:12 +0000 -Subject: [PATCH 019/160] firmware: Updated mailbox header +Subject: [PATCH 019/163] firmware: Updated mailbox header --- include/soc/bcm2835/raspberrypi-firmware.h | 9 +++++++++ @@ -1357,10 +1357,10 @@ index cb979ad90401e299344dd5fae38d09c489d8bd58..30fb37fe175df604a738258a2a632bca RPI_FIRMWARE_VCHIQ_INIT = 0x00048010, -From 0a0cd16f6f1f9e8350f8212698878a9d1c5f40b1 Mon Sep 17 00:00:00 2001 +From 96a5beb5300721c9a3844d8b89022e97017ff5e9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 15 Jun 2016 16:48:41 +0100 -Subject: [PATCH 020/160] rtc: Add SPI alias for pcf2123 driver +Subject: [PATCH 020/163] 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 acf7241be93dca8b192554f98b3573130c3f3e19 Mon Sep 17 00:00:00 2001 +From d99a66a44c15c22bdf9cb299a21ef563cd2c210d 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/160] watchdog: bcm2835: Support setting reboot partition +Subject: [PATCH 021/163] 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 9682d2353483865381979817ae77676150e37f10 Mon Sep 17 00:00:00 2001 +From 1b7bd8a02e40f5b6bc86057875a63d784445c9b9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 5 Apr 2016 19:40:12 +0100 -Subject: [PATCH 022/160] reboot: Use power off rather than busy spinning when +Subject: [PATCH 022/163] reboot: Use power off rather than busy spinning when halt is requested --- @@ -1511,10 +1511,10 @@ index 3fa867a2aae672755c6ce6448f4148c989dbf964..80dca8dcd6709034b643c6a3f35729e0 /* -From fd9a0b3f05d80b782a7f0583620c91310f2e8f5d Mon Sep 17 00:00:00 2001 +From 8cb20d13f78214bfcedd8483cb2764478dd35fe9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 9 Nov 2016 13:02:52 +0000 -Subject: [PATCH 023/160] bcm: Make RASPBERRYPI_POWER depend on PM +Subject: [PATCH 023/163] 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 5e56b6c466f39917d701b63744bb7479ee65b762 Mon Sep 17 00:00:00 2001 +From fc2717cf0b7113909e77efac0e0ff430563b151b Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Fri, 2 Sep 2016 16:45:27 +0100 -Subject: [PATCH 024/160] Register the clocks early during the boot process, so +Subject: [PATCH 024/163] 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 fe580810a5795c44ddf6210696f44ad6110ec7d1 Mon Sep 17 00:00:00 2001 +From 901bc61c56cc06de7800b996fbd5841d9df88a20 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 6 Dec 2016 17:05:39 +0000 -Subject: [PATCH 025/160] bcm2835-rng: Avoid initialising if already enabled +Subject: [PATCH 025/163] 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 0cb8559001411f2e7b7002753572957bb89eaa50 Mon Sep 17 00:00:00 2001 +From 89c12aa7cf98cdb017efb1be4453cf91cdc3d2cc Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 24 Aug 2016 16:28:44 +0100 -Subject: [PATCH 026/160] kbuild: Ignore dtco targets when filtering symbols +Subject: [PATCH 026/163] kbuild: Ignore dtco targets when filtering symbols --- scripts/Kbuild.include | 2 +- @@ -1633,10 +1633,10 @@ index afe3fd3af1e40616857b3e6c425be632c1fa2667..b2bbad417f0c4499a5f49081c8f996b9 esac | tr ";" "\n" | sed -rn 's/^.*=== __KSYM_(.*) ===.*$$/KSYM_\1/p' -From 47bf6c15ce87b84eb7df138e6746acdf4da03979 Mon Sep 17 00:00:00 2001 +From 2a232a3f759aaf8d9a49645db9cacd6a4698fbbc Mon Sep 17 00:00:00 2001 From: Robert Tiemann Date: Mon, 20 Jul 2015 11:01:25 +0200 -Subject: [PATCH 027/160] BCM2835_DT: Fix I2S register map +Subject: [PATCH 027/163] 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 2ae44df51e64a30dd357dea6cd0e644e671d7684 Mon Sep 17 00:00:00 2001 +From 491e87f19c0b375c28a7132e67c8e8622d69146d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Feb 2017 17:20:08 +0000 -Subject: [PATCH 028/160] clk-bcm2835: Mark used PLLs and dividers CRITICAL +Subject: [PATCH 028/163] 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 bb03103e002b7fde650e4e6ad951883fefeb74ee Mon Sep 17 00:00:00 2001 +From 25d1fdf920beab96500679a77ce6b08d8524b339 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Feb 2017 17:20:08 +0000 -Subject: [PATCH 029/160] clk-bcm2835: Add claim-clocks property +Subject: [PATCH 029/163] 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 23440d89e6379838a07f8c31e571baf82ea10206 Mon Sep 17 00:00:00 2001 +From b47f121c4c124b6290c887e8390202c174577592 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 1 Mar 2017 16:06:53 +0000 -Subject: [PATCH 030/160] clk-bcm2835: Correct the prediv logic +Subject: [PATCH 030/163] 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 c2f51a8eb1e34ddc9cb3471213213f5bccadac1f Mon Sep 17 00:00:00 2001 +From 39fcdbf38b93da8f8e3ba2a0262efc139693fa65 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 6 Mar 2017 09:06:18 +0000 -Subject: [PATCH 031/160] clk-bcm2835: Read max core clock from firmware +Subject: [PATCH 031/163] 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 9f9d7390abda0a9c5194285441bd61c6c224ec93 Mon Sep 17 00:00:00 2001 +From 2d6d7cb71c040889bbd4748867acf9fc6cd12040 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 9 Feb 2017 14:36:44 +0000 -Subject: [PATCH 032/160] sound: Demote deferral errors to INFO level +Subject: [PATCH 032/163] 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 2722bb0c557310d97816cfa7857b24d7c9bd4948..c32d3c31f34fc12195baf873a507d0b4 goto _err_defer; } -From 5bcddf5a7e8ff1be95461748ca4a8749453bd600 Mon Sep 17 00:00:00 2001 +From 2ffe4104e26f5a7c2e237ed0e8af1423b6cb2329 Mon Sep 17 00:00:00 2001 From: Claggy3 Date: Sat, 11 Feb 2017 14:00:30 +0000 -Subject: [PATCH 033/160] Update vfpmodule.c +Subject: [PATCH 033/163] 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 3df57d773413ec9a4d1f0cf488d8b74cc55c3f25 Mon Sep 17 00:00:00 2001 +From 80dac568950203610d849416b7526b0faa199876 Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Wed, 8 Mar 2017 21:13:24 +1100 -Subject: [PATCH 034/160] ASoC: bcm2835_i2s.c: relax the ch2 register setting +Subject: [PATCH 034/163] 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 41edfaa05ff9297784d3bb7a1001d29215ea2c8c Mon Sep 17 00:00:00 2001 +From 3106e9cabcb3259c76864edd52a42bece4a399f0 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/160] i2c: bcm2835: Add debug support +Subject: [PATCH 035/163] 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 fa21b5e74937023d8c7b971ae65478d0a4343e5a Mon Sep 17 00:00:00 2001 +From 2c57ed9489c6446b770d6b4f4b4cf4949203bf97 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 12 May 2013 12:24:19 +0100 -Subject: [PATCH 036/160] Main bcm2708/bcm2709 linux port +Subject: [PATCH 036/163] 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 b817a8fd7f028c471fc148b164734b4aeb54d336 Mon Sep 17 00:00:00 2001 +From c87f4bfdbf7fbe3cb5f7eefca6e5d89bf5456f84 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:46:17 +0100 -Subject: [PATCH 037/160] Add dwc_otg driver +Subject: [PATCH 037/163] Add dwc_otg driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -3254,10 +3254,10 @@ index bd3e0c5a6db25e7a162d922c6508de1ad0b68025..15c80079c97bb9eeec478932af88a293 return i; } diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index 9dca59ef18b3454437da9affb5e6d93619e88ba3..99829596d2eb206c95a99a5eee632cdcaf8cbd98 100644 +index f77a4ebde7d576e9f0fa8a71a13650cd0873dc99..9142813b330302456316b0b80d7e186789e05cf9 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -5027,7 +5027,7 @@ static void port_event(struct usb_hub *hub, int port1) +@@ -5036,7 +5036,7 @@ static void port_event(struct usb_hub *hub, int port1) if (portchange & USB_PORT_STAT_C_OVERCURRENT) { u16 status = 0, unused; @@ -63611,10 +63611,10 @@ index 0000000000000000000000000000000000000000..cdc9963176e5a4a0d5250613b61e26c5 +test_main(); +0; -From 7ebefd825a8f9b4e828fa4bcdcea6ea890205fde Mon Sep 17 00:00:00 2001 +From 8febb6458bafc92006fe467b5787bb15611561a7 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 10 May 2017 12:47:46 +0100 -Subject: [PATCH 038/160] dwcotg: Allow to build without FIQ on ARM64 +Subject: [PATCH 038/163] dwcotg: Allow to build without FIQ on ARM64 Signed-off-by: popcornmix --- @@ -63635,10 +63635,10 @@ index ed0cd59de37e8f47369f86dba751c78933722abc..53aedbe9727ca5c34e46f5cf998f14c7 The Synopsis DWC controller is a dual-role host/peripheral/OTG ("On The Go") USB controllers. -From f0c0482e50a67a3a777dff713b574540f5813eed Mon Sep 17 00:00:00 2001 +From d54e1f518013b9dd772a24d529854e28ad28e57e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 17 Jun 2015 17:06:34 +0100 -Subject: [PATCH 039/160] bcm2708 framebuffer driver +Subject: [PATCH 039/163] bcm2708 framebuffer driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -67097,10 +67097,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 dac6376e84e22ed87e9fe986cd477a210e7a32cf Mon Sep 17 00:00:00 2001 +From 44ffd66ab6ccf5b14f392a6cb6d93cd9d63a347e Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:22:53 +0100 -Subject: [PATCH 040/160] dmaengine: Add support for BCM2708 +Subject: [PATCH 040/163] dmaengine: Add support for BCM2708 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -67731,10 +67731,10 @@ index 0000000000000000000000000000000000000000..c5bfff2765be4606077e6c8af73040ec + +#endif /* _PLAT_BCM2708_DMA_H */ -From 9b6c1fccd21f14c5788cd8011f8f4bd265d08dcf Mon Sep 17 00:00:00 2001 +From eef6bd1e50d5e99cc202a3586f20084277c6e378 Mon Sep 17 00:00:00 2001 From: gellert Date: Fri, 15 Aug 2014 16:35:06 +0100 -Subject: [PATCH 041/160] MMC: added alternative MMC driver +Subject: [PATCH 041/163] MMC: added alternative MMC driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -69456,10 +69456,10 @@ index 0000000000000000000000000000000000000000..4fe8d1fe44578fbefcd48f8c327ba3d0 +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Gellert Weisz"); -From d72dc44833a473621e28cbc8ec80ea5dcde295a3 Mon Sep 17 00:00:00 2001 +From 7b455080001216ed451c06f94428404a46a710d8 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 25 Mar 2015 17:49:47 +0000 -Subject: [PATCH 042/160] Adding bcm2835-sdhost driver, and an overlay to +Subject: [PATCH 042/163] Adding bcm2835-sdhost driver, and an overlay to enable it BCM2835 has two SD card interfaces. This driver uses the other one. @@ -71855,10 +71855,10 @@ index 0000000000000000000000000000000000000000..a9bc79bfdbb71807819dfe2d8f165144 +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Phil Elwell"); -From fbd7219334d0b86c5910d62f1f7cc70db6b9b61b Mon Sep 17 00:00:00 2001 +From b345793ddfa3f8bfb73e040a6e1a5e403a8aefca Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 28 Oct 2016 15:36:43 +0100 -Subject: [PATCH 043/160] vc_mem: Add vc_mem driver for querying firmware +Subject: [PATCH 043/163] vc_mem: Add vc_mem driver for querying firmware memory addresses MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -72383,10 +72383,10 @@ index 0000000000000000000000000000000000000000..20a475377eb3078ea1ecaef2b24efc35 + +#endif /* _VC_MEM_H */ -From 34e0e65ea520e4be98e8cb63b921f614503134f4 Mon Sep 17 00:00:00 2001 +From 0421c45b5034105415ca8145f02acd841e995a4c Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 22 Jul 2014 15:41:04 +0100 -Subject: [PATCH 044/160] vcsm: VideoCore shared memory service for BCM2835 +Subject: [PATCH 044/163] vcsm: VideoCore shared memory service for BCM2835 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -76823,10 +76823,10 @@ index 0000000000000000000000000000000000000000..334f36d0d697b047df2922b5f2db67f3 + +#endif /* __VMCS_SM_IOCTL_H__INCLUDED__ */ -From 87a0b31627ecf63197c2ea6d4ff40a04dd5a6bb6 Mon Sep 17 00:00:00 2001 +From 017c5f86e3c8c56ace23fec6a93a8eb13242f34a Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Fri, 21 Aug 2015 23:14:48 +0100 -Subject: [PATCH 045/160] Add /dev/gpiomem device for rootless user GPIO access +Subject: [PATCH 045/163] Add /dev/gpiomem device for rootless user GPIO access Signed-off-by: Luke Wren @@ -77134,10 +77134,10 @@ index 0000000000000000000000000000000000000000..f5e7f1ba8fb6f18dee77fad06a17480c +MODULE_DESCRIPTION("gpiomem driver for accessing GPIO from userspace"); +MODULE_AUTHOR("Luke Wren "); -From 7199502c7dfa095bc15318a154cd451cd5061477 Mon Sep 17 00:00:00 2001 +From 86ae09407fe899122b5af64f5fafcb6b0fce02d7 Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Sat, 5 Sep 2015 01:14:45 +0100 -Subject: [PATCH 046/160] Add SMI driver +Subject: [PATCH 046/163] Add SMI driver Signed-off-by: Luke Wren --- @@ -79088,10 +79088,10 @@ index 0000000000000000000000000000000000000000..ee3a75edfc033eeb0d90a687ffb68b10 + +#endif /* BCM2835_SMI_H */ -From 096544b83dda811ca19245d667426ee0809ae9c4 Mon Sep 17 00:00:00 2001 +From e147acd806e1d88287755038c11967f3f9ecbfde Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Tue, 26 Apr 2016 14:59:21 +0000 -Subject: [PATCH 047/160] MISC: bcm2835: smi: use clock manager and fix reload +Subject: [PATCH 047/163] MISC: bcm2835: smi: use clock manager and fix reload issues Use clock manager instead of self-made clockmanager. @@ -79261,10 +79261,10 @@ index 63a4ea08b9930a3a31a985f0a1d969b488ed49ec..1261540703127d1d63b9f3c87042c6e5 return 0; } -From 3533b5ec5fbb975d7d35ef4e0aed63ae7cf80f2a Mon Sep 17 00:00:00 2001 +From f4121dc709edef7f8b421802243e2e419e6937d0 Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Sat, 5 Sep 2015 01:16:10 +0100 -Subject: [PATCH 048/160] Add SMI NAND driver +Subject: [PATCH 048/163] Add SMI NAND driver Signed-off-by: Luke Wren --- @@ -79629,10 +79629,10 @@ index 0000000000000000000000000000000000000000..02adda6da18bd0ba9ab19a104975b79d + ("Driver for NAND chips using Broadcom Secondary Memory Interface"); +MODULE_AUTHOR("Luke Wren "); -From 8a074dea5fde3a2f19cdc9855230708b088136fe Mon Sep 17 00:00:00 2001 +From 6c958a3733668422b62f6f4d436f713a458c638f Mon Sep 17 00:00:00 2001 From: Aron Szabo Date: Sat, 16 Jun 2012 12:15:55 +0200 -Subject: [PATCH 049/160] lirc: added support for RaspberryPi GPIO +Subject: [PATCH 049/163] 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 @@ -80495,10 +80495,10 @@ index 0000000000000000000000000000000000000000..fb69624ccef00ddbdccf8256d6baf1b1 + +#endif -From bd68b82c80143624a8c2e5c662bd444820ffc6b5 Mon Sep 17 00:00:00 2001 +From 8535c31e6d540681be96a1401af461b39e8bd86c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:49:20 +0100 -Subject: [PATCH 050/160] Add cpufreq driver +Subject: [PATCH 050/163] Add cpufreq driver Signed-off-by: popcornmix --- @@ -80765,10 +80765,10 @@ index 0000000000000000000000000000000000000000..414fbdc10dfbfc6e4bb47870a7af3fd5 +module_init(bcm2835_cpufreq_module_init); +module_exit(bcm2835_cpufreq_module_exit); -From be5d2f1edbb990a3c1eb0ed5ee38c49de3b39cd6 Mon Sep 17 00:00:00 2001 +From 6d4fd726d191d2762833416e3030a57b0b196756 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 19:24:24 +0000 -Subject: [PATCH 051/160] Added hwmon/thermal driver for reporting core +Subject: [PATCH 051/163] Added hwmon/thermal driver for reporting core temperature. Thanks Dorian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -80934,10 +80934,10 @@ index 0000000000000000000000000000000000000000..c63fb9f9d143e19612a18fe530c7b2b3 +MODULE_DESCRIPTION("Thermal driver for bcm2835 chip"); +MODULE_LICENSE("GPL"); -From e1136acaae26a5d34e84d1c558a8ccac68eea04d Mon Sep 17 00:00:00 2001 +From 686cb902a3db3f5577fff44ef55c934974357bc4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 17 Jun 2015 15:44:08 +0100 -Subject: [PATCH 052/160] Add Chris Boot's i2c driver +Subject: [PATCH 052/163] Add Chris Boot's i2c driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -81602,10 +81602,10 @@ index 0000000000000000000000000000000000000000..962f2e5c7455d91bf32925d785f5f16b +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); -From be38da2a4dd9d7071d1061bb5305cb0dcbff589a Mon Sep 17 00:00:00 2001 +From 4816cf2ba12e35429ac174dc733525d333f1f6be 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 053/160] char: broadcom: Add vcio module +Subject: [PATCH 053/163] char: broadcom: Add vcio module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -81830,10 +81830,10 @@ index 0000000000000000000000000000000000000000..c19bc2075c77879563ef5e59038b5a14 +MODULE_DESCRIPTION("Mailbox userspace access"); +MODULE_LICENSE("GPL"); -From 90f79686a7785031d076e9a0019bdfc226323878 Mon Sep 17 00:00:00 2001 +From 99a8b7700bbf5ec246000f8a531c5eb236f6fa32 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 054/160] firmware: bcm2835: Support ARCH_BCM270x +Subject: [PATCH 054/163] firmware: bcm2835: Support ARCH_BCM270x MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -81916,10 +81916,10 @@ index dd506cd3a5b874f9e1acd07efb8cd151bb6145d1..3f070bd38a91511c986e3fb114b15bd4 MODULE_AUTHOR("Eric Anholt "); MODULE_DESCRIPTION("Raspberry Pi firmware driver"); -From 9f922f2dff0faa721f13b93cc9af474060f8da4d Mon Sep 17 00:00:00 2001 +From 5b1541f9eb6e5e1068d9133de37d4e3d3bf5ce9b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 11 May 2015 09:00:42 +0100 -Subject: [PATCH 055/160] scripts: Add mkknlimg and knlinfo scripts from tools +Subject: [PATCH 055/163] scripts: Add mkknlimg and knlinfo scripts from tools repo The Raspberry Pi firmware looks for a trailer on the kernel image to @@ -82439,10 +82439,10 @@ index 0000000000000000000000000000000000000000..60206de7fa9a49bd027c635306674a29 + return $trailer; +} -From c23d94e3852b9f4482d6597d534f19f7870ed637 Mon Sep 17 00:00:00 2001 +From f0263d4fec8297b7f96e30ef2dc618f5a9541a2c Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:46:08 +0200 -Subject: [PATCH 056/160] BCM2708: Add core Device Tree support +Subject: [PATCH 056/163] BCM2708: Add core Device Tree support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -93741,10 +93741,10 @@ index 7234e61e7ce370a775ec6981b391b6d102a01770..1b53cd59e4875d388e4974a3399d5f07 # Bzip2 -From 38caa8c48cd4317bbd4be5e439491d174e04aede Mon Sep 17 00:00:00 2001 +From 5b227d9d3312659269fd43b9995c10fff6a282d6 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 6 Feb 2015 13:50:57 +0000 -Subject: [PATCH 057/160] BCM270x_DT: Add pwr_led, and the required "input" +Subject: [PATCH 057/163] BCM270x_DT: Add pwr_led, and the required "input" trigger The "input" trigger makes the associated GPIO an input. This is to support @@ -93920,10 +93920,10 @@ index 38c0bd7ca1074af234d516275791d05f945ce1f0..2f026646d24bad617c73aa79db30c9aa /* set_brightness_work / blink_timer flags, atomic, private. */ unsigned long work_flags; -From cc4ec968e32a5307b9220620b3fe074369a982d2 Mon Sep 17 00:00:00 2001 +From 43843ba46d94ed05116b8c8d3078a280a31c5238 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka Date: Mon, 17 Jun 2013 13:32:11 +0300 -Subject: [PATCH 058/160] fbdev: add FBIOCOPYAREA ioctl +Subject: [PATCH 058/163] fbdev: add FBIOCOPYAREA ioctl Based on the patch authored by Ali Gholami Rudi at https://lkml.org/lkml/2009/7/13/153 @@ -94175,10 +94175,10 @@ index fb795c3b3c178ad3cd7c9e9e4547ffd492bac181..703fa8a70574323abe2fb32599254582 __u32 dx; /* screen-relative */ __u32 dy; -From 80e828ac8229ee3fad3b0e77cdc24f9c8f581c24 Mon Sep 17 00:00:00 2001 +From ba23388378151be282e4ea748b4798e509564497 Mon Sep 17 00:00:00 2001 From: Harm Hanemaaijer Date: Thu, 20 Jun 2013 20:21:39 +0200 -Subject: [PATCH 059/160] Speed up console framebuffer imageblit function +Subject: [PATCH 059/163] 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 @@ -94387,10 +94387,10 @@ index a2bb276a8b2463eee98eb237c4647bc00cd93601..436494fba15abecb400ef28688466faf start_index, pitch_index); } else -From ee75ce5c1fe8175f4b913e22c02a0165c9f58b04 Mon Sep 17 00:00:00 2001 +From 1d5b022b1f1fdc0a4274ad21ba1ef49b5ffa6d0d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 May 2013 11:46:50 +0100 -Subject: [PATCH 060/160] enabling the realtime clock 1-wire chip DS1307 and +Subject: [PATCH 060/163] 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 @@ -94640,10 +94640,10 @@ index d58594a3232492e33f1dd4babd3798b03e0f0203..feae94256256316fd9d850c3d83325af unsigned int ext_pullup_enable_pin; unsigned int pullup_duration; -From 4c2aa343eb5a57af0888874704def8ab7f3a7ffb Mon Sep 17 00:00:00 2001 +From 7176e5e4f17128c43061c90ebc23d3c249de8183 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 14 Jul 2014 22:02:09 +0100 -Subject: [PATCH 061/160] hid: Reduce default mouse polling interval to 60Hz +Subject: [PATCH 061/163] hid: Reduce default mouse polling interval to 60Hz Reduces overhead when using X --- @@ -94679,10 +94679,10 @@ index 961bc6fdd2d908835fa9a07d169a4746fb44189d..c595188a1156a27aa79f111d81636b6d ret = -ENOMEM; if (usb_endpoint_dir_in(endpoint)) { -From 66fe87da37bef1da3852e9973c65f6ec4c7306c9 Mon Sep 17 00:00:00 2001 +From 8273da14519b793a4124fb95503fb996acc3ca28 Mon Sep 17 00:00:00 2001 From: Gordon Hollingworth Date: Tue, 12 May 2015 14:47:56 +0100 -Subject: [PATCH 062/160] rpi-ft5406: Add touchscreen driver for pi LCD display +Subject: [PATCH 062/163] 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 @@ -95040,10 +95040,10 @@ index 30fb37fe175df604a738258a2a632bca3bfff33f..4a3d79d3b48eb483a4e4bf498f617515 RPI_FIRMWARE_FRAMEBUFFER_SET_BACKLIGHT = 0x0004800f, -From 527485a96a67f8edeb963e78d624e0c0a4fa3083 Mon Sep 17 00:00:00 2001 +From d2fd1440b1f5bc1001d3f49564021b3e24201972 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 28 Nov 2016 16:50:04 +0000 -Subject: [PATCH 063/160] Improve __copy_to_user and __copy_from_user +Subject: [PATCH 063/163] Improve __copy_to_user and __copy_from_user performance Provide a __copy_from_user that uses memcpy. On BCM2708, use @@ -96618,10 +96618,10 @@ index 333dc3c2e5ffbb2c5ab8fcfb6115b6162643cf20..46b787a6474ffa857da9b663948863ec bool "Broadcom BCM63xx DSL SoC" depends on ARCH_MULTI_V7 -From 2239c56d9df73d93ff52d68d116d4601f174e85a Mon Sep 17 00:00:00 2001 +From a27c9084caf610127fea14e995a232c7cec127b1 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 25 Jun 2015 12:16:11 +0100 -Subject: [PATCH 064/160] gpio-poweroff: Allow it to work on Raspberry Pi +Subject: [PATCH 064/163] 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 @@ -96656,10 +96656,10 @@ index be3d81ff51cc3f510d85e4eed7a52960e51e7bc1..a030ae9fb1fca325061c093696e82186 "%s: pm_power_off function already registered", __func__); -From cae3d0be126be963096788b60fbf98fb18dac578 Mon Sep 17 00:00:00 2001 +From 393cd2a1fe6faa345dda40660743c590003a143f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Jul 2015 14:32:47 +0100 -Subject: [PATCH 065/160] mfd: Add Raspberry Pi Sense HAT core driver +Subject: [PATCH 065/163] mfd: Add Raspberry Pi Sense HAT core driver --- drivers/input/joystick/Kconfig | 8 + @@ -97524,10 +97524,10 @@ index 0000000000000000000000000000000000000000..56196dc2af10e464a1e3f98b028dca1c + +#endif -From 6e7664a1bcd597e35b01ccaeafe85c729020bee7 Mon Sep 17 00:00:00 2001 +From 36e96f393fdb7c349001255b1ec8258fb4f04015 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:19:08 +0100 -Subject: [PATCH 066/160] ASoC: Add support for HifiBerry DAC +Subject: [PATCH 066/163] ASoC: Add support for HifiBerry DAC This adds a machine driver for the HifiBerry DAC. It is a sound card that can @@ -97702,10 +97702,10 @@ index 0000000000000000000000000000000000000000..ee9f133953544629282631e5ef3f73fe +MODULE_DESCRIPTION("ASoC Driver for HifiBerry DAC"); +MODULE_LICENSE("GPL v2"); -From 49ae2bbbb8f6686973daf498a774261eca6cb5ad Mon Sep 17 00:00:00 2001 +From 4e30d1f3d60c2103c396511cefd8e559259097ea Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Mon, 25 Jan 2016 15:48:59 +0000 -Subject: [PATCH 067/160] ASoC: Add support for Rpi-DAC +Subject: [PATCH 067/163] ASoC: Add support for Rpi-DAC --- sound/soc/bcm/Kconfig | 7 +++ @@ -97989,10 +97989,10 @@ index 0000000000000000000000000000000000000000..afe1b419582aa40c4b2729d242bb13cd +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From 19bca6ae8abe5ab156d78195b697392ea13fbe42 Mon Sep 17 00:00:00 2001 +From 55766874e30eaba13daaac1a80372790d3723804 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:41:23 +0100 -Subject: [PATCH 068/160] ASoC: wm8804: Implement MCLK configuration options, +Subject: [PATCH 068/163] 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 @@ -98041,10 +98041,10 @@ index af95d648265b3e92e345101542b332aee35191d4..513f56ba132929662802d15cdc653af3 .component_driver = { .dapm_widgets = wm8804_dapm_widgets, -From 8ddc6d1a804e779058c1986eb01cb88b70de4523 Mon Sep 17 00:00:00 2001 +From fbd107b29f04d48279f0b1840ee099be80eff7c9 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:42:08 +0100 -Subject: [PATCH 069/160] ASoC: BCM:Add support for HiFiBerry Digi. Driver is +Subject: [PATCH 069/163] ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patched WM8804 driver. Signed-off-by: Daniel Matuschek @@ -98388,10 +98388,10 @@ index 0000000000000000000000000000000000000000..7620dd02de40b6d644ff038b445d375d +MODULE_DESCRIPTION("ASoC Driver for HifiBerry Digi"); +MODULE_LICENSE("GPL v2"); -From 1ba887986009fbd51084df3c0d51ee6d072f7e53 Mon Sep 17 00:00:00 2001 +From e9895c1a87a92bbfcf2d5c52fedaef9e51c9ac79 Mon Sep 17 00:00:00 2001 From: Gordon Garrity Date: Sat, 8 Mar 2014 16:56:57 +0000 -Subject: [PATCH 070/160] Add IQaudIO Sound Card support for Raspberry Pi +Subject: [PATCH 070/163] Add IQaudIO Sound Card support for Raspberry Pi Set a limit of 0dB on Digital Volume Control @@ -98726,10 +98726,10 @@ index 0000000000000000000000000000000000000000..1ee4097c846376666775272ed692ca33 +MODULE_DESCRIPTION("ASoC Driver for IQAudio DAC"); +MODULE_LICENSE("GPL v2"); -From 0df854d076f140741f72463af80e355c5acbbb98 Mon Sep 17 00:00:00 2001 +From 5a384f430e58dca72105bbd3e0dc9314945f34ee Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 10:06:56 +0200 -Subject: [PATCH 071/160] Added support for HiFiBerry DAC+ +Subject: [PATCH 071/163] 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. @@ -99359,10 +99359,10 @@ index 72b19e62f6267698aea45d2410d616d91c1825cb..c6839ef6e16754ed9de2698507b8986a dev_err(dev, "No LRCLK?\n"); return -EINVAL; -From 4ac7a8994d908e6e943adb4270da1a7b4def9b60 Mon Sep 17 00:00:00 2001 +From 94ce351ca42dbbd060392b9d6a578be32f3bf972 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 11:09:58 +0200 -Subject: [PATCH 072/160] Added driver for HiFiBerry Amp amplifier add-on board +Subject: [PATCH 072/163] 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. @@ -100197,10 +100197,10 @@ index 0000000000000000000000000000000000000000..8f019e04898754d2f87e9630137be9e8 + +#endif /* _TAS5713_H */ -From 678d86cad3ed39815485c8821e552f3cc6cb05d9 Mon Sep 17 00:00:00 2001 +From 11c4157c15f386dc9e535af5b9124086f8c5dec1 Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:25:49 -0700 -Subject: [PATCH 073/160] Update ds1307 driver for device-tree support +Subject: [PATCH 073/163] Update ds1307 driver for device-tree support Signed-off-by: Ryan Coe --- @@ -100227,10 +100227,10 @@ index 4ad97be480430babc3321075f2739114eaad8f04..2ac1c265dc9cea56a5949eb537949a1f .driver = { .name = "rtc-ds1307", -From ac958bc2802c1ededfee30c019884af4c0a012ee Mon Sep 17 00:00:00 2001 +From 94afe37b022b632c297c5fab6f1bb61dbdb325f8 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Wed, 25 Mar 2015 09:26:17 +0100 -Subject: [PATCH 074/160] Add driver for rpi-proto +Subject: [PATCH 074/163] 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 @@ -100445,10 +100445,10 @@ index 0000000000000000000000000000000000000000..fadbfade100228aaafabb0d3bdf35c01 +MODULE_DESCRIPTION("ASoC Driver for Raspberry Pi connected to PROTO board (WM8731)"); +MODULE_LICENSE("GPL"); -From 580c1e2c416d492ef7c2a550a8f77b43f9e9d11f Mon Sep 17 00:00:00 2001 +From 13071f46c6a8cf391bfe99d75b6e99f23c29e80d Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Mon, 24 Aug 2015 16:03:47 +0100 -Subject: [PATCH 075/160] RaspiDAC3 support +Subject: [PATCH 075/163] RaspiDAC3 support Signed-off-by: Jan Grulich @@ -100691,10 +100691,10 @@ index 0000000000000000000000000000000000000000..ad2b5b89bc8213dc2e277306ef50d6e3 +MODULE_DESCRIPTION("ASoC Driver for RaspiDAC Rev.3x"); +MODULE_LICENSE("GPL v2"); -From 48bbb1f714e80accc259fa2e20747ca3e3188680 Mon Sep 17 00:00:00 2001 +From ee81dc88d2d684dd92cea807b208dab34bf3ea5f Mon Sep 17 00:00:00 2001 From: Aaron Shaw Date: Thu, 7 Apr 2016 21:26:21 +0100 -Subject: [PATCH 076/160] Add Support for JustBoom Audio boards +Subject: [PATCH 076/163] Add Support for JustBoom Audio boards justboom-dac: Adjust for ALSA API change @@ -101150,10 +101150,10 @@ index 0000000000000000000000000000000000000000..909cf8928f2f4313982316f9c5b8a709 +MODULE_DESCRIPTION("ASoC Driver for JustBoom PI Digi HAT Sound Card"); +MODULE_LICENSE("GPL v2"); -From e3637abb16e3d13f9c0651e194f42dd80b12a43a Mon Sep 17 00:00:00 2001 +From 97946e5eee53a38d5330c50084a2d8895778811b Mon Sep 17 00:00:00 2001 From: Andrey Grodzovsky Date: Tue, 3 May 2016 22:10:59 -0400 -Subject: [PATCH 077/160] ARM: adau1977-adc: Add basic machine driver for +Subject: [PATCH 077/163] ARM: adau1977-adc: Add basic machine driver for adau1977 codec driver. This commit adds basic support for the codec usage including: Device tree overlay, @@ -101335,10 +101335,10 @@ index 0000000000000000000000000000000000000000..f3d7e5db7bb912e1d7ca6f8e8d42df5f +MODULE_DESCRIPTION("ASoC Driver for ADAU1977 ADC"); +MODULE_LICENSE("GPL v2"); -From 178dd954ef4dc11a53d1bac1eeb700460504bc6f Mon Sep 17 00:00:00 2001 +From 335f05f3363dbac4621cbb29d8316fce6d901285 Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Mon, 16 May 2016 21:36:31 +1000 -Subject: [PATCH 078/160] New AudioInjector.net Pi soundcard with low jitter +Subject: [PATCH 078/163] 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. @@ -101589,10 +101589,10 @@ index 0000000000000000000000000000000000000000..ef54e0f07ea03f59e9957b5d98f3e7fd +MODULE_ALIAS("platform:audioinjector-pi-soundcard"); + -From 83d73b27c56dfb90e6d1e62fb31f60af77cbfd40 Mon Sep 17 00:00:00 2001 +From 3b263e4a92fec0bd9b4a28cde245bd3ff645714a Mon Sep 17 00:00:00 2001 From: DigitalDreamtime Date: Thu, 30 Jun 2016 18:38:42 +0100 -Subject: [PATCH 079/160] Add IQAudIO Digi WM8804 board support +Subject: [PATCH 079/163] Add IQAudIO Digi WM8804 board support Support IQAudIO Digi board with iqaudio_digi machine driver and iqaudio-digi-wm8804-audio overlay. @@ -101892,10 +101892,10 @@ index 0000000000000000000000000000000000000000..33aa2be8a43a12a12cfb5d844dd9732c +MODULE_DESCRIPTION("ASoC Driver for IQAudIO WM8804 Digi"); +MODULE_LICENSE("GPL v2"); -From 3e95bd6e9c1edcd5e5c6bcf0a1db97b4b3a58841 Mon Sep 17 00:00:00 2001 +From cdd298941ae8d9bffaad608857ab0942d767ca0f Mon Sep 17 00:00:00 2001 From: escalator2015 Date: Tue, 24 May 2016 16:20:09 +0100 -Subject: [PATCH 080/160] New driver for RRA DigiDAC1 soundcard using WM8741 + +Subject: [PATCH 080/163] New driver for RRA DigiDAC1 soundcard using WM8741 + WM8804 --- @@ -102368,10 +102368,10 @@ index 0000000000000000000000000000000000000000..f200688bb4ae32b90a0ced555aed94b0 +MODULE_DESCRIPTION("ASoC Driver for RRA DigiDAC1"); +MODULE_LICENSE("GPL v2"); -From 19527147b76565d57f6468848d74802fe7069527 Mon Sep 17 00:00:00 2001 +From 039fdbf0eb21460cd6a48ab3558774a4fc88e610 Mon Sep 17 00:00:00 2001 From: DigitalDreamtime Date: Sat, 2 Jul 2016 16:26:19 +0100 -Subject: [PATCH 081/160] Add support for Dion Audio LOCO DAC-AMP HAT +Subject: [PATCH 081/163] Add support for Dion Audio LOCO DAC-AMP HAT Using dedicated machine driver and pcm5102a codec driver. @@ -102544,10 +102544,10 @@ index 0000000000000000000000000000000000000000..65e03741d349a2dc5bd91f69855ea952 +MODULE_DESCRIPTION("ASoC Driver for DionAudio LOCO"); +MODULE_LICENSE("GPL v2"); -From f91e78826e2d871f0284ca712a0b0d4b19de200f Mon Sep 17 00:00:00 2001 +From 10b4dc05ef79eac7decd6e75a012718617d70b71 Mon Sep 17 00:00:00 2001 From: Clive Messer Date: Mon, 19 Sep 2016 14:01:04 +0100 -Subject: [PATCH 082/160] Allo Piano DAC boards: Initial 2 channel (stereo) +Subject: [PATCH 082/163] 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, @@ -102754,10 +102754,10 @@ index 0000000000000000000000000000000000000000..eaf50fb6dbca1970ae1c6f8662088b0f +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Piano DAC"); +MODULE_LICENSE("GPL v2"); -From 96f388991718e78b6c21f5758880b5fedb70cf55 Mon Sep 17 00:00:00 2001 +From 316005c2f46d0cfb79efa4152013294033aadff4 Mon Sep 17 00:00:00 2001 From: gtrainavicius Date: Sun, 23 Oct 2016 12:06:53 +0300 -Subject: [PATCH 083/160] Support for Blokas Labs pisound board +Subject: [PATCH 083/163] Support for Blokas Labs pisound board Pisound dynamic overlay (#1760) @@ -103956,10 +103956,10 @@ index 0000000000000000000000000000000000000000..06ff1e53dc9d860946965b6303577762 +MODULE_DESCRIPTION("ASoC Driver for pisound, http://blokas.io/pisound"); +MODULE_LICENSE("GPL v2"); -From 0154f3505aad59e1eb3f12079e329b6f0b7cb30e Mon Sep 17 00:00:00 2001 +From 5e02aa9c1c60fae7398d57c96ceb6f982f0549f2 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 22 Jan 2017 12:49:37 +0100 -Subject: [PATCH 084/160] ASoC: Add driver for Cirrus Logic Audio Card +Subject: [PATCH 084/163] 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 @@ -105024,10 +105024,10 @@ index 0000000000000000000000000000000000000000..ac8651ddff7bd3701dffe22c7fb88352 +MODULE_DESCRIPTION("ASoC driver for Cirrus Logic Audio Card"); +MODULE_LICENSE("GPL"); -From 5dd49d939b60c40c0decae7136416e3befd5ed4f Mon Sep 17 00:00:00 2001 +From a7f03a7ecb65cfbbf25438a0cc6eb220dd493088 Mon Sep 17 00:00:00 2001 From: Miquel Date: Fri, 24 Feb 2017 20:51:06 +0100 -Subject: [PATCH 085/160] sound: Support for Dion Audio LOCO-V2 DAC-AMP HAT +Subject: [PATCH 085/163] sound: Support for Dion Audio LOCO-V2 DAC-AMP HAT Signed-off-by: Miquel Blauw --- @@ -105221,10 +105221,10 @@ index 0000000000000000000000000000000000000000..a009c49477972a9832175d86f201b035 +MODULE_DESCRIPTION("ASoC Driver for DionAudio LOCO-V2"); +MODULE_LICENSE("GPL v2"); -From fa99b34035fd8e498efe0daf8db3fb16fed37e91 Mon Sep 17 00:00:00 2001 +From 7cd7ec6ac4a480f640d5b7d3fe7101886a4f0255 Mon Sep 17 00:00:00 2001 From: Fe-Pi Date: Wed, 1 Mar 2017 04:42:43 -0700 -Subject: [PATCH 086/160] Add support for Fe-Pi audio sound card. (#1867) +Subject: [PATCH 086/163] 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. @@ -105438,10 +105438,10 @@ index 0000000000000000000000000000000000000000..015b56fd73cc36be5b5eecd17548fd03 +MODULE_DESCRIPTION("ASoC Driver for Fe-Pi Audio"); +MODULE_LICENSE("GPL v2"); -From 225ae354dfc9b556848866fd254a7f4a10af6a42 Mon Sep 17 00:00:00 2001 +From 8b7331a984895946434d3f5ffc0d6496c6bd82d8 Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Wed, 8 Mar 2017 20:04:13 +1100 -Subject: [PATCH 087/160] Add support for the AudioInjector.net Octo sound card +Subject: [PATCH 087/163] Add support for the AudioInjector.net Octo sound card --- sound/soc/bcm/Kconfig | 7 + @@ -105781,10 +105781,10 @@ index 0000000000000000000000000000000000000000..9effea725798640887755dfa688da453 +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:audioinjector-octo-soundcard"); -From 72be37b64bee5cbc183a4064142100e2ee149271 Mon Sep 17 00:00:00 2001 +From b0639c239aef4a7982d9609db478abc61630aee0 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 21 Oct 2015 14:55:21 +0100 -Subject: [PATCH 088/160] rpi_display: add backlight driver and overlay +Subject: [PATCH 088/163] 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 @@ -105953,10 +105953,10 @@ index 0000000000000000000000000000000000000000..14a0d9b037395497c1fdae2961feccd5 +MODULE_DESCRIPTION("Raspberry Pi mailbox based Backlight Driver"); +MODULE_LICENSE("GPL"); -From c01bf3558a42e33c77aee7d89be3439861e80043 Mon Sep 17 00:00:00 2001 +From 344e30b18801cc357184f49f1f78a4dfe8ddfcdc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 23 Feb 2016 19:56:04 +0000 -Subject: [PATCH 089/160] bcm2835-virtgpio: Virtual GPIO driver +Subject: [PATCH 089/163] bcm2835-virtgpio: Virtual GPIO driver Add a virtual GPIO driver that uses the firmware mailbox interface to request that the VPU toggles LEDs. @@ -106230,10 +106230,10 @@ index 4a3d79d3b48eb483a4e4bf498f617515e3ad158f..5f34e1257117fb48013c9926a8a223d6 RPI_FIRMWARE_FRAMEBUFFER_SET_BACKLIGHT = 0x0004800f, -From 11df459c6fd3d2800f3959fc91e29c0f9ad8e6d0 Mon Sep 17 00:00:00 2001 +From 965a85071190cfe242e7de6a38da64d787066068 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 20 Feb 2017 17:01:21 +0000 -Subject: [PATCH 090/160] bcm2835-gpio-exp: Driver for GPIO expander via +Subject: [PATCH 090/163] bcm2835-gpio-exp: Driver for GPIO expander via mailbox service Pi3 and Compute Module 3 have a GPIO expander that the @@ -106561,10 +106561,10 @@ index 5f34e1257117fb48013c9926a8a223d64a598ab7..c819c21b0158a59c1308882e5a40e3f3 /* Dispmanx TAGS */ RPI_FIRMWARE_FRAMEBUFFER_ALLOCATE = 0x00040001, -From b9004b5377f712cc374f7220de730beca9492cbc Mon Sep 17 00:00:00 2001 +From 16a2a0109fb8f33d991fc1c6603ccfc12e5cba0a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 23 Feb 2016 17:26:48 +0000 -Subject: [PATCH 091/160] amba_pl011: Don't use DT aliases for numbering +Subject: [PATCH 091/163] 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 @@ -106593,10 +106593,10 @@ index f2503d862f3aee25396ef002ba69968896316779..a85e81245004e928fc52ec59044e151b uap->old_cr = 0; uap->port.dev = dev; -From afe0f27d0d1158992bb7cdd445f6b5576603b136 Mon Sep 17 00:00:00 2001 +From 703cfafcbc58ccfc23509e09f3e8b83149b921d9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 1 Mar 2017 16:07:39 +0000 -Subject: [PATCH 092/160] amba_pl011: Round input clock up +Subject: [PATCH 092/163] 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 @@ -106682,10 +106682,10 @@ index a85e81245004e928fc52ec59044e151b7f183496..380d2c2e19ae3720924e906261b487ad /* unregisters the driver also if no more ports are left */ static void pl011_unregister_port(struct uart_amba_port *uap) -From 4f8afa984d00fe970f8f557cb87915157e9e231f Mon Sep 17 00:00:00 2001 +From 57fc6cecb49a8dedc58e115a2bbabcca85163dd7 Mon Sep 17 00:00:00 2001 From: Pantelis Antoniou Date: Wed, 3 Dec 2014 13:23:28 +0200 -Subject: [PATCH 093/160] OF: DT-Overlay configfs interface +Subject: [PATCH 093/163] 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. @@ -107117,10 +107117,10 @@ index 0000000000000000000000000000000000000000..0037e6868a6cda8706c88194c6a4454b +} +late_initcall(of_cfs_init); -From 6016e046b118d6fff3b7057ad51d33b02f820c20 Mon Sep 17 00:00:00 2001 +From 4f88e70b10c633e777cd0dedde49f2e4eb5ee96b Mon Sep 17 00:00:00 2001 From: Cheong2K Date: Fri, 26 Feb 2016 18:20:10 +0800 -Subject: [PATCH 094/160] brcm: adds support for BCM43341 wifi +Subject: [PATCH 094/163] brcm: adds support for BCM43341 wifi brcmfmac: Disable power management @@ -107271,10 +107271,10 @@ index 65689469c5a12e2fcfd6123ca584944da79ec184..4886dc29ad36705210bed20757ce09ed BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43362_CHIP_ID, 0xFFFFFFFE, 43362), BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, 4339), -From 50c2d5254b9401b76da752d03bdbdb25421f8254 Mon Sep 17 00:00:00 2001 +From 0450a3d136943294c13e430d3124fd965465797b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 17 Feb 2017 15:26:13 +0000 -Subject: [PATCH 095/160] brcmfmac: Mute expected startup 'errors' +Subject: [PATCH 095/163] brcmfmac: Mute expected startup 'errors' The brcmfmac WiFi driver always complains about the '00' country code and the firmware version is reported as an error. Modify the driver to @@ -107313,10 +107313,10 @@ index 6221b046bca44211e2dfac24119097f7ac09e829..634602e0c44f91da06db7aa803dbee69 /* locate firmware version number for ethtool */ ptr = strrchr(buf, ' ') + 1; -From 81b1160c163f78a7f623a57194c48daeabb57841 Mon Sep 17 00:00:00 2001 +From 10d09a4f817cb90146098cc72ee6464b63c906cf Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 17 Dec 2015 13:37:07 +0000 -Subject: [PATCH 096/160] hci_h5: Don't send conf_req when ACTIVE +Subject: [PATCH 096/163] 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. @@ -107339,10 +107339,10 @@ index 90d0456b67446bcc624fab4b1542c4eaf21531b1..f9adeac3bbba6418dcca298c55706356 if (H5_HDR_LEN(hdr) > 2) h5->tx_win = (data[2] & 0x07); -From dcc71bd890b5b52560e5b8aee115e8ca89ab4499 Mon Sep 17 00:00:00 2001 +From 39c831f3c67816ca9b17c25d9567a64a4e1e30c5 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 13 Apr 2015 17:16:29 +0100 -Subject: [PATCH 097/160] config: Add default configs +Subject: [PATCH 097/163] config: Add default configs --- arch/arm/configs/bcm2709_defconfig | 1309 +++++++++++++++++++++++++++++++++++ @@ -109990,10 +109990,10 @@ index 0000000000000000000000000000000000000000..046f3e8757ef0f794c802171690528d3 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y -From 5d0f7d219f599d936758c2df012d1aed836c99b7 Mon Sep 17 00:00:00 2001 +From 32ba86b506045b2dda0cf2ed0169ae9f62d0660c Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Wed, 24 Aug 2016 03:35:56 -0700 -Subject: [PATCH 098/160] Add arm64 configuration and device tree differences. +Subject: [PATCH 098/163] Add arm64 configuration and device tree differences. Disable MMC_BCM2835_SDHOST and MMC_BCM2835 since these drivers are crashing at the moment. @@ -111408,10 +111408,10 @@ index 0000000000000000000000000000000000000000..e6b09fafa27eed2b762e3d53b55041f7 +CONFIG_LIBCRC32C=y +CONFIG_BCM2835_VCHIQ=n -From e66cc20657f7f411810fff12f1bddd7932be74a6 Mon Sep 17 00:00:00 2001 +From 9c95c1402809609c600880e962716bf1239c765e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 09:18:09 +0100 -Subject: [PATCH 099/160] raspberrypi-firmware: Define the MBOX channel in the +Subject: [PATCH 099/163] raspberrypi-firmware: Define the MBOX channel in the header. Signed-off-by: Eric Anholt @@ -111433,10 +111433,10 @@ index c819c21b0158a59c1308882e5a40e3f3fe73cbdf..de2a3dcd562beb752266eaf0070e5586 enum rpi_firmware_property_status { -From 2c705ec3c5e4d9ff1fee3ef741c43f2fb669bee6 Mon Sep 17 00:00:00 2001 +From 6c7cfff1a73b92cfa7b91c4c9bfa6da8776dcf43 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 09:16:19 +0100 -Subject: [PATCH 100/160] raspberrypi-firmware: Export the general transaction +Subject: [PATCH 100/163] raspberrypi-firmware: Export the general transaction function. The vc4-firmware-kms module is going to be doing the MBOX FB call. @@ -111480,10 +111480,10 @@ index de2a3dcd562beb752266eaf0070e55861d553f5f..dc7fd58afd5dddebf9b17065bb069a1d #endif /* __SOC_RASPBERRY_FIRMWARE_H__ */ -From 7458d5f9db3e253b46272de00862a2ab41059e47 Mon Sep 17 00:00:00 2001 +From ae851d39536c3c172d84caf3c38c0850c3c6be66 Mon Sep 17 00:00:00 2001 From: Electron752 Date: Thu, 12 Jan 2017 07:07:08 -0800 -Subject: [PATCH 101/160] ARM64: Make it work again on 4.9 (#1790) +Subject: [PATCH 101/163] 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. @@ -111887,10 +111887,10 @@ index e6b09fafa27eed2b762e3d53b55041f793683d27..c7e891d72969a388d9b135a36dbfc9c9 CONFIG_LIBCRC32C=y -CONFIG_BCM2835_VCHIQ=n -From 72c29a31bdc262f9bd1a74152c1600b5d11fcdae Mon Sep 17 00:00:00 2001 +From b59df5d44ca9892775d9c6e275d53273bd4ab8f7 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Thu, 12 Jan 2017 19:10:07 -0800 -Subject: [PATCH 102/160] ARM64: Enable HDMI audio and vc04_services in +Subject: [PATCH 102/163] ARM64: Enable HDMI audio and vc04_services in bcmrpi3_defconfig Signed-off-by: Michael Zoran @@ -111919,10 +111919,10 @@ index c7e891d72969a388d9b135a36dbfc9c9cb609bf8..4b90f9b64abe9f089ba56b13d5a00de3 CONFIG_BCM2835_MBOX=y # CONFIG_IOMMU_SUPPORT is not set -From 34d8b2fae26f6b561ac13f27f3922e5c7d09614a Mon Sep 17 00:00:00 2001 +From 9e28a57543eefe2f796b283e2929675da0250ef4 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Thu, 12 Jan 2017 19:14:03 -0800 -Subject: [PATCH 103/160] ARM64: Run bcmrpi3_defconfig through savedefconfig. +Subject: [PATCH 103/163] ARM64: Run bcmrpi3_defconfig through savedefconfig. Signed-off-by: Michael Zoran --- @@ -111967,10 +111967,10 @@ index 4b90f9b64abe9f089ba56b13d5a00de33343bfb9..dac962ca1634662ce7d966f1ffb53b5b CONFIG_FB_TFT_AGM1264K_FL=m CONFIG_FB_TFT_BD663474=m -From 8c1be2d26344ef7c3b866e45ba859959b8f3c265 Mon Sep 17 00:00:00 2001 +From f5d9780b491da4a936c807ad51cbc595ff211ab8 Mon Sep 17 00:00:00 2001 From: Electron752 Date: Sat, 14 Jan 2017 02:54:26 -0800 -Subject: [PATCH 104/160] ARM64: Enable Kernel Address Space Randomization +Subject: [PATCH 104/163] ARM64: Enable Kernel Address Space Randomization (#1792) Randomization allows the mapping between virtual addresses and physical @@ -112002,10 +112002,10 @@ index dac962ca1634662ce7d966f1ffb53b5bfa27c506..aae33b4b3c3e736ea7cd3ca242158ad6 CONFIG_BINFMT_MISC=y CONFIG_COMPAT=y -From cead1b95c1beca97eca332047ce83649e52a9841 Mon Sep 17 00:00:00 2001 +From edba31b9912e73190b4aa1be3b716bd5d538576e Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sun, 15 Jan 2017 07:31:59 -0800 -Subject: [PATCH 105/160] ARM64: Enable RTL8187/RTL8192CU wifi in build config +Subject: [PATCH 105/163] 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 @@ -112030,10 +112030,10 @@ index aae33b4b3c3e736ea7cd3ca242158ad6ba558aff..b7d762df19b85e369a32cd823dfd0621 CONFIG_ZD1211RW=m CONFIG_MAC80211_HWSIM=m -From 7cb9ca26aa7a1fab8aa5b75687c832e6232e0697 Mon Sep 17 00:00:00 2001 +From 366c6fad7385b6f023fdb8388e62a2e2962f8b68 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:33:51 -0800 -Subject: [PATCH 106/160] ARM64/DWC_OTG: Port dwc_otg driver to ARM64 +Subject: [PATCH 106/163] 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 @@ -112376,10 +112376,10 @@ index 6b2c7d0c93f36a63863ff4b0ecc1f3eab77e058b..d7b700ff17821ad1944e36721fe6b2db /** The OS page size */ #define DWC_OS_PAGE_SIZE PAGE_SIZE -From 54d96ba1bf151e5ab7ba1cb7822cbe1a1dd9b3a6 Mon Sep 17 00:00:00 2001 +From 670cf7f53612809b92b9fcc67f2ddeb72d71a1cf Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:43:57 -0800 -Subject: [PATCH 107/160] ARM64: Round-Robin dispatch IRQs between CPUs. +Subject: [PATCH 107/163] 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 @@ -112453,10 +112453,10 @@ index c4e151451cf8c8ebde5225515eac2786d6f61d46..9a7ee04ee0d9b7aa734cf3159ed59c19 .name = "bcm2836-gpu", .irq_mask = bcm2836_arm_irqchip_mask_gpu_irq, -From 4cb9c73c937e74f0bd0fab7b56724b6d83845c8b Mon Sep 17 00:00:00 2001 +From 0966042e85042222091a5703aa53b17f7a8211a2 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 14 Jan 2017 21:45:03 -0800 -Subject: [PATCH 108/160] ARM64: Enable DWC_OTG Driver In ARM64 Build +Subject: [PATCH 108/163] ARM64: Enable DWC_OTG Driver In ARM64 Build Config(bcmrpi3_defconfig) Signed-off-by: Michael Zoran @@ -112477,10 +112477,10 @@ index b7d762df19b85e369a32cd823dfd062145bdefa7..4d85c231c5ea0244e1b05fb4a5e3c8fd CONFIG_USB_STORAGE=y CONFIG_USB_STORAGE_REALTEK=m -From 880da9e99f5a4088f1323534f19a1c00381832a7 Mon Sep 17 00:00:00 2001 +From dab19bb4f7d50b83582c7950c892b5ab29b3ade8 Mon Sep 17 00:00:00 2001 From: Michael Zoran Date: Sat, 11 Feb 2017 01:18:31 -0800 -Subject: [PATCH 109/160] ARM64: Force hardware emulation of deprecated +Subject: [PATCH 109/163] ARM64: Force hardware emulation of deprecated instructions. --- @@ -112488,7 +112488,7 @@ Subject: [PATCH 109/160] ARM64: Force hardware emulation of deprecated 1 file changed, 5 insertions(+) diff --git a/arch/arm64/kernel/armv8_deprecated.c b/arch/arm64/kernel/armv8_deprecated.c -index 657977e77ec8fa49e55fc9cacc1415db81a7cc2d..d16c807fd8c0728262b9495aab9948b626270b5b 100644 +index f0e6d717885b1fcf3b22f64c10c38f19c25f809d..0cb830d30fb6d2bd26ab572efe893649c7a28d3c 100644 --- a/arch/arm64/kernel/armv8_deprecated.c +++ b/arch/arm64/kernel/armv8_deprecated.c @@ -183,10 +183,15 @@ static void __init register_insn_emulation(struct insn_emulation_ops *ops) @@ -112508,10 +112508,10 @@ index 657977e77ec8fa49e55fc9cacc1415db81a7cc2d..d16c807fd8c0728262b9495aab9948b6 case INSN_OBSOLETE: insn->current_mode = INSN_UNDEF; -From 7bd02fbd6d9d1d17d3a512165d4e8dc59743b61c Mon Sep 17 00:00:00 2001 +From 29a4e9bc002532090056f3a9aef7593f652280ec Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 10 Feb 2017 17:57:08 -0800 -Subject: [PATCH 110/160] build/arm64: Add rules for .dtbo files for dts +Subject: [PATCH 110/163] build/arm64: Add rules for .dtbo files for dts overlays We now create overlays as .dtbo files. @@ -112536,10 +112536,10 @@ index b9a4a934ca057623e0ea436fd9b2c7c0f675fced..54e3c38d6fd877827541cdc798de035c dtbs: prepare scripts -From 1a80ed81f095fba007bdda44480a3ca10d4ad236 Mon Sep 17 00:00:00 2001 +From 791f38141d2ad178dd7c8f85454627a556ccdd4f Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 9 May 2016 17:28:18 -0700 -Subject: [PATCH 111/160] clk: bcm2835: Mark GPIO clocks enabled at boot as +Subject: [PATCH 111/163] clk: bcm2835: Mark GPIO clocks enabled at boot as critical. These divide off of PLLD_PER and are used for the ethernet and wifi @@ -112577,10 +112577,10 @@ index 39f72da6ba1f6ec6ec41d5dc1bf46344aab008da..fe3298b54cdfb96bd90fb4f39e13921d * rate changes on at least of the parents. */ -From 7e0610bbfcb4f6d2e3ccfcac258ed1725b745136 Mon Sep 17 00:00:00 2001 +From f100e0cd0b0fb91364f0957a008b17282d7fbdba Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 24 Feb 2015 13:40:50 +0000 -Subject: [PATCH 112/160] pinctrl-bcm2835: Fix interrupt handling for GPIOs +Subject: [PATCH 112/163] pinctrl-bcm2835: Fix interrupt handling for GPIOs 28-31 and 46-53 Contrary to the documentation, the BCM2835 GPIO controller actually has @@ -112613,10 +112613,10 @@ index 6351fe7f8e314ac5ebb102dd20847b383fd5b857..28745af5aadf3cb91fa7ff39118385c3 }, }; -From 6239899710fa679920242ba637ca1637c462357e Mon Sep 17 00:00:00 2001 +From 351edbe6bfd292150e0016f2cfd79d3cd3720d81 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 7 Mar 2017 12:18:20 +0000 -Subject: [PATCH 113/160] BCM270X_DT: Invert Pi3 power LED to match fw change +Subject: [PATCH 113/163] BCM270X_DT: Invert Pi3 power LED to match fw change Firmware expgpio driver reworked due to complaint over hotplug detect. @@ -112642,10 +112642,10 @@ index 616cfd5c7094596b497101e8feca25e25e77c3e8..9f001bccb8261563dcddd8dec94b056b }; -From 34bea596bdffde472d42540520755d74bde32eb7 Mon Sep 17 00:00:00 2001 +From 677fe71d26f8b94172909f47bc7a604f6490a1ae Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 14 Mar 2017 14:23:06 +0000 -Subject: [PATCH 114/160] bcm2835-gpio-exp: Copy/paste error adding base twice +Subject: [PATCH 114/163] bcm2835-gpio-exp: Copy/paste error adding base twice brcmexp_gpio_set was adding gpio->gc.base to the offset twice, so passing an invalid number to the mailbox service. @@ -112671,10 +112671,10 @@ index 681a91492d4c33bdfd42416e069218e8611cc4d9..d68adafaee4ad406f45f4ff0d6b7c1ad set.state = val; /* Output state */ -From 848bae47b634ca0db15bf17646e13435314f594e Mon Sep 17 00:00:00 2001 +From 8563d77c1243dbd356a295124a290eca0a6be39f Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 17 Mar 2017 13:40:41 +0000 -Subject: [PATCH 115/160] config: disable MMC driver temporarily for now. +Subject: [PATCH 115/163] config: disable MMC driver temporarily for now. Currently causes a breakage to sdhost driver. However when MMC is disabled Pi3 wifi will not work --- @@ -112709,10 +112709,10 @@ index 046f3e8757ef0f794c802171690528d31fee9deb..f2e0a58a96c8550f110c5940bf65f4d0 CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y -From 1309b310a02e50b6cf128c6a5727e7a63fa522f2 Mon Sep 17 00:00:00 2001 +From c492141d76d18a7058c0eb5eb4526df9f8f69c35 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 17 Mar 2017 12:24:41 +0000 -Subject: [PATCH 116/160] config: Make spidev a loadable module +Subject: [PATCH 116/163] config: Make spidev a loadable module spidev isn't required early in the boot process, and not all users need it (spi_bcm2835 is a module), so make it a loadable module. @@ -112752,10 +112752,10 @@ index f2e0a58a96c8550f110c5940bf65f4d022cc4548..9eb7084f440c8aac0c6257ee678007c2 CONFIG_PPS_CLIENT_LDISC=m CONFIG_PPS_CLIENT_GPIO=m -From 8c7c0c91122ddbefadabaae5fd63b332e8c3c1f0 Mon Sep 17 00:00:00 2001 +From 3174ac50886ca0ea41bdf5d41ac1014d32ba9096 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 10:06:56 +0000 -Subject: [PATCH 117/160] ASoC: Add prompt for ICS43432 codec +Subject: [PATCH 117/163] 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 @@ -112780,10 +112780,10 @@ index 55812b0b884cf4fc4e86680b11fedd11c863db7a..428dc05edbb99f50560b7f89e45501c5 config SND_SOC_INNO_RK3036 tristate "Inno codec driver for RK3036 SoC" -From 7b844c56d5b3fe01af55c87d9ca190866167b231 Mon Sep 17 00:00:00 2001 +From fae470b9e45715ab7724bb3a3ecc265a4be50da4 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 16:34:46 +0000 -Subject: [PATCH 118/160] bcm2835-aux: Add aux interrupt controller +Subject: [PATCH 118/163] 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 @@ -112947,10 +112947,10 @@ index bd750cf2238d61489811e7d7bd3b5f9950ed53c8..41e0702fae4692221980b0d02aed1ba6 BCM2835_AUX_CLOCK_COUNT, GFP_KERNEL); if (!onecell) -From 40d9f4772f63f53a67a4e7dfeef8cc22382ac1d6 Mon Sep 17 00:00:00 2001 +From 51048a9168b4c3ea496b4c13a30a037613e1b661 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 23 Mar 2017 17:08:44 +0000 -Subject: [PATCH 119/160] BCM270X_DT: Enable AUX interrupt controller in DT +Subject: [PATCH 119/163] BCM270X_DT: Enable AUX interrupt controller in DT See: https://github.com/raspberrypi/linux/issues/1484 https://github.com/raspberrypi/linux/issues/1573 @@ -113003,10 +113003,10 @@ index 72cb9dc60ca9ad9aa2813972a299c50dcea7cd89..ca47b23ffbcd06063e0fb7072dc8a843 #address-cells = <1>; #size-cells = <0>; -From 4f1f03c0b8afa0a79478665cc15f8ead6688eda3 Mon Sep 17 00:00:00 2001 +From 2068ae0968a43f49711f1e58dae3e3ddf983cb0b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 27 Mar 2017 17:40:45 +0100 -Subject: [PATCH 120/160] mkknlimg: Find some more downstream-only strings +Subject: [PATCH 120/163] mkknlimg: Find some more downstream-only strings See: https://github.com/raspberrypi/linux/issues/1920 @@ -113037,10 +113037,10 @@ index 60206de7fa9a49bd027c635306674a29a568652f..84be2593ec1de8f97b0167ff06b3e05d my $res = try_extract($kernel_file, $tmpfile1); -From cae212eb698b5ccaf629d3232c7d5389110a5f46 Mon Sep 17 00:00:00 2001 +From 98015301b1e2c7e12c6e823e9ac5668b32625b29 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Fri, 29 Apr 2016 10:32:17 -0700 -Subject: [PATCH 121/160] mmc: read mmc alias from device tree +Subject: [PATCH 121/163] mmc: read mmc alias from device tree To get the SD/MMC host device ID, read the alias from the device tree. @@ -113097,10 +113097,10 @@ index 3f8c85d5aa094b43666904c7dbbe5e62c9763c19..4dbd0e8e27a496bfbe67d188cf795ecc kfree(host); return NULL; -From 05fd39f5ebb6c97ebd91851a13f6a65053816c5d Mon Sep 17 00:00:00 2001 +From 8c0d2c1d86abb0042123624079e5c67e3aa6be9d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 29 Mar 2017 14:30:42 +0100 -Subject: [PATCH 122/160] BCM270X_DT: Add numbered aliases for SD/MMC devices +Subject: [PATCH 122/163] BCM270X_DT: Add numbered aliases for SD/MMC devices In order to force a specific ID assignment to SD/MMC devices, add numbered aliases to the DT: sdhost -> mmc0, mmc -> mmc1 @@ -113131,10 +113131,10 @@ index ef14e9ac6cd2092efb1681682dd2d3c52b8abfd5..693d4c04a36d2a7883cc3d8916bf0efb i2c2 = &i2c2; usb = &usb; -From 43a6de911363e7470963f3c289be55d0f45c70a1 Mon Sep 17 00:00:00 2001 +From 823ea3ae22107f1356c270b2e0efa5295a058f65 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 29 Mar 2017 14:28:53 +0100 -Subject: [PATCH 123/160] config: Re-enable the bcm2835-mmc driver +Subject: [PATCH 123/163] config: Re-enable the bcm2835-mmc driver With the patch to assign mmc device IDs based on DT aliases and appropriate aliases in the rpi DTBs, it is now safe to re-enable @@ -113171,10 +113171,10 @@ index 9eb7084f440c8aac0c6257ee678007c23990a8ae..021c38a909e71baa135cbcd4f3fb80fa CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y -From 3848cdf33faa550f0a747c91f8bcaaa5ea0ac846 Mon Sep 17 00:00:00 2001 +From cf084619c7f026d65bf85ba3861021c71fd49372 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 11 May 2016 12:50:33 +0100 -Subject: [PATCH 124/160] mmc: Add MMC_QUIRK_ERASE_BROKEN for some cards +Subject: [PATCH 124/163] 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, @@ -113316,10 +113316,10 @@ index 77e61e0a216a2728dd5cfecf55299402ac03c384..d12e8ddd22cb96e38b30f1ac3f9a6bd0 unsigned int erase_shift; /* if erase unit is power 2 */ unsigned int pref_erase; /* in sectors */ -From 62ca1b45e51b91b0f71aaaa5140768221a06c7c5 Mon Sep 17 00:00:00 2001 +From 0470ef2b33550d5485ef25c59b994b6de9839f29 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 29 Mar 2017 16:08:29 +0100 -Subject: [PATCH 125/160] bcm2835-sdhost: mmc_card_blockaddr fix +Subject: [PATCH 125/163] bcm2835-sdhost: mmc_card_blockaddr fix Get the definition of mmc_card_blockaddr from drivers/mmc/core/card.h. @@ -113346,10 +113346,10 @@ index a9bc79bfdbb71807819dfe2d8f1651445997f92a..9c6f199a7830959f31012d86bc1f8b1a #define SDCMD 0x00 /* Command to SD card - 16 R/W */ -From 162f4ef5b091051fda65a1db4fa1955ffbca1dee Mon Sep 17 00:00:00 2001 +From 69ecca1fff5f50217c310df9bcc49110eb15dab5 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Mar 2017 12:30:37 +0000 -Subject: [PATCH 126/160] thermal: Compatible strings for bcm2836, bcm2837 +Subject: [PATCH 126/163] thermal: Compatible strings for bcm2836, bcm2837 The upstream dt-bindings documentation for bcm2835-thermal (which exists even though the driver isn't upstreamed) says to use @@ -113381,10 +113381,10 @@ index c63fb9f9d143e19612a18fe530c7b2b3518a22a4..25b78c3eac1503fbc9e679b963a6284b }; MODULE_DEVICE_TABLE(of, bcm2835_thermal_of_match_table); -From e88b56a4431945a77b135dfd279f2773bc7ab01d Mon Sep 17 00:00:00 2001 +From e9d8883b8333ee5a0a134e40c752553f4f7edc07 Mon Sep 17 00:00:00 2001 From: John Greb Date: Wed, 8 Mar 2017 15:12:29 +0000 -Subject: [PATCH 127/160] Match dwc2 device-tree fifo sizes to the hardware +Subject: [PATCH 127/163] Match dwc2 device-tree fifo sizes to the hardware values. Since commit aa381a7259c3f53727bcaa8c5f9359e940a0e3fd was reverted with 3fa9538539ac737096c81f3315a14670b1609092 the g-tx-fifo-size array in the device-tree needs to match the preset values in the bcm2835. @@ -113415,10 +113415,10 @@ index 527abc9f0ddf71f4dc7d58336d87684c931cc2f3..265a16bab008453edba198cf2366c423 }; }; -From e36070892ccc8f58060bebeb4e622ce6c5a09fa4 Mon Sep 17 00:00:00 2001 +From d7d1f5d41b65cd43537c210ebe8dafbb3e297a02 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 14 Mar 2017 09:10:05 +0000 -Subject: [PATCH 128/160] BCM270X_DT: Add lm75 to i2c-sensor overlay +Subject: [PATCH 128/163] BCM270X_DT: Add lm75 to i2c-sensor overlay See: https://www.raspberrypi.org/forums/viewtopic.php?f=107&t=177236 @@ -113481,10 +113481,10 @@ index 31bda8da4cb6a56bfe493a81b918900995fb0589..606b2d5012abf2e85712be631c42ea40 }; }; -From 2fdec5c8ca63323c4e642f7a9b7df18b491231e2 Mon Sep 17 00:00:00 2001 +From b37d621a184caa33f9ee4d06307331582699dac6 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 28 Mar 2017 14:22:20 +0100 -Subject: [PATCH 129/160] BCM270X_DT: Allow multiple instances of w1-gpio +Subject: [PATCH 129/163] BCM270X_DT: Allow multiple instances of w1-gpio overlays Upcoming firmware will modify the address portion of node names when @@ -113549,10 +113549,10 @@ index 66a98f6c9601f51483f27803995bec772bb3350e..ef8bfbcabdb31231075d5c281df3b38b <&w1_pins>,"brcm,pins:4"; pullup = <&w1>,"rpi,parasitic-power:0"; -From 9572be1baf59287e658ba40338eac6ba74a6f20b Mon Sep 17 00:00:00 2001 +From 315a481c0a34e530425ad018e8536420fec6eedf Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 28 Mar 2017 17:41:30 +0100 -Subject: [PATCH 130/160] leds-gpio: Remove stray assignment to brightness_set +Subject: [PATCH 130/163] leds-gpio: Remove stray assignment to brightness_set The brightness_set method is intended for use cases that must not block, and can only be used if the GPIO provider can never sleep. @@ -113578,10 +113578,10 @@ index 934cdb1d7bc7f12a4fb06a5c458ad76727c7b7c7..a4df27f6af35ba7f7b34c2a4b7b22ee7 if (template->default_state == LEDS_GPIO_DEFSTATE_KEEP) { state = gpiod_get_value_cansleep(led_dat->gpiod); -From ebf43a8c50e3594bf93f0b43b10bb6db39798d14 Mon Sep 17 00:00:00 2001 +From ae3a92bb70c029654d144bf36b74dc9467d31f67 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 29 Mar 2017 17:41:04 +0100 -Subject: [PATCH 131/160] config: Add back MMC_BCM2835_DMA +Subject: [PATCH 131/163] config: Add back MMC_BCM2835_DMA --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -113613,10 +113613,10 @@ index 021c38a909e71baa135cbcd4f3fb80fad2151647..a8fc96ef674be476d10e59aef2367def CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y -From 0acfc82e9d8a6181f8394e854c1b26cb0f79af2f Mon Sep 17 00:00:00 2001 +From effbb9fc731aa32fc5b1f21abb142d2806d4a291 Mon Sep 17 00:00:00 2001 From: Matt Flax Date: Mon, 27 Mar 2017 22:26:49 +1100 -Subject: [PATCH 132/160] AudioInjector Octo: sample rates, regulators, reset +Subject: [PATCH 132/163] AudioInjector Octo: sample rates, regulators, reset This patch adds new sample rates to the Audioinjector Octo sound card. The new supported rates are (in kHz) : @@ -113782,10 +113782,10 @@ index 9effea725798640887755dfa688da45338718afc..dcf403ab37639ba79e38278d7e4b1ade dai->cpu_dai_name = NULL; dai->cpu_of_node = i2s_node; -From 2a491f5f4c12a0dea6c58b13c64f3819d1df2fed Mon Sep 17 00:00:00 2001 +From 65914ba0a73c03f1e46e2e7f5c641e57856de760 Mon Sep 17 00:00:00 2001 From: Peter Malkin Date: Mon, 27 Mar 2017 16:38:21 -0700 -Subject: [PATCH 133/160] Driver support for Google voiceHAT soundcard. +Subject: [PATCH 133/163] Driver support for Google voiceHAT soundcard. --- arch/arm/boot/dts/overlays/Makefile | 1 + @@ -114290,10 +114290,10 @@ index 0000000000000000000000000000000000000000..225854b8e5298b3c3018f59a49404354 +MODULE_DESCRIPTION("ASoC Driver for Google voiceHAT SoundCard"); +MODULE_LICENSE("GPL v2"); -From 53889740d3ae8266f23cc4595f5b3dba73227221 Mon Sep 17 00:00:00 2001 +From 424d2a66b174d44fcf9d6158c9095d0cdb63e5d9 Mon Sep 17 00:00:00 2001 From: Raashid Muhammed Date: Mon, 27 Mar 2017 12:35:00 +0530 -Subject: [PATCH 134/160] Add support for Allo Piano DAC 2.1 plus add-on board +Subject: [PATCH 134/163] 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. @@ -114921,10 +114921,10 @@ index 0000000000000000000000000000000000000000..f66f42abadbd5f9d3fe000676e8297ed +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Piano DAC Plus"); +MODULE_LICENSE("GPL v2"); -From 6c75b0edba98f0947d3e87d6fe7a1c80929377a1 Mon Sep 17 00:00:00 2001 +From 0b65de25a201a1d62fc011df556613c66995a789 Mon Sep 17 00:00:00 2001 From: BabuSubashChandar Date: Tue, 28 Mar 2017 20:04:42 +0530 -Subject: [PATCH 135/160] Add support for Allo Boss DAC add-on board for +Subject: [PATCH 135/163] Add support for Allo Boss DAC add-on board for Raspberry Pi. (#1924) Signed-off-by: Baswaraj K @@ -115654,10 +115654,10 @@ index 0000000000000000000000000000000000000000..c080e31065d99ab309ab3bdf41a44adf +MODULE_DESCRIPTION("ALSA ASoC Machine Driver for Allo Boss DAC"); +MODULE_LICENSE("GPL v2"); -From 37ad6adf50db4531c2ff306e1a071f152c6113b7 Mon Sep 17 00:00:00 2001 +From 8c860a588fea4d08f7d0ff2b8cbecf6533dde836 Mon Sep 17 00:00:00 2001 From: BabuSubashChandar C Date: Thu, 30 Mar 2017 20:17:27 +0530 -Subject: [PATCH 136/160] Add support for new clock rate and mute gpios. +Subject: [PATCH 136/163] Add support for new clock rate and mute gpios. Signed-off-by: Baswaraj K Reviewed-by: Deepak @@ -116310,10 +116310,10 @@ index c080e31065d99ab309ab3bdf41a44adfdd8f8039..203ab76c7045b081578e23bda1099dd1 } -From dac8251fe22e12639f6b5b82ba33f052a4bc3610 Mon Sep 17 00:00:00 2001 +From 45fa5f06a8d667e0c709e2101839ef13a870d51a Mon Sep 17 00:00:00 2001 From: BabuSubashChandar Date: Sat, 1 Apr 2017 00:46:52 +0530 -Subject: [PATCH 137/160] Add clock changes and mute gpios (#1938) +Subject: [PATCH 137/163] Add clock changes and mute gpios (#1938) Also improve code style and adhere to ALSA coding conventions. @@ -117006,10 +117006,10 @@ index f66f42abadbd5f9d3fe000676e8297ed91630e47..56e43f98846b41e487b3089813f7edc3 } -From d09c3f49065d97f72e206b3bd774a54c81bf0a0c Mon Sep 17 00:00:00 2001 +From b66a2da5c820bbcacec2d4724d3730ef6f8fe8e6 Mon Sep 17 00:00:00 2001 From: Yasunari Takiguchi Date: Fri, 14 Apr 2017 10:43:57 +0100 -Subject: [PATCH 138/160] This is the driver for Sony CXD2880 DVB-T2/T tuner + +Subject: [PATCH 138/163] 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. @@ -133141,10 +133141,10 @@ index 0000000000000000000000000000000000000000..82e122349055be817eb74ed5bbcd7560 +MODULE_AUTHOR("Sony Semiconductor Solutions Corporation"); +MODULE_LICENSE("GPL v2"); -From 18ff06a7e04e8d2168eb2645c53bf0801af9d9c3 Mon Sep 17 00:00:00 2001 +From 1607bc41f7e51234803269d6bdb584c315bdd8e7 Mon Sep 17 00:00:00 2001 From: Yasunari Takiguchi Date: Thu, 22 Dec 2016 15:34:12 +0900 -Subject: [PATCH 139/160] BCM2708: Add Raspberry Pi TV HAT Device Tree Support +Subject: [PATCH 139/163] BCM2708: Add Raspberry Pi TV HAT Device Tree Support This is an EXAMPLE CODE of Raspberry Pi TV HAT device tree overlay. Although this is not a part of our release code, it has been used to verify @@ -133240,10 +133240,10 @@ index 0000000000000000000000000000000000000000..a68f6f793d8efd8b2e2adf9f2fb6426f + +}; -From f3adac152b0145a1135cfc74c5fede63de16954f Mon Sep 17 00:00:00 2001 +From 577eefa0a025b4bafd92cd579bdf3e27cdf59f0d Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 27 Apr 2017 16:24:34 +0100 -Subject: [PATCH 140/160] dwc_otg: make nak_holdoff work as intended with empty +Subject: [PATCH 140/163] dwc_otg: make nak_holdoff work as intended with empty queues If URBs reading from non-periodic split endpoints were dequeued and @@ -133327,10 +133327,10 @@ index c2dff94e8e6edd22e4427aaa1eac7aad972cb6bd..85a6d431ca54b47dc10573aa72d1ad69 } else { uint16_t frame_number = dwc_otg_hcd_get_frame_number(hcd); -From 34ef8232d654b28fd05d62bba81f4ad6351e7744 Mon Sep 17 00:00:00 2001 +From f5e9a02678844a04b94abe72a4d8da36c60c4fa8 Mon Sep 17 00:00:00 2001 From: P33M Date: Tue, 2 May 2017 16:31:15 +0100 -Subject: [PATCH 141/160] dwc_otg: fix split transaction data toggle handling +Subject: [PATCH 141/163] dwc_otg: fix split transaction data toggle handling around dequeues See https://github.com/raspberrypi/linux/issues/1709 @@ -133418,10 +133418,10 @@ index 608e036be2c9484465ab836de70129335d3d2d96..718a1accc0c219a1764ce53d291de6a2 } qtd = DWC_CIRCLEQ_FIRST(&hc->qh->qtd_list); -From 70c1762062a072e223130d2a4686bde35a50be61 Mon Sep 17 00:00:00 2001 +From f2aaf2b74ebeef7496ec4e87133d1e60f200ed51 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 2 May 2017 16:36:05 +0100 -Subject: [PATCH 142/160] vcsm: Treat EBUSY as success rather than SIGBUS +Subject: [PATCH 142/163] vcsm: Treat EBUSY as success rather than SIGBUS Currently if two cores access the same page concurrently one will return VM_FAULT_NOPAGE and the other VM_FAULT_SIGBUS crashing the user code. @@ -133459,92 +133459,10 @@ index fd71d9fbb400d71bb8cfb8672080e7c3053e3ae9..fd2ca788dcd56b1702454d71b7bedd42 } } -From c262971042e86f05b0d03a6a8bfc147180b2de6e Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Wed, 3 May 2017 10:34:36 +0100 -Subject: [PATCH 143/160] staging: vc04_services: Fix bulk cache maintenance - -vchiq_arm supports transfers less than one page and at arbitrary -alignment, using the dma-mapping API to perform its cache maintenance -(even though the VPU drives the DMA hardware). Read (DMA_FROM_DEVICE) -operations use cache invalidation for speed, falling back to -clean+invalidate on partial cache lines, with writes (DMA_TO_DEVICE) -using flushes. - -If a read transfer has ends which aren't page-aligned, performing cache -maintenance as if they were whole pages can lead to memory corruption -since the partial cache lines at the ends (and any cache lines before or -after the transfer area) will be invalidated. This bug was masked until -the disabling of the cache flush in flush_dcache_page(). - -Honouring the requested transfer start- and end-points prevents the -corruption. - -See: https://github.com/raspberrypi/linux/issues/1977 - -Signed-off-by: Phil Elwell ---- - .../interface/vchiq_arm/vchiq_2835_arm.c | 31 +++++++++++++--------- - 1 file changed, 19 insertions(+), 12 deletions(-) - -diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c -index 3aeffcb9c87e91d0be902bf851d38bb8b2550ebb..02e97367cb88129793bab6b02f474a6abaeac722 100644 ---- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c -+++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c -@@ -501,8 +501,15 @@ create_pagelist(char __user *buf, size_t count, unsigned short type, - */ - sg_init_table(scatterlist, num_pages); - /* Now set the pages for each scatterlist */ -- for (i = 0; i < num_pages; i++) -- sg_set_page(scatterlist + i, pages[i], PAGE_SIZE, 0); -+ for (i = 0; i < num_pages; i++) { -+ unsigned int len = PAGE_SIZE - offset; -+ -+ if (len > count) -+ len = count; -+ sg_set_page(scatterlist + i, pages[i], len, offset); -+ offset = 0; -+ count -= len; -+ } - - dma_buffers = dma_map_sg(g_dev, - scatterlist, -@@ -523,20 +530,20 @@ create_pagelist(char __user *buf, size_t count, unsigned short type, - u32 addr = sg_dma_address(sg); - - /* Note: addrs is the address + page_count - 1 -- * The firmware expects the block to be page -+ * The firmware expects blocks after the first to be page- - * aligned and a multiple of the page size - */ - WARN_ON(len == 0); -- WARN_ON(len & ~PAGE_MASK); -- WARN_ON(addr & ~PAGE_MASK); -+ WARN_ON(i && (i != (dma_buffers - 1)) && (len & ~PAGE_MASK)); -+ WARN_ON(i && (addr & ~PAGE_MASK)); - if (k > 0 && -- ((addrs[k - 1] & PAGE_MASK) | -- ((addrs[k - 1] & ~PAGE_MASK) + 1) << PAGE_SHIFT) -- == addr) { -- addrs[k - 1] += (len >> PAGE_SHIFT); -- } else { -- addrs[k++] = addr | ((len >> PAGE_SHIFT) - 1); -- } -+ ((addrs[k - 1] & PAGE_MASK) + -+ (((addrs[k - 1] & ~PAGE_MASK) + 1) << PAGE_SHIFT)) -+ == (addr & PAGE_MASK)) -+ addrs[k - 1] += ((len + PAGE_SIZE - 1) >> PAGE_SHIFT); -+ else -+ addrs[k++] = (addr & PAGE_MASK) | -+ (((len + PAGE_SIZE - 1) >> PAGE_SHIFT) - 1); - } - - /* Partial cache lines (fragments) require special measures */ - -From 039686d5ef192124e26c7b73f45cdc735533a799 Mon Sep 17 00:00:00 2001 +From 257d19dc19ea1b8080fc0d9e37a51b75a1289106 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 4 May 2017 12:58:11 +0100 -Subject: [PATCH 144/160] fiq_fsm: Use correct states when starting isoc OUT +Subject: [PATCH 143/163] fiq_fsm: Use correct states when starting isoc OUT transfers In fiq_fsm_start_next_periodic() if an isochronous OUT transfer @@ -133581,10 +133499,10 @@ index 9304279592cb5b388086ef91cb52f1e9f94868ce..208252645c09d1d17bf07673989f91b7 break; } -From 552b5097e9ec77cfc2aa55a90250b75e21bc297a Mon Sep 17 00:00:00 2001 +From 016b5cd031d1f5048b81d81dc2406be77bde7f56 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 4 May 2017 17:38:22 +0100 -Subject: [PATCH 145/160] bcm2708_fb: Avoid firmware mbox call in vc_mem_copy +Subject: [PATCH 144/163] bcm2708_fb: Avoid firmware mbox call in vc_mem_copy If firmware has locked up it is useful to get vcdbg log out without a firmware mbox response. Issue the mbox call at probe time instead. @@ -133648,10 +133566,10 @@ index 53c5a0bdadb4be9251affdabed66305842a08e72..612293cf9f1bd93ad2f2aefdd7ca0f5e if (ret == 0) { platform_set_drvdata(dev, fb); -From 1604770bdda7012b5b6fb0bae07aad7ae539b63c Mon Sep 17 00:00:00 2001 +From 863e5c53ebaea69c7095eec1c19e8c3c04e2c229 Mon Sep 17 00:00:00 2001 From: Nisar Sayed Date: Tue, 9 May 2017 18:51:42 +0100 -Subject: [PATCH 146/160] According to RFC 2460, IPv6 UDP calculated checksum +Subject: [PATCH 145/163] According to RFC 2460, IPv6 UDP calculated checksum yields a result of zero must be changed to 0xffff, however this feature is not supported by smsc95xx family hence enable csum offload only for IPv4 TCP/UDP packets. @@ -133696,10 +133614,10 @@ index f6661e388f6e801c1b88e48a3b71407bd70cf56e..b84e98508b5d97165b68dfc30240950e smsc95xx_init_mac_address(dev); -From b427fd10bfa8a8e55914a485502c6ce9a482b083 Mon Sep 17 00:00:00 2001 +From 4c910731c32242eabd857c88f4e63203c9e8a44d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 14 Sep 2016 08:39:33 +0100 -Subject: [PATCH 147/160] drm/vc4: Add a mode for using the closed firmware for +Subject: [PATCH 146/163] drm/vc4: Add a mode for using the closed firmware for display. Signed-off-by: Eric Anholt @@ -134466,10 +134384,10 @@ index 0000000000000000000000000000000000000000..d18a1dae51a2275846c9826b5bf1ba57 + }, +}; -From 848fe9bbd20aa9db73d4ad46ffbde9d83d40cbbd Mon Sep 17 00:00:00 2001 +From 91b471c6f31b64d194b38befd860be885f23b3e2 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:09:18 -0800 -Subject: [PATCH 148/160] drm/vc4: Name the primary and cursor planes in fkms. +Subject: [PATCH 147/163] drm/vc4: Name the primary and cursor planes in fkms. This makes debugging nicer, compared to trying to remember what the IDs are. @@ -134493,10 +134411,10 @@ index d18a1dae51a2275846c9826b5bf1ba57ae97b55c..e49ce68b607a7ffc2329e3235362f3bc if (type == DRM_PLANE_TYPE_PRIMARY) { vc4_plane->fbinfo = -From ef507af745958b99aa61369b50c8fab7e792e965 Mon Sep 17 00:00:00 2001 +From b381bcc0283fa19fdddbe030fd27c4c32d82b035 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:10:09 -0800 -Subject: [PATCH 149/160] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of +Subject: [PATCH 148/163] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of fkms. Trying to debug weston on fkms involved figuring out what calls I was @@ -134566,10 +134484,10 @@ index e49ce68b607a7ffc2329e3235362f3bc21ed5cbb..dbf065677202fbebf8e3a0cffbe880aa RPI_FIRMWARE_SET_CURSOR_STATE, &packet_state, -From 398fa6006fa5af976a3b6ecc57ce68f74e53ae74 Mon Sep 17 00:00:00 2001 +From 23f63ffdc9c4c457d3ddba4aa606da7deba399f3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 2 Feb 2017 09:42:18 -0800 -Subject: [PATCH 150/160] drm/vc4: Fix sending of page flip completion events +Subject: [PATCH 149/163] 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 @@ -134611,10 +134529,10 @@ index dbf065677202fbebf8e3a0cffbe880aa42daef3f..da818a207bfa639b8cea48d94bcf4566 static void vc4_crtc_handle_page_flip(struct vc4_crtc *vc4_crtc) -From c0eacf594143c27383b9f92129ad937f4c1f0e3f Mon Sep 17 00:00:00 2001 +From 574d7c3bb5ba79addf45b4c623b5248446bd5608 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 10 May 2017 21:39:45 +0100 -Subject: [PATCH 151/160] squash: vc4_firmware_kms fixups +Subject: [PATCH 150/163] squash: vc4_firmware_kms fixups --- drivers/gpu/drm/vc4/vc4_crtc.c | 2 ++ @@ -134664,10 +134582,10 @@ index da818a207bfa639b8cea48d94bcf4566f97db816..35425063cca47a33936c4853f7cc320c vc4_encoder = devm_kzalloc(dev, sizeof(*vc4_encoder), GFP_KERNEL); if (!vc4_encoder) -From 1a1ca0f26113128b477a70508f49a0c5fa27d8bf Mon Sep 17 00:00:00 2001 +From 8d6542630dae88011eb6af2ede0b8b99bc24b653 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 18 Apr 2017 21:43:46 +0100 -Subject: [PATCH 152/160] vc4_fkms: Apply firmware overscan offset to hardware +Subject: [PATCH 151/163] vc4_fkms: Apply firmware overscan offset to hardware cursor --- @@ -134724,10 +134642,10 @@ index 35425063cca47a33936c4853f7cc320c3630fdb2..ca03b85f27d8c0966acd977cba9c758d return 0; -From 9f59a1ff1a6fc39e81a917ee77142a3071abaa0f Mon Sep 17 00:00:00 2001 +From e025e555ced4ec6bdf72fce52604cad32603e55e Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 11 May 2017 16:58:16 +0100 -Subject: [PATCH 153/160] BCM270X_DT: Tidy up mmc, sdhost, sdio overlays +Subject: [PATCH 152/163] BCM270X_DT: Tidy up mmc, sdhost, sdio overlays The mmc, sdhost, sdio and sdio-1bit overlays had a few anachronisms and oddities which were overdue for fixing. @@ -134836,10 +134754,10 @@ index 398bd812c716c9e472fbac5aba4fe882114c65d1..215d5e3e8a8ca4363457fed1f7425427 }; }; -From 82f4830b7b00f4fa00c82ac33d6db5b0259d579f Mon Sep 17 00:00:00 2001 +From 66eb651de6d1b30be39752b9185cfefd3442643b Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 12 May 2017 12:24:00 +0100 -Subject: [PATCH 154/160] dwc_otg: fix several potential crash sources +Subject: [PATCH 153/163] dwc_otg: fix several potential crash sources On root port disconnect events, the host driver state is cleared and in-progress host channels are forcibly stopped. This doesn't play @@ -135035,10 +134953,10 @@ index 718a1accc0c219a1764ce53d291de6a2b6f93608..cf23baaa388562b5843be4cfa6c206cb release_channel(hcd, hc, qtd, DWC_OTG_HC_XFER_URB_COMPLETE); break; -From 58ccc3c0fd88bf81e86caa6d981286a2e1c927d7 Mon Sep 17 00:00:00 2001 +From bf6a37fd89f428e3fe2178d11720e6ae6a26cafb Mon Sep 17 00:00:00 2001 From: P33M Date: Mon, 15 May 2017 14:27:48 +0100 -Subject: [PATCH 155/160] dwc_otg: delete hcd->channel_lock +Subject: [PATCH 154/163] dwc_otg: delete hcd->channel_lock The lock serves no purpose as it is only held while the HCD spinlock is already being held. @@ -135190,10 +135108,10 @@ index cf23baaa388562b5843be4cfa6c206cbdc4e780d..a4355afc77b68718fdaba6c5d4be257d /* Try to queue more transfers now that there's a free channel. */ -From 87890ac90dc5479a5fc475d9bf4947ffd84b8222 Mon Sep 17 00:00:00 2001 +From 2fa2e31d09b266e583621d9fb0c69d4cc9e12904 Mon Sep 17 00:00:00 2001 From: P33M Date: Mon, 15 May 2017 14:51:42 +0100 -Subject: [PATCH 156/160] dwc_otg: remove unnecessary dma-mode channel halts on +Subject: [PATCH 155/163] dwc_otg: remove unnecessary dma-mode channel halts on disconnect interrupt Host channels are already halted in kill_urbs_in_qh_list() with the @@ -135261,10 +135179,10 @@ index 5ec991624c7865901b22ea01b9f2c58c8535ecfd..a2dc6337836b2719f4c954edeeb2a713 if(fiq_enable) { -From 7bbaa3c75ff473a6a1afa32655f4c0344236c894 Mon Sep 17 00:00:00 2001 +From 0f80955aaffb18d43ff59916a9df7332c60a1ce9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 15 May 2017 16:40:05 +0100 -Subject: [PATCH 157/160] config: Add CONFIG_TOUCHSCREEN_GOODIX +Subject: [PATCH 156/163] config: Add CONFIG_TOUCHSCREEN_GOODIX --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -135296,10 +135214,10 @@ index db6589288b6abd6b76b934de07e8976456e14e61..88072e3b55eb230be44f6d23012428ed CONFIG_TOUCHSCREEN_USB_COMPOSITE=m CONFIG_TOUCHSCREEN_STMPE=m -From c355c1f8761a5b97354041a21cd1c40eb17fc612 Mon Sep 17 00:00:00 2001 +From 8ececa518a43665024f82c78be137aca9e9b77cd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 18 May 2017 11:40:43 +0100 -Subject: [PATCH 158/160] config: Add FB_TFT_ST7789V module +Subject: [PATCH 157/163] config: Add FB_TFT_ST7789V module --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -135331,10 +135249,10 @@ index 88072e3b55eb230be44f6d23012428eda3de3453..65e3676b48ab0c0f54375ecf875fc255 CONFIG_FB_TFT_TLS8204=m CONFIG_FB_TFT_UC1701=m -From 164b2612b34a209ae7737a83f01ee464331111d7 Mon Sep 17 00:00:00 2001 +From b15397045af886519a2153f5dfdfee7837aac3c4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 16 May 2017 15:58:00 +0100 -Subject: [PATCH 159/160] config: Add CONFIG_TOUCHSCREEN_EDT_FT5X06 +Subject: [PATCH 158/163] config: Add CONFIG_TOUCHSCREEN_EDT_FT5X06 --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -135366,10 +135284,10 @@ index 65e3676b48ab0c0f54375ecf875fc2552c457e09..7381eeba83ecd4a2c956ab2093ece4f8 CONFIG_TOUCHSCREEN_USB_COMPOSITE=m CONFIG_TOUCHSCREEN_STMPE=m -From d024d007e0b65a83a0a5e0454610c3e73968f960 Mon Sep 17 00:00:00 2001 +From 81e5447f49a3dcbe426449562ec79f5a9f15bdec Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 16 May 2017 19:34:52 +0100 -Subject: [PATCH 160/160] config: Add CONFIG_I2C_ROBOTFUZZ_OSIF +Subject: [PATCH 159/163] config: Add CONFIG_I2C_ROBOTFUZZ_OSIF --- arch/arm/configs/bcm2709_defconfig | 1 + @@ -135400,3 +135318,384 @@ index 7381eeba83ecd4a2c956ab2093ece4f8a57c6ea4..35dc0b5084256f2ae755703edc3eb67c CONFIG_SPI=y CONFIG_SPI_BCM2835=m CONFIG_SPI_BCM2835AUX=m + +From fb23556eefc1940c56939cabb850297e53b78b23 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Wed, 26 Apr 2017 17:28:47 +0100 +Subject: [PATCH 160/163] 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 +change and they may even be switched off, so explicitly restrict the +choice using dummy entries in the list of potential parents (item index +is significant). + +See: https://github.com/raspberrypi/linux/issues/1949 + +Signed-off-by: Phil Elwell +--- + drivers/clk/bcm/clk-bcm2835.c | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c +index fe3298b54cdfb96bd90fb4f39e13921d2e1d4356..c24b4defb2b046e4ecdc109befc2b22497060647 100644 +--- a/drivers/clk/bcm/clk-bcm2835.c ++++ b/drivers/clk/bcm/clk-bcm2835.c +@@ -1562,6 +1562,16 @@ static const char *const bcm2835_clock_per_parents[] = { + "pllh_aux", + }; + ++static const char *const bcm2835_pcm_per_parents[] = { ++ "-", ++ "xosc", ++ "-", ++ "-", ++ "-", ++ "-", ++ "plld_per", ++}; ++ + #define REGISTER_PER_CLK(...) REGISTER_CLK( \ + .num_mux_parents = ARRAY_SIZE(bcm2835_clock_per_parents), \ + .parents = bcm2835_clock_per_parents, \ +@@ -2051,6 +2061,7 @@ static const struct bcm2835_clk_desc clk_desc_array[] = { + .int_bits = 12, + .frac_bits = 12, + .is_mash_clock = true, ++ .parents = bcm2835_pcm_per_parents, + .tcnt_mux = 23), + [BCM2835_CLOCK_PWM] = REGISTER_PER_CLK( + .name = "pwm", + +From 16855874c6dec40f5206a18e26b277e02e49684b Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Mon, 22 May 2017 13:56:41 +0100 +Subject: [PATCH 161/163] 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. + +Introduce a new metric of clock accuracy to penalise clocks with a good +average but worse jitter compared to clocks with an average which is no +better but with lower jitter. The metric is the ideal rate minus the +worse deviation from that ideal using the nearest integer divisors. + +Use this metric for parent selection for clocks requiring low jitter +(currently just PCM). + +Signed-off-by: Phil Elwell +--- + drivers/clk/bcm/clk-bcm2835.c | 39 ++++++++++++++++++++++++++++++++++----- + 1 file changed, 34 insertions(+), 5 deletions(-) + +diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c +index c24b4defb2b046e4ecdc109befc2b22497060647..db3ba74acf78f4dfec0d2206b58bc7c3a09f72fe 100644 +--- a/drivers/clk/bcm/clk-bcm2835.c ++++ b/drivers/clk/bcm/clk-bcm2835.c +@@ -534,6 +534,7 @@ struct bcm2835_clock_data { + + bool is_vpu_clock; + bool is_mash_clock; ++ bool low_jitter; + + u32 tcnt_mux; + }; +@@ -1154,7 +1155,8 @@ static unsigned long bcm2835_clock_choose_div_and_prate(struct clk_hw *hw, + int parent_idx, + unsigned long rate, + u32 *div, +- unsigned long *prate) ++ unsigned long *prate, ++ unsigned long *avgrate) + { + struct bcm2835_clock *clock = bcm2835_clock_from_hw(hw); + struct bcm2835_cprman *cprman = clock->cprman; +@@ -1166,11 +1168,33 @@ static unsigned long bcm2835_clock_choose_div_and_prate(struct clk_hw *hw, + parent = clk_hw_get_parent_by_index(hw, parent_idx); + + if (!(BIT(parent_idx) & data->set_rate_parent)) { ++ unsigned long tmp_rate; ++ + *prate = clk_hw_get_rate(parent); + *div = bcm2835_clock_choose_div(hw, rate, *prate, true); + +- return bcm2835_clock_rate_from_divisor(clock, *prate, +- *div); ++ tmp_rate = bcm2835_clock_rate_from_divisor(clock, *prate, *div); ++ *avgrate = tmp_rate; ++ ++ if (data->low_jitter && (*div & CM_DIV_FRAC_MASK)) { ++ unsigned long high, low; ++ u32 idiv = *div & ~CM_DIV_FRAC_MASK; ++ ++ high = bcm2835_clock_rate_from_divisor(clock, *prate, ++ idiv); ++ idiv += CM_DIV_FRAC_MASK + 1; ++ low = bcm2835_clock_rate_from_divisor(clock, *prate, ++ idiv); ++ ++ /* Return a value which is the maximum deviation ++ * below the ideal rate, for use as a metric. ++ */ ++ if ((tmp_rate - low) < (high - tmp_rate)) ++ tmp_rate = low; ++ else ++ tmp_rate -= high - tmp_rate; ++ } ++ return tmp_rate; + } + + if (data->frac_bits) +@@ -1197,6 +1221,7 @@ static unsigned long bcm2835_clock_choose_div_and_prate(struct clk_hw *hw, + + *div = curdiv << CM_DIV_FRAC_BITS; + *prate = curdiv * best_rate; ++ *avgrate = best_rate; + + return best_rate; + } +@@ -1208,6 +1233,7 @@ static int bcm2835_clock_determine_rate(struct clk_hw *hw, + bool current_parent_is_pllc; + unsigned long rate, best_rate = 0; + unsigned long prate, best_prate = 0; ++ unsigned long avgrate, best_avgrate = 0; + size_t i; + u32 div; + +@@ -1232,11 +1258,13 @@ static int bcm2835_clock_determine_rate(struct clk_hw *hw, + continue; + + rate = bcm2835_clock_choose_div_and_prate(hw, i, req->rate, +- &div, &prate); ++ &div, &prate, ++ &avgrate); + if (rate > best_rate && rate <= req->rate) { + best_parent = parent; + best_prate = prate; + best_rate = rate; ++ best_avgrate = avgrate; + } + } + +@@ -1246,7 +1274,7 @@ static int bcm2835_clock_determine_rate(struct clk_hw *hw, + req->best_parent_hw = best_parent; + req->best_parent_rate = best_prate; + +- req->rate = best_rate; ++ req->rate = best_avgrate; + + return 0; + } +@@ -2061,6 +2089,7 @@ static const struct bcm2835_clk_desc clk_desc_array[] = { + .int_bits = 12, + .frac_bits = 12, + .is_mash_clock = true, ++ .low_jitter = true, + .parents = bcm2835_pcm_per_parents, + .tcnt_mux = 23), + [BCM2835_CLOCK_PWM] = REGISTER_PER_CLK( + +From ce45a42e4983ec5f58adbf6e130acb3faea2be82 Mon Sep 17 00:00:00 2001 +From: Bilal Amarni +Date: Wed, 24 May 2017 10:52:50 +0200 +Subject: [PATCH 162/163] [ARM64] enable drivers for GPIO expander and vcio + +--- + arch/arm64/configs/bcmrpi3_defconfig | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/arch/arm64/configs/bcmrpi3_defconfig b/arch/arm64/configs/bcmrpi3_defconfig +index 4d85c231c5ea0244e1b05fb4a5e3c8fd3e651ddf..9dcb58a519d041fadae99c81a7bda621b2a49f12 100644 +--- a/arch/arm64/configs/bcmrpi3_defconfig ++++ b/arch/arm64/configs/bcmrpi3_defconfig +@@ -575,6 +575,8 @@ CONFIG_SERIO_RAW=m + CONFIG_GAMEPORT=m + CONFIG_GAMEPORT_NS558=m + CONFIG_GAMEPORT_L4=m ++CONFIG_BRCM_CHAR_DRIVERS=y ++CONFIG_BCM_VCIO=y + # CONFIG_BCM2835_DEVGPIOMEM is not set + # CONFIG_BCM2835_SMI_DEV is not set + # CONFIG_LEGACY_PTYS is not set +@@ -609,6 +611,7 @@ CONFIG_PPS=m + CONFIG_PPS_CLIENT_LDISC=m + CONFIG_PPS_CLIENT_GPIO=m + CONFIG_GPIO_SYSFS=y ++CONFIG_GPIO_BCM_EXP=y + CONFIG_GPIO_BCM_VIRT=y + CONFIG_GPIO_ARIZONA=m + CONFIG_GPIO_STMPE=y + +From 0c0889a7536c56c2967b5de76fcc8bf5b254f9c3 Mon Sep 17 00:00:00 2001 +From: P33M +Date: Thu, 25 May 2017 16:04:53 +0100 +Subject: [PATCH 163/163] dwc_otg: make periodic scheduling behave properly for + FS buses + +If the root port is in full-speed mode, transfer times at 12mbit/s +would be calculated but matched against high-speed quotas. + +Reinitialise hcd->frame_usecs[i] on each port enable event so that +full-speed bandwidth can be tracked sensibly. + +Also, don't bother using the FIQ for transfers when in full-speed +mode - at the slower bus speed, interrupt frequency is reduced by +an order of magnitude. + +Related issue: https://github.com/raspberrypi/linux/issues/2020 +--- + drivers/usb/host/dwc_otg/dwc_otg_hcd.c | 15 ++++++++++----- + drivers/usb/host/dwc_otg/dwc_otg_hcd.h | 7 +++++-- + drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c | 4 ++++ + drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c | 19 ++++++++++++------- + 4 files changed, 31 insertions(+), 14 deletions(-) + +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c +index a2dc6337836b2719f4c954edeeb2a71301931b04..38bf5fc792d32352f9e208e0e90f968599b9bc31 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c +@@ -926,8 +926,6 @@ static void dwc_otg_hcd_free(dwc_otg_hcd_t * dwc_otg_hcd) + DWC_FREE(dwc_otg_hcd); + } + +-int init_hcd_usecs(dwc_otg_hcd_t *_hcd); +- + int dwc_otg_hcd_init(dwc_otg_hcd_t * hcd, dwc_otg_core_if_t * core_if) + { + struct device *dev = dwc_otg_hcd_to_dev(hcd); +@@ -1429,6 +1427,7 @@ static void assign_and_init_hc(dwc_otg_hcd_t * hcd, dwc_otg_qh_t * qh) + + /** + * fiq_fsm_transaction_suitable() - Test a QH for compatibility with the FIQ ++ * @hcd: Pointer to the dwc_otg_hcd struct + * @qh: pointer to the endpoint's queue head + * + * Transaction start/end control flow is grafted onto the existing dwc_otg +@@ -1438,8 +1437,14 @@ static void assign_and_init_hc(dwc_otg_hcd_t * hcd, dwc_otg_qh_t * qh) + * Returns: 0 for unsuitable, 1 implies the FIQ can be enabled for this transaction. + */ + +-int fiq_fsm_transaction_suitable(dwc_otg_qh_t *qh) ++int fiq_fsm_transaction_suitable(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh) + { ++ /* There is little benefit in using the FIQ to perform transfers if ++ * the root port is not in high-speed mode. ++ */ ++ if (hcd->flags.b.port_speed != DWC_HPRT0_PRTSPD_HIGH_SPEED) ++ return 0; ++ + if (qh->do_split) { + switch (qh->ep_type) { + case UE_CONTROL: +@@ -2218,7 +2223,7 @@ static void process_periodic_channels(dwc_otg_hcd_t * hcd) + continue; + } + +- if (fiq_fsm_enable && fiq_fsm_transaction_suitable(qh)) { ++ if (fiq_fsm_enable && fiq_fsm_transaction_suitable(hcd, qh)) { + if (qh->do_split) + fiq_fsm_queue_split_transaction(hcd, qh); + else +@@ -2355,7 +2360,7 @@ static void process_non_periodic_channels(dwc_otg_hcd_t * hcd) + qh = DWC_LIST_ENTRY(hcd->non_periodic_qh_ptr, dwc_otg_qh_t, + qh_list_entry); + +- if(fiq_fsm_enable && fiq_fsm_transaction_suitable(qh)) { ++ if(fiq_fsm_enable && fiq_fsm_transaction_suitable(hcd, qh)) { + fiq_fsm_queue_split_transaction(hcd, qh); + } else { + status = queue_transaction(hcd, qh->channel, +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.h b/drivers/usb/host/dwc_otg/dwc_otg_hcd.h +index 7f7e9eaffd6a3c3d898855562fbec11289f77f53..5ed8dccf03959a610849aa6c8946ca745dbae207 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.h ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.h +@@ -410,7 +410,8 @@ struct dwc_otg_hcd { + unsigned port_suspend_change:1; + unsigned port_over_current_change:1; + unsigned port_l1_change:1; +- unsigned reserved:26; ++ unsigned port_speed:2; ++ unsigned reserved:24; + } b; + } flags; + +@@ -629,7 +630,7 @@ int dwc_otg_hcd_allocate_port(dwc_otg_hcd_t * hcd, dwc_otg_qh_t *qh); + void dwc_otg_hcd_release_port(dwc_otg_hcd_t * dwc_otg_hcd, dwc_otg_qh_t *qh); + + extern int fiq_fsm_queue_transaction(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh); +-extern int fiq_fsm_transaction_suitable(dwc_otg_qh_t *qh); ++extern int fiq_fsm_transaction_suitable(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh); + extern void dwc_otg_cleanup_fiq_channel(dwc_otg_hcd_t *hcd, uint32_t num); + + /** @} */ +@@ -823,6 +824,8 @@ static inline uint16_t dwc_micro_frame_num(uint16_t frame) + return frame & 0x7; + } + ++extern void init_hcd_usecs(dwc_otg_hcd_t *_hcd); ++ + void dwc_otg_hcd_save_data_toggle(dwc_hc_t * hc, + dwc_otg_hc_regs_t * hc_regs, + dwc_otg_qtd_t * qtd); +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c +index a4355afc77b68718fdaba6c5d4be257dadc75036..c8f52709a7d24974c0a38dcf1708f91073e96b0e 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c +@@ -515,6 +515,10 @@ int32_t dwc_otg_hcd_handle_port_intr(dwc_otg_hcd_t * dwc_otg_hcd) + dwc_otg_host_if_t *host_if = + dwc_otg_hcd->core_if->host_if; + ++ dwc_otg_hcd->flags.b.port_speed = hprt0.b.prtspd; ++ if (microframe_schedule) ++ init_hcd_usecs(dwc_otg_hcd); ++ + /* Every time when port enables calculate + * HFIR.FrInterval + */ +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c +index 85a6d431ca54b47dc10573aa72d1ad69d06f2e36..4b1dd9de99e9e08b2e006fb5f8a7ef92f20c2553 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c +@@ -408,13 +408,17 @@ const unsigned short max_uframe_usecs[]={ 100, 100, 100, 100, 100, 100, 30, 0 }; + /* + * called from dwc_otg_hcd.c:dwc_otg_hcd_init + */ +-int init_hcd_usecs(dwc_otg_hcd_t *_hcd) ++void init_hcd_usecs(dwc_otg_hcd_t *_hcd) + { + int i; +- for (i=0; i<8; i++) { +- _hcd->frame_usecs[i] = max_uframe_usecs[i]; ++ if (_hcd->flags.b.port_speed == DWC_HPRT0_PRTSPD_FULL_SPEED) { ++ _hcd->frame_usecs[0] = 900; ++ for (i = 1; i < 8; i++) ++ _hcd->frame_usecs[i] = 0; ++ } else { ++ for (i = 0; i < 8; i++) ++ _hcd->frame_usecs[i] = max_uframe_usecs[i]; + } +- return 0; + } + + static int find_single_uframe(dwc_otg_hcd_t * _hcd, dwc_otg_qh_t * _qh) +@@ -541,8 +545,9 @@ static int find_uframe(dwc_otg_hcd_t * _hcd, dwc_otg_qh_t * _qh) + int ret; + ret = -1; + +- if (_qh->speed == USB_SPEED_HIGH) { +- /* if this is a hs transaction we need a full frame */ ++ if (_qh->speed == USB_SPEED_HIGH || ++ _hcd->flags.b.port_speed == DWC_HPRT0_PRTSPD_FULL_SPEED) { ++ /* if this is a hs transaction we need a full frame - or account for FS usecs */ + ret = find_single_uframe(_hcd, _qh); + } else { + /* if this is a fs transaction we may need a sequence of frames */ +@@ -627,7 +632,7 @@ static int schedule_periodic(dwc_otg_hcd_t * hcd, dwc_otg_qh_t * qh) + if (status) { + DWC_INFO("%s: Insufficient periodic bandwidth for " + "periodic transfer.\n", __func__); +- return status; ++ return -DWC_E_NO_SPACE; + } + status = check_max_xfer_size(hcd, qh); + if (status) {