diff --git a/projects/RPi2/patches/linux/linux-01-RPi_support.patch b/projects/RPi2/patches/linux/linux-01-RPi_support.patch index 9b2c9d9f73..f7a8bf3072 100644 --- a/projects/RPi2/patches/linux/linux-01-RPi_support.patch +++ b/projects/RPi2/patches/linux/linux-01-RPi_support.patch @@ -1,7 +1,7 @@ From 0222939a3735e3ad819ce793bbcaa3f4759d6543 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 12 May 2013 12:24:19 +0100 -Subject: [PATCH 001/109] Main bcm2708 linux port +Subject: [PATCH 001/116] Main bcm2708 linux port Signed-off-by: popcornmix --- @@ -5111,7 +5111,7 @@ index 9f32270..17ee61b 100644 From db89dca23e5f1de2895f0f07d4fd14c00ab72e6e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 Oct 2014 18:50:05 +0100 -Subject: [PATCH 002/109] Add bcm2708_gpio driver +Subject: [PATCH 002/116] Add bcm2708_gpio driver Signed-off-by: popcornmix @@ -5718,7 +5718,7 @@ index 0000000..fb69624 From 138919e0b3e213effd883f4a80dd8b2cc4f55f4a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 7 May 2013 22:20:24 +0100 -Subject: [PATCH 003/109] Add quick config. +Subject: [PATCH 003/116] Add quick config. This is designed for quick compiling when developing. No modules are needed and it includes all Pi specific drivers @@ -5934,7 +5934,7 @@ index 0000000..e5efe75 From a2dc1f5efb2a618b0970218f3e96039776f3eaaf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:46:17 +0100 -Subject: [PATCH 004/109] Add dwc_otg driver +Subject: [PATCH 004/116] Add dwc_otg driver Signed-off-by: popcornmix @@ -62990,7 +62990,7 @@ index 0000000..cdc9963 From 426f9dbea63f0d6a35e05e80fd188b89dca321cd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:54:32 +0100 -Subject: [PATCH 005/109] bcm2708 watchdog driver +Subject: [PATCH 005/116] bcm2708 watchdog driver Signed-off-by: popcornmix --- @@ -63418,10 +63418,11 @@ index 0000000..8a27d68 +MODULE_ALIAS_MISCDEV(TEMP_MINOR); +MODULE_LICENSE("GPL"); + From 541af491f8c24af061d3e62fdc7da4fad34e5003 Mon Sep 17 00:00:00 2001 From: Harm Hanemaaijer Date: Thu, 20 Jun 2013 20:21:39 +0200 -Subject: [PATCH 008/109] Speed up console framebuffer imageblit function +Subject: [PATCH 008/116] 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 @@ -63633,7 +63634,7 @@ index a2bb276..436494f 100644 From 21cf00e8ae1b424b05c9e218f28c509f296ac949 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka Date: Mon, 17 Jun 2013 13:32:11 +0300 -Subject: [PATCH 009/109] fbdev: add FBIOCOPYAREA ioctl +Subject: [PATCH 009/116] fbdev: add FBIOCOPYAREA ioctl Based on the patch authored by Ali Gholami Rudi at https://lkml.org/lkml/2009/7/13/153 @@ -63729,7 +63730,7 @@ index fb795c3..fa72af0 100644 From 57a4b2b0d8e5849d4b4cff404ac6a90bcdab0f37 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:55:09 +0100 -Subject: [PATCH 010/109] bcm2708 framebuffer driver +Subject: [PATCH 010/116] bcm2708 framebuffer driver Signed-off-by: popcornmix @@ -67175,7 +67176,7 @@ index 3c14e43..7626beb6a 100644 From 8178b4e7f56a040774a673f21b6d860a83d86d1d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 2 Jul 2013 23:42:01 +0100 -Subject: [PATCH 011/109] bcm2708 vchiq driver +Subject: [PATCH 011/116] bcm2708 vchiq driver Signed-off-by: popcornmix @@ -80127,7 +80128,7 @@ index 0000000..b6bfa21 From 48c4a760bace73c6c2e10ace250faf0b1c2cf603 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 12 May 2014 15:12:02 +0100 -Subject: [PATCH 012/109] vchiq: Avoid high load when blocked and unkillable +Subject: [PATCH 012/116] vchiq: Avoid high load when blocked and unkillable vchiq: Include SIGSTOP and SIGCONT in list of signals not-masked by vchiq to allow gdb to work --- @@ -80292,7 +80293,7 @@ index c2eefef..05e7979 100644 From d36beb1f111d0621d672edfc864c2ac018a05053 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:31:47 +0100 -Subject: [PATCH 013/109] cma: Add vc_cma driver to enable use of CMA +Subject: [PATCH 013/116] cma: Add vc_cma driver to enable use of CMA Signed-off-by: popcornmix --- @@ -81582,7 +81583,7 @@ index 0000000..5325832 From 9a5da41b08c71c403f7a50e3f1790bc7ce061c5d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 26 Mar 2012 22:15:50 +0100 -Subject: [PATCH 014/109] bcm2708: alsa sound driver +Subject: [PATCH 014/116] bcm2708: alsa sound driver Signed-off-by: popcornmix @@ -84348,7 +84349,7 @@ index 0000000..af3e6eb From e191bd0eb4395d58ca38628cac3a9832ac2a6644 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:51:55 +0100 -Subject: [PATCH 015/109] Add hwrng (hardware random number generator) driver +Subject: [PATCH 015/116] Add hwrng (hardware random number generator) driver --- drivers/char/hw_random/Kconfig | 11 ++++ @@ -84518,7 +84519,7 @@ index 0000000..340f004 From c8dfc6610d8ec3c1b55b9988aa93749420ef5ae5 Mon Sep 17 00:00:00 2001 From: Aron Szabo Date: Sat, 16 Jun 2012 12:15:55 +0200 -Subject: [PATCH 016/109] lirc: added support for RaspberryPi GPIO +Subject: [PATCH 016/116] 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 @@ -85253,7 +85254,7 @@ index 0000000..c688364 From 95d8a71baa57259706f2211e2831910c5e8732df Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:49:20 +0100 -Subject: [PATCH 017/109] Add cpufreq driver +Subject: [PATCH 017/116] Add cpufreq driver --- arch/arm/Kconfig | 1 + @@ -85540,7 +85541,7 @@ index 0000000..447ca09 From 59ae3e5f2544dacbdea86d9f005fe7f5598cdd30 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 19:24:24 +0000 -Subject: [PATCH 018/109] Added hwmon/thermal driver for reporting core +Subject: [PATCH 018/116] Added hwmon/thermal driver for reporting core temperature. Thanks Dorian --- @@ -86065,7 +86066,7 @@ index 0000000..85fceb5 From 5a2d7d0a26de7791c61462bd36cb190c8ac0857d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 17:26:38 +0000 -Subject: [PATCH 019/109] Allow mac address to be set in smsc95xx +Subject: [PATCH 019/116] Allow mac address to be set in smsc95xx Signed-off-by: popcornmix --- @@ -86159,7 +86160,7 @@ index 26423ad..e29a323 100644 From 196215044abd081236a1acbecc02f007cb62b99c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 4 Nov 2013 18:56:10 +0000 -Subject: [PATCH 020/109] Add Chris Boot's i2c and spi drivers. +Subject: [PATCH 020/116] Add Chris Boot's i2c and spi drivers. i2c-bcm2708: fixed baudrate @@ -87509,7 +87510,7 @@ index 0000000..b04a57d From e9ce3b546b6fd5fb38952ba1437d479c6847ef5f Mon Sep 17 00:00:00 2001 From: cbeytas Date: Mon, 24 Jun 2013 00:05:40 -0400 -Subject: [PATCH 021/109] Perform I2C combined transactions when possible +Subject: [PATCH 021/116] Perform I2C combined transactions when possible Perform I2C combined transactions whenever possible, within the restrictions of the Broadcomm Serial Controller. @@ -87584,7 +87585,7 @@ index 09203c0..7d385a3 100644 From 3eeb43c7ff0ec0308e78481ef4c9612ee90c2e77 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 May 2013 11:46:50 +0100 -Subject: [PATCH 022/109] enabling the realtime clock 1-wire chip DS1307 and +Subject: [PATCH 022/116] 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 @@ -87856,10 +87857,11 @@ index 2820924..fd0550f 100644 } } + From b356d2a5324517f468c05664c36ae2d3ad51814e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 12 Apr 2013 23:58:47 +0100 -Subject: [PATCH 024/109] config: add missing options from 3.6.y kernel +Subject: [PATCH 024/116] config: add missing options from 3.6.y kernel --- arch/arm/configs/bcmrpi_defconfig | 692 ++++++++++++++++++++++++++++++++++++-- @@ -88849,7 +88851,7 @@ index 6d2eae1..6b39872 100644 From 3c7bee5134f4d492af3b6ba74ac91a76241979cf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 18 Dec 2013 22:16:19 +0000 -Subject: [PATCH 025/109] config: Enable CONFIG_MEMCG, but leave it disabled +Subject: [PATCH 025/116] config: Enable CONFIG_MEMCG, but leave it disabled (due to memory cost). Enable with cgroup_enable=memory. --- @@ -88920,7 +88922,7 @@ index 2f6893c..8778eba 100644 From 675b0e93160dcb81e3d36ea3548c6d9f289928c9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:46:42 +0100 -Subject: [PATCH 026/109] Add FIQ patch to dwc_otg driver. Enable with +Subject: [PATCH 026/116] Add FIQ patch to dwc_otg driver. Enable with dwc_otg.fiq_fix_enable=1. Should give about 10% more ARM performance. Thanks to Gordon and Costas @@ -92216,7 +92218,7 @@ index 1b1f83c..c8590b5 100644 From 8c9d2b02c39e52c89c27d306fa1a2781fd48b014 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 19 Mar 2014 12:58:23 +0000 -Subject: [PATCH 027/109] dwc_otg: fiq_fsm: Base commit for driver rewrite +Subject: [PATCH 027/116] dwc_otg: fiq_fsm: Base commit for driver rewrite This commit removes the previous FIQ fixes entirely and adds fiq_fsm. @@ -97114,7 +97116,7 @@ index 5d310df..4b32941 100644 From c6121acf96ef39f9c95b15760846f58b45027ee9 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 30 Jan 2013 12:45:18 +0000 -Subject: [PATCH 028/109] bcm2835: add v4l2 camera device +Subject: [PATCH 028/116] bcm2835: add v4l2 camera device - Supports raw YUV capture, preview, JPEG and H264. - Uses videobuf2 for data transfer, using dma_buf. @@ -103099,7 +103101,7 @@ index 0000000..9d1d11e From 876eadd8476087d347e6114781d2897bb8a63ee9 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 9 Dec 2013 10:58:01 +0000 -Subject: [PATCH 029/109] V4L2: Fixes from 6by9 +Subject: [PATCH 029/116] V4L2: Fixes from 6by9 V4L2: Fix EV values. Add manual shutter speed control @@ -105514,7 +105516,7 @@ index a06fb44..76f249e 100644 From 1216981dc3569162148f1564fc923ee684e38f0a Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:22:53 +0100 -Subject: [PATCH 030/109] dmaengine: Add support for BCM2708 +Subject: [PATCH 030/116] dmaengine: Add support for BCM2708 Add support for DMA controller of BCM2708 as used in the Raspberry Pi. Currently it only supports cyclic DMA. @@ -106656,7 +106658,7 @@ index 0000000..10463db From 9958213bdc57c1c3fd8b22995b1f7a2395ba2583 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:33:38 +0100 -Subject: [PATCH 031/109] ASoC: Add support for BCM2708 +Subject: [PATCH 031/116] ASoC: Add support for BCM2708 This driver adds support for digital audio (I2S) for the BCM2708 SoC that is used by the @@ -107791,7 +107793,7 @@ index 0000000..6fdcbc1 From fb6b211a34ec8a53dc8802462e801cdb431fc083 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:59:51 +0100 -Subject: [PATCH 032/109] ASoC: Add support for PCM5102A codec +Subject: [PATCH 032/116] ASoC: Add support for PCM5102A codec Some definitions to support the PCM5102A codec by Texas Instruments. @@ -107919,7 +107921,7 @@ index 0000000..126f1e9 From 9f755aa80ac220c641d5ed21166467ddd7dfac64 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:04:54 +0100 -Subject: [PATCH 033/109] BCM2708: Add I2S support to board file +Subject: [PATCH 033/116] BCM2708: Add I2S support to board file Adds the required initializations for I2S to the board file of mach-bcm2708. @@ -107977,7 +107979,7 @@ index a740344..dca28ad 100644 From f20bd5bbe4efd70685acd16e51bd4fd414f374fa Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:19:08 +0100 -Subject: [PATCH 034/109] ASoC: Add support for HifiBerry DAC +Subject: [PATCH 034/116] ASoC: Add support for HifiBerry DAC This adds a machine driver for the HifiBerry DAC. It is a sound card that can @@ -108129,7 +108131,7 @@ index 0000000..4b70b45 From 29f894439b2d2fb15351dfa6486c7d8cba374af3 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:21:34 +0100 -Subject: [PATCH 035/109] BCM2708: Add HifiBerry DAC to board file +Subject: [PATCH 035/116] BCM2708: Add HifiBerry DAC to board file This adds the initalization of the HifiBerry DAC to the mach-bcm2708 board file. @@ -108180,7 +108182,7 @@ index dca28ad..50d4991 100644 From ca637d75dfa6916b8c5d2d1dbd4114bfeacc086a Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Mon, 2 Dec 2013 20:28:22 +0100 -Subject: [PATCH 036/109] BCM2708: Add I2S and DMA support to default config +Subject: [PATCH 036/116] BCM2708: Add I2S and DMA support to default config This commit adds several modules that are needed for I2S support for the Raspberry Pi to the defconfig. @@ -108218,7 +108220,7 @@ index 63a6546..9a0e922 100644 From d4cda2a2b50cc69386e6f2292fc042baec93c418 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 6 Dec 2013 20:50:28 +0100 -Subject: [PATCH 037/109] ASoC: BCM2708: Add support for RPi-DAC +Subject: [PATCH 037/116] ASoC: BCM2708: Add support for RPi-DAC This adds a machine driver for the RPi-DAC. @@ -108529,7 +108531,7 @@ index 0000000..b4eaa44 From 72230403d9af4ca82a9075a9d9641a6fbad5ae8a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:41:23 +0100 -Subject: [PATCH 038/109] ASoC: wm8804: Implement MCLK configuration options, +Subject: [PATCH 038/116] 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 @@ -108572,7 +108574,7 @@ index 1315f76..3d86ba8 100644 From 0bb2e4cadda70cee999665f14243faaf2c19150a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:42:08 +0100 -Subject: [PATCH 039/109] ASoC: BCM:Add support for HiFiBerry Digi. Driver is +Subject: [PATCH 039/116] ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patched WM8804 driver. Signed-off-by: Daniel Matuschek @@ -108778,7 +108780,7 @@ index 0000000..e4f769d From 2d6d6cd0ba7c029da824b0ca5c17eb17edad10ce Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:26:08 +0100 -Subject: [PATCH 040/109] BCM2708: Added support for HiFiBerry Digi board Board +Subject: [PATCH 040/116] BCM2708: Added support for HiFiBerry Digi board Board initalization by I2C Signed-off-by: Daniel Matuschek @@ -108828,7 +108830,7 @@ index 100c223..a57cb85 100644 From 501ead58b3fb28519674af7f7ca770f40fbdea49 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:27:28 +0100 -Subject: [PATCH 041/109] BCM2708: Added HiFiBerry Digi configuration option It +Subject: [PATCH 041/116] BCM2708: Added HiFiBerry Digi configuration option It will be compiled as a module by default. This also includes the WM8804 driver. @@ -108853,7 +108855,7 @@ index 3f7a237..cbd53b1 100644 From 819ab2ffbc41d5d4c6cc27ee6bb334fb7dd777ae Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:36:35 +0100 -Subject: [PATCH 042/109] ASoC: wm8804: Set idle_bias_off to false Idle bias +Subject: [PATCH 042/116] ASoC: wm8804: Set idle_bias_off to false Idle bias has been change to remove warning on driver startup Signed-off-by: Daniel Matuschek @@ -108878,7 +108880,7 @@ index 3d86ba8..34f7f76 100644 From c79ade9511f2b90a0cf84d152b7ea8e2afd6293e Mon Sep 17 00:00:00 2001 From: Gordon Garrity Date: Sat, 8 Mar 2014 16:56:57 +0000 -Subject: [PATCH 043/109] Add IQaudIO Sound Card support for Raspberry Pi +Subject: [PATCH 043/116] Add IQaudIO Sound Card support for Raspberry Pi --- arch/arm/configs/bcmrpi_defconfig | 1 + @@ -109091,7 +109093,7 @@ index 0000000..8d0e2ae From c359a5ee3bd738961427186256be97188a87bfef Mon Sep 17 00:00:00 2001 From: Howard Mitchell Date: Fri, 28 Mar 2014 16:40:31 +0000 -Subject: [PATCH 044/109] pcm512x: Use a range macro for Volume and rename to +Subject: [PATCH 044/116] pcm512x: Use a range macro for Volume and rename to PCM. This allows limiting the output gain to avoid clipping in the @@ -109119,7 +109121,7 @@ index 30c673c..2054a69 100644 From d985ba5c1251ebf4e0d53e9e49808e56f0cc8742 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 18 Jun 2014 13:42:01 +0100 -Subject: [PATCH 045/109] vmstat: Workaround for issue where dirty page count +Subject: [PATCH 045/116] vmstat: Workaround for issue where dirty page count goes negative See: @@ -109149,7 +109151,7 @@ index 82e7db7..f87d16d 100644 From 562475ed074e8496d440350422bf2537820e4b2e Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 20 Jun 2014 16:03:12 +0100 -Subject: [PATCH 046/109] dwc_otg: Fix various issues with root port and +Subject: [PATCH 046/116] dwc_otg: Fix various issues with root port and transaction errors Process the host port interrupts correctly (and don't trample them). @@ -109222,7 +109224,7 @@ index 4195ff2..a5566bc 100644 From e4364915e5e486400186b16743f27e8e683bb122 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 20 Jun 2014 17:23:20 +0100 -Subject: [PATCH 047/109] fiq_fsm: Implement hack for Split Interrupt +Subject: [PATCH 047/116] fiq_fsm: Implement hack for Split Interrupt transactions Hubs aren't too picky about which endpoint we send Control type split @@ -109311,7 +109313,7 @@ index 130096b..68d4f3b 100644 From c879a654179c1997fb31343ffe193cba4ce8445e Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 6 Jul 2014 12:07:25 +0200 -Subject: [PATCH 048/109] spi-bcm2708: Prepare for Common Clock Framework +Subject: [PATCH 048/116] spi-bcm2708: Prepare for Common Clock Framework migration As part of migrating to use the Common Clock Framework, replace clk_enable() @@ -109359,7 +109361,7 @@ index b04a57d..349d21f 100644 From 7a09a3dce774a0a5be04e106d6cab4c45a4b8225 Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 6 Jul 2014 12:09:30 +0200 -Subject: [PATCH 049/109] BCM2708: Migrate to the Common Clock Framework +Subject: [PATCH 049/116] BCM2708: Migrate to the Common Clock Framework As part of moving towards using Device Tree, the Common Clock Framework has to be used instead of the BCM2708 clock implementation. @@ -109632,7 +109634,7 @@ index 5f9d725..0000000 From c2eb05044f3740a2183b5b39203e970e760a07c6 Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:46:08 +0200 -Subject: [PATCH 050/109] BCM2708: Add core Device Tree support +Subject: [PATCH 050/116] BCM2708: Add core Device Tree support Add the bare minimum needed to boot BCM2708 from a Device Tree. @@ -109800,7 +109802,7 @@ index ef12cb8..747e27a 100644 From fa27429ce9578e756197cf04b9835603f57dfb8f Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:47:48 +0200 -Subject: [PATCH 051/109] BCM2708: armctrl: Add IRQ Device Tree support +Subject: [PATCH 051/116] BCM2708: armctrl: Add IRQ Device Tree support Add Device Tree IRQ support for BCM2708. Usage is the same as for irq-bcm2835. @@ -109973,7 +109975,7 @@ index 96fa9b9..74bacb3 100644 From 276be851fc57b1badfef77e9bd067fd51875e462 Mon Sep 17 00:00:00 2001 From: notro Date: Thu, 10 Jul 2014 13:59:47 +0200 -Subject: [PATCH 052/109] BCM2708: use pinctrl-bcm2835 +Subject: [PATCH 052/116] BCM2708: use pinctrl-bcm2835 Use pinctrl-bcm2835 instead of the pinctrl-bcm2708 and bcm2708_gpio combination. @@ -110053,7 +110055,7 @@ index 9aa8a3f..9d1149e 100644 From 921c71ddf380c8fc028d90b8807ef4ace70086e6 Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 27 Jul 2014 20:12:58 +0200 -Subject: [PATCH 053/109] spi: bcm2708: add device tree support +Subject: [PATCH 053/116] spi: bcm2708: add device tree support Add DT support to driver and add to .dtsi file. Setup pins and spidev in .dts file. @@ -110263,7 +110265,7 @@ index 349d21f..041b5e2 100644 From e3bc961a920dfffd560efdc592d3c3a28b92630d Mon Sep 17 00:00:00 2001 From: notro Date: Tue, 29 Jul 2014 11:04:49 +0200 -Subject: [PATCH 054/109] i2c: bcm2708: add device tree support +Subject: [PATCH 054/116] i2c: bcm2708: add device tree support Add DT support to driver and add to .dtsi file. Setup pins in .dts file. @@ -110490,7 +110492,7 @@ index 7d385a3..526129b 100644 From dd70f130500963aafafcee3d5dc1564c51363674 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 14 Jul 2014 22:02:09 +0100 -Subject: [PATCH 055/109] hid: Reduce default mouse polling interval to 60Hz +Subject: [PATCH 055/116] hid: Reduce default mouse polling interval to 60Hz Reduces overhead when using X --- @@ -110529,7 +110531,7 @@ index bfbe1be..a738b25 100644 From a87afb0647b5f16ab95189f1048c3e9098c59d04 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 24 Jul 2014 21:24:03 +0100 -Subject: [PATCH 056/109] usb: core: make overcurrent messages more prominent +Subject: [PATCH 056/116] usb: core: make overcurrent messages more prominent Hub overcurrent messages are more serious than "debug". Increase loglevel. --- @@ -110553,7 +110555,7 @@ index aeb50bb..21844a7 100644 From b3c65bc61773703cd8993ffb457f23a85c7487d0 Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 22 Jul 2014 15:41:04 +0100 -Subject: [PATCH 057/109] vcsm: VideoCore shared memory service for BCM2835 +Subject: [PATCH 057/116] vcsm: VideoCore shared memory service for BCM2835 Add experimental support for the VideoCore shared memory service. This allows user processes to allocate memory from VideoCore's @@ -114890,7 +114892,7 @@ index 0000000..da1c523 From 8d8dc6295c000c8c7b0e56cbb74b48eb4649ee3d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 7 Aug 2014 02:03:50 +0100 -Subject: [PATCH 058/109] Revert "ARM: dma: Use dma_pfn_offset for dma address +Subject: [PATCH 058/116] Revert "ARM: dma: Use dma_pfn_offset for dma address translation" This reverts commit 6ce0d20016925d031f1e24d64302e4c976d7cec6. @@ -114945,7 +114947,7 @@ index b52101d..f5572d9 100644 From 4c9c17fcc1f351cc06268e4902d0dee92fe1a68a Mon Sep 17 00:00:00 2001 From: gellert Date: Fri, 15 Aug 2014 16:35:06 +0100 -Subject: [PATCH 059/109] MMC: added alternative MMC driver +Subject: [PATCH 059/116] MMC: added alternative MMC driver --- arch/arm/configs/bcmrpi_defconfig | 2 + @@ -116651,7 +116653,7 @@ index 0000000..92febc3 From 8e777a27499279a8351836a80d4df838264dc0e3 Mon Sep 17 00:00:00 2001 From: P33M Date: Tue, 13 Jan 2015 17:12:18 +0000 -Subject: [PATCH 060/109] mmc: Disable CMD23 transfers on all cards +Subject: [PATCH 060/116] mmc: Disable CMD23 transfers on all cards Pending wire-level investigation of these types of transfers and associated errors on bcm2835-mmc, disable for now. Fallback of @@ -116680,7 +116682,7 @@ index dd1d1e0..f472082 100644 From a869a7389e5a734bbbc42c70c3950b2f49cc3591 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 10:06:56 +0200 -Subject: [PATCH 061/109] Added support for HiFiBerry DAC+ +Subject: [PATCH 061/116] 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. @@ -116907,7 +116909,7 @@ index 0000000..c63387b From 45fa955cf4e5d54a01c807c1a18cb0828bd45b9a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 11:09:58 +0200 -Subject: [PATCH 062/109] Added driver for HiFiBerry Amp amplifier add-on board +Subject: [PATCH 062/116] 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. @@ -117754,7 +117756,7 @@ index 0000000..8f019e0 From 861c08aec9f2f1c1a22b3d7d8ae19fec798f7832 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Oct 2014 11:47:53 +0100 -Subject: [PATCH 063/109] Improve __copy_to_user and __copy_from_user +Subject: [PATCH 063/116] Improve __copy_to_user and __copy_from_user performance Provide a __copy_from_user that uses memcpy. On BCM2708, use @@ -119281,7 +119283,7 @@ index 3e58d71..0622891 100644 From 118e894115980f246a4e092d51c15fa8fa17b242 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 1 Sep 2014 16:35:56 +0100 -Subject: [PATCH 064/109] bcm2708: Allow option card devices to be configured +Subject: [PATCH 064/116] bcm2708: Allow option card devices to be configured via DT If the kernel is built with Device Tree support, and if a DT blob @@ -119721,7 +119723,7 @@ index 03fa1cb..c816526 100644 From 2da679d67d7dd011f01649577c7bae50186f0363 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 12 Nov 2014 17:07:02 +0000 -Subject: [PATCH 065/109] Adding Device Tree support for some RPi audio cards +Subject: [PATCH 065/116] Adding Device Tree support for some RPi audio cards --- arch/arm/boot/dts/Makefile | 4 ++ @@ -119979,7 +119981,7 @@ index 0000000..5e7633a +}; diff --git a/arch/arm/boot/dts/hifiberry-dacplus-overlay.dts b/arch/arm/boot/dts/hifiberry-dacplus-overlay.dts new file mode 100644 -index 0000000..deb9c62 +index 0000000..deb9c625 --- /dev/null +++ b/arch/arm/boot/dts/hifiberry-dacplus-overlay.dts @@ -0,0 +1,39 @@ @@ -120351,7 +120353,7 @@ index 126f1e9..7c6598e 100644 From 5248d61fbed6a412104089d671ac2c864a76aa79 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 5 Dec 2014 17:26:26 +0000 -Subject: [PATCH 066/109] fdt: Add support for the CONFIG_CMDLINE_EXTEND option +Subject: [PATCH 066/116] fdt: Add support for the CONFIG_CMDLINE_EXTEND option --- drivers/of/fdt.c | 29 ++++++++++++++++++++++++----- @@ -120409,7 +120411,7 @@ index 5100742..d6d944c 100644 From e81caed711b76987fa7764e67896ac244c5b9974 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 25 Nov 2014 13:39:03 +0000 -Subject: [PATCH 067/109] config: Enable device tree +Subject: [PATCH 067/116] config: Enable device tree --- arch/arm/configs/bcmrpi_defconfig | 1 + @@ -120431,7 +120433,7 @@ index 8381041..c1621fa 100644 From 3b2f8e42a35ab1ca8c7702bc1a8c6b63aa3def82 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 16 Dec 2014 10:23:48 +0000 -Subject: [PATCH 068/109] DT: Add overrides to enable i2c0, i2c1, spi and i2s +Subject: [PATCH 068/116] DT: Add overrides to enable i2c0, i2c1, spi and i2s --- arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 10 ++++++++++ @@ -120478,7 +120480,7 @@ index d8c6d15..167b22b 100644 From 1e78b4625b77406af9cd50eef75ce67caf39a013 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 18 Dec 2014 16:48:32 +0000 -Subject: [PATCH 069/109] lirc-rpi: Add device tree support, and a suitable +Subject: [PATCH 069/116] lirc-rpi: Add device tree support, and a suitable overlay The overlay supports DT parameters that match the old module @@ -120775,7 +120777,7 @@ index c688364..cd66ca2 100644 From 31368425270f59c0cb73143bf8bbdbb4ba8f380c Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 6 Jan 2015 12:06:55 +0000 -Subject: [PATCH 070/109] Fix the activity LED in DT mode +Subject: [PATCH 070/116] Fix the activity LED in DT mode Add a "leds" node to the base DTBs, and a subnode for the activity LED. You can change the LED function like this: @@ -120910,7 +120912,7 @@ index 6b36128..1b56cb5 100644 From 16c5ca7134e6e1fe86d9127dc4d43005ffd50b27 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 15 Jan 2015 10:39:06 +0000 -Subject: [PATCH 071/109] Adding w1-gpio device tree overlays +Subject: [PATCH 071/116] Adding w1-gpio device tree overlays N.B. Requires firmware supporting multi-target overrides @@ -121023,7 +121025,7 @@ index 0000000..b3e97c2 From 62b86f21e94a0f4a01d825ec59cfab4cdb00642c Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Fri, 23 Jan 2015 16:41:17 +0100 -Subject: [PATCH 072/109] TAS5713: return error if initialisation fails +Subject: [PATCH 072/116] TAS5713: return error if initialisation fails Existing TAS5713 driver logs errors during initialisation, but does not return an error code. Therefore even if initialisation fails, the driver will still be @@ -121093,7 +121095,7 @@ index a24c1da..9b27138 100644 From 10df9d22f5af3349cf9cc3a7d2a793237b65d41a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 23 Jan 2015 14:48:55 +0000 -Subject: [PATCH 073/109] scripts/dtc: Update to upstream version with overlay +Subject: [PATCH 073/116] scripts/dtc: Update to upstream version with overlay patches --- @@ -126309,7 +126311,7 @@ index 54d4e904..d644002 100644 From 539a294591de138f45c9c2afd2a8e4477bc26e30 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 23 Jan 2015 15:18:03 +0000 -Subject: [PATCH 074/109] BCM2708_DT: Build the overlays as well +Subject: [PATCH 074/116] BCM2708_DT: Build the overlays as well --- arch/arm/boot/dts/Makefile | 13 +++++++++++++ @@ -126347,7 +126349,7 @@ index 76e5f96..54ee8c5 100644 From 4c4650200f97c0b51722931283ad0c9cb824a71f Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Sun, 25 Jan 2015 19:41:06 +0100 -Subject: [PATCH 075/109] Add device tree overlay for HiFiBerry Amp/Amp+ +Subject: [PATCH 075/116] Add device tree overlay for HiFiBerry Amp/Amp+ This patch add the missing device tree file for the HiFiBerry Amp and Amp+ boards. --- @@ -126417,7 +126419,7 @@ index 0000000..2c81448 From d701420a7d7e98c562cd64ad17c9721fdb42b692 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 09:18:24 +0000 -Subject: [PATCH 076/109] Add pps-gpio DT overlay +Subject: [PATCH 076/116] Add pps-gpio DT overlay Parameters: gpiopin= // Default 18 @@ -126483,7 +126485,7 @@ index 0000000..40bf0e1 From 2365c3f2d426fa6a31e77fc0d8f094118cb8094d Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Wed, 3 Sep 2014 14:44:22 +0100 -Subject: [PATCH 077/109] I2C: Only register the I2C device for the current +Subject: [PATCH 077/116] I2C: Only register the I2C device for the current board revision --- @@ -126530,7 +126532,7 @@ index 2c6a29d..b36037b 100644 From 312bed5a32e235a6ee01550424b185a7c643ed16 Mon Sep 17 00:00:00 2001 From: Timo Kokkonen Date: Wed, 29 Oct 2014 23:30:30 -0700 -Subject: [PATCH 078/109] Added support to reserve/enable a GPIO pin to be used +Subject: [PATCH 078/116] Added support to reserve/enable a GPIO pin to be used from pps-gpio module (LinuxPPS). Enable PPS modules in default config for RPi. @@ -126607,7 +126609,7 @@ index b36037b..762e17c 100644 From 4a04725639c14e9895879571be4d4b79f190e603 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 15:26:10 +0000 -Subject: [PATCH 079/109] BCM2708_DT: Correct length of the peripheral space +Subject: [PATCH 079/116] BCM2708_DT: Correct length of the peripheral space --- arch/arm/boot/dts/bcm2708.dtsi | 2 +- @@ -126630,7 +126632,7 @@ index 1b56cb5..d879316 100644 From 64c6a61c55b29bc8768587849a1c9a31a90ca8c7 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 28 Jan 2015 16:22:04 +0000 -Subject: [PATCH 080/109] BCM2708_DT: Add pcf8523-rtc overlay +Subject: [PATCH 080/116] BCM2708_DT: Add pcf8523-rtc overlay --- arch/arm/boot/dts/Makefile | 1 + @@ -126682,7 +126684,7 @@ index 0000000..0071f62 From 52f848ae973d5467bfc211499f12da71544f4b59 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Sat, 31 Jan 2015 16:07:56 +0100 -Subject: [PATCH 081/109] Add a parameter to turn off SPDIF output if no audio +Subject: [PATCH 081/116] Add a parameter to turn off SPDIF output if no audio is playing This patch adds the paramater auto_shutdown_output to the kernel module. @@ -126757,7 +126759,7 @@ index 76af8a6..b0e3d28 100644 From be8aa60e5fc8f86ea278be93bd3b6c198940a4c3 Mon Sep 17 00:00:00 2001 From: Joerg Hohensohn Date: Sun, 1 Feb 2015 22:08:03 +0100 -Subject: [PATCH 082/109] bugfix for 32kHz sample rate, was missing +Subject: [PATCH 082/116] bugfix for 32kHz sample rate, was missing --- sound/soc/bcm/hifiberry_digi.c | 1 + @@ -126779,7 +126781,7 @@ index b0e3d28..133d51b 100644 From 69ba0d7bf053f31f78d26cb4ce71e0847762c35c Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:25:49 -0700 -Subject: [PATCH 083/109] Update ds1307 driver for device-tree support +Subject: [PATCH 083/116] Update ds1307 driver for device-tree support Signed-off-by: Ryan Coe --- @@ -126809,7 +126811,7 @@ index 4ffabb3..c6789a7 100644 From 41f71cd0934203eaa69c65afdab09c872700d76b Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:26:03 -0700 -Subject: [PATCH 084/109] Add device-tree overlay for ds1307 +Subject: [PATCH 084/116] Add device-tree overlay for ds1307 Signed-off-by: Ryan Coe --- @@ -126862,7 +126864,7 @@ index 0000000..7d27044 From a32250b6048c747684e9b6666062070603903ce0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 7 May 2013 14:32:27 +0100 -Subject: [PATCH 085/109] Add 2709 platform for Raspberry Pi 2 +Subject: [PATCH 085/116] Add 2709 platform for Raspberry Pi 2 --- arch/arm/Kconfig | 21 + @@ -136509,7 +136511,7 @@ index a562ddf..40d27c1 100644 From 7aa31f395f25f5f05a01b1a89cde6b4db0d09008 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 11 Feb 2015 21:17:28 +0000 -Subject: [PATCH 086/109] m +Subject: [PATCH 086/116] m --- arch/arm/boot/dts/bcm2708.dtsi | 2 +- @@ -136532,7 +136534,7 @@ index d879316..af6b1d9 100644 From 1ea263df8ad7e1f95b90c743928f4f16c4adad25 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 6 Feb 2015 13:50:57 +0000 -Subject: [PATCH 087/109] BCM270x_DT: Add pwr_led, and the required "input" +Subject: [PATCH 087/116] BCM270x_DT: Add pwr_led, and the required "input" trigger The "input" trigger makes the associated GPIO an input. This is to support @@ -136798,7 +136800,7 @@ index 0000000..2ca2b98 From 6c049544cfa8435965027d48d006cbddb8ae9f9d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 20 Jun 2014 17:19:27 +0100 -Subject: [PATCH 088/109] bcm2709: Simplify and strip down IRQ handler +Subject: [PATCH 088/116] bcm2709: Simplify and strip down IRQ handler --- arch/arm/include/asm/entry-macro-multi.S | 2 + @@ -137018,7 +137020,7 @@ index d08591b..101d9f1 100644 From 47f63d0ccfea3b7db13b87e2ccbebe33b7ddcf75 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 24 Sep 2014 11:57:51 +0100 -Subject: [PATCH 089/109] dwc_otg: FIQ support on SMP. Set up FIQ stack and +Subject: [PATCH 089/116] dwc_otg: FIQ support on SMP. Set up FIQ stack and handler on Core 0 only. --- @@ -137151,7 +137153,7 @@ index 98e1dc5..4d8dd95 100644 From 12805880485af569b79de901a9c3554ed921ee77 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 26 Sep 2014 11:32:09 +0100 -Subject: [PATCH 090/109] dwc_otg: introduce fiq_fsm_spin(un|)lock() +Subject: [PATCH 090/116] dwc_otg: introduce fiq_fsm_spin(un|)lock() SMP safety for the FIQ relies on register read-modify write cycles being completed in the correct order. Several places in the DWC code modify @@ -137471,7 +137473,7 @@ index a5566bc..ee35196 100644 From f98835f1f026ab44f70fc03b301ab1c2e6e695e0 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 11:59:41 +0000 -Subject: [PATCH 091/109] fiq_fsm: fix build on bcm2708 and bcm2709 platforms +Subject: [PATCH 091/116] fiq_fsm: fix build on bcm2708 and bcm2709 platforms --- drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 8 ++++++++ @@ -137517,7 +137519,7 @@ index 84618a5..0d2b04e 100644 From 51c50dde85c608d033d80e415fc43a90301745f9 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 17:49:23 +0000 -Subject: [PATCH 092/109] dwc_otg: put some barriers back where they should be +Subject: [PATCH 092/116] dwc_otg: put some barriers back where they should be for UP --- @@ -137560,7 +137562,7 @@ index 124ac16..ac70f1d 100644 From 7ee3bc393f55effdcf46eeca95f4e03552d68ea6 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 18:02:44 +0000 -Subject: [PATCH 093/109] mach_bcm2709: Add Mailbox resources to USB driver +Subject: [PATCH 093/116] mach_bcm2709: Add Mailbox resources to USB driver --- arch/arm/mach-bcm2709/bcm2709.c | 10 ++++++++++ @@ -137591,7 +137593,7 @@ index abe2b19..945bb94 100644 From 20c510ab62a8926d6737f7f8e2473abb9f0f8fe3 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 18:45:23 +0000 -Subject: [PATCH 094/109] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core +Subject: [PATCH 094/116] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core active --- @@ -137657,7 +137659,7 @@ index 4d8dd95..1d28459 100644 From b67ceafbe780931f9c14a2aac406b9a7b8089add Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 17:40:22 +0000 -Subject: [PATCH 095/109] bcm2709: Port pps-gpio and i2c patches +Subject: [PATCH 095/116] bcm2709: Port pps-gpio and i2c patches --- arch/arm/mach-bcm2709/bcm2709.c | 41 +++++++++++++++++++++++++++++++++++++++-- @@ -137751,7 +137753,7 @@ index 945bb94..c4a37e8 100644 From 69f6f452dba6d3cf1f3b34d1a51b514585f14ddc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 28 Jan 2015 17:57:23 +0000 -Subject: [PATCH 096/109] bcm2709: Also accept the 2708 machine ID +Subject: [PATCH 096/116] bcm2709: Also accept the 2708 machine ID --- arch/arm/mach-bcm2709/bcm2709.c | 13 +++++++++++++ @@ -137785,7 +137787,7 @@ index c4a37e8..8af141c 100644 From 05a197df4f859169c86c2a72f6ae05d4c22adcb9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 2 Feb 2015 12:45:07 +0000 -Subject: [PATCH 097/109] BCM2709_DT: Fix bad merge +Subject: [PATCH 097/116] BCM2709_DT: Fix bad merge --- arch/arm/boot/dts/Makefile | 25 +++++++++++++------------ @@ -137831,7 +137833,7 @@ index 83dceff..f3b6364 100644 From 8e225da0cd3ec867d130c64274e1c721ca03a0b2 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Tue, 3 Feb 2015 07:15:19 +0100 -Subject: [PATCH 098/109] HiFiBerry Amp: fix device-tree problems +Subject: [PATCH 098/116] HiFiBerry Amp: fix device-tree problems Some code to load the driver based on device-tree-overlays was missing. This is added by this patch. --- @@ -137888,7 +137890,7 @@ index 1e87ee0..5903915 100644 From 3e5856f6269407f9671fdb7b4ad2571ad6491864 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 3 Feb 2015 11:41:38 +0000 -Subject: [PATCH 099/109] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate +Subject: [PATCH 099/116] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate parameters --- @@ -137940,7 +137942,7 @@ index 46f4908..75c222f 100644 From 9931580d09fb02180ad2b9951173adf4b616758b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 4 Feb 2015 10:02:24 +0000 -Subject: [PATCH 100/109] pinctrl-bcm2835: bcm2835_gpio_direction_output must +Subject: [PATCH 100/116] pinctrl-bcm2835: bcm2835_gpio_direction_output must set the value --- @@ -137971,7 +137973,7 @@ index 9d1149e..d9c727b 100644 From 8473beee2daf191fed1f7f552a166300170afc8f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 4 Feb 2015 12:59:36 +0000 -Subject: [PATCH 101/109] w1-gpio: Sort out the pullup/parasitic power tangle +Subject: [PATCH 101/116] w1-gpio: Sort out the pullup/parasitic power tangle --- arch/arm/boot/dts/w1-gpio-overlay.dts | 4 +++- @@ -138147,7 +138149,7 @@ index d58594a..feae942 100644 From ecd1431f8ccf075d1a0b8126f964c5b060fe6728 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 4 Feb 2015 12:16:50 +0000 -Subject: [PATCH 102/109] dwc_otg: fixup read-modify-write in critical paths +Subject: [PATCH 102/116] dwc_otg: fixup read-modify-write in critical paths Be more careful about read-modify-write on registers that the FIQ also touches. @@ -138280,7 +138282,7 @@ index 17d3030..acd0dd7 100644 From 49079860970f0a0435515c9a5fb2a91f08fe799d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 5 Feb 2015 16:01:44 +0000 -Subject: [PATCH 103/109] i2c_bcm2708: Fix clock reference counting +Subject: [PATCH 103/116] i2c_bcm2708: Fix clock reference counting --- drivers/i2c/busses/i2c-bcm2708.c | 12 ++++++++++-- @@ -138331,7 +138333,7 @@ index 526129b..fda59ba 100644 From 8bc381a8da1b10744c1783455495416f977f3e7c Mon Sep 17 00:00:00 2001 From: Byron Bradley Date: Fri, 6 Feb 2015 14:19:41 +0000 -Subject: [PATCH 104/109] Add device-tree overlay for pcf2127 +Subject: [PATCH 104/116] Add device-tree overlay for pcf2127 Signed-off-by: Byron Bradley --- @@ -138384,7 +138386,7 @@ index 0000000..01fc81d From ee1f9890529733d06b8cc1d142b16b416ada70de Mon Sep 17 00:00:00 2001 From: android Date: Mon, 25 Aug 2014 13:18:21 +0100 -Subject: [PATCH 105/109] BCM2708_VCIO : Add automatic creation of device node +Subject: [PATCH 105/116] BCM2708_VCIO : Add automatic creation of device node --- arch/arm/mach-bcm2708/vcio.c | 12 +++++++++++- @@ -138469,7 +138471,7 @@ index 5e43e85..700bff4 100644 From 0ca4c1f57c84bb114641176d63d16ce345f5a95d Mon Sep 17 00:00:00 2001 From: jeanleflambeur Date: Sun, 1 Feb 2015 12:35:38 +0100 -Subject: [PATCH 106/109] Fix grabbing lock from atomic context in i2c driver +Subject: [PATCH 106/116] Fix grabbing lock from atomic context in i2c driver 2 main changes: - check for timeouts in the bcm2708_bsc_setup function as indicated by this comment: @@ -138691,7 +138693,7 @@ index fda59ba..81e9374 100644 From d3d9b024cf0bb6acdf4b79066e782fe9dab7bedd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 8 Feb 2015 13:17:00 +0000 -Subject: [PATCH 107/109] ntp: Patch to fix false positives on 32bit systems +Subject: [PATCH 107/116] ntp: Patch to fix false positives on 32bit systems See: https://bugzilla.kernel.org/show_bug.cgi?id=92481 --- @@ -138718,7 +138720,7 @@ index 28bf91c..242774d 100644 From f58911890f7c4585275f9cc2b7f31b27dc8d9393 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 12 Feb 2015 11:17:53 +0000 -Subject: [PATCH 108/109] Fix LED "input" trigger implementation for 3.19 +Subject: [PATCH 108/116] Fix LED "input" trigger implementation for 3.19 --- drivers/leds/leds-gpio.c | 10 +++++++++- @@ -138808,7 +138810,7 @@ index cfceef3..4c8dc19 100644 From 087966e5e3bafdeb9f9ac7578f4995c7cc7ecf1d Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 12 Feb 2015 11:20:00 +0000 -Subject: [PATCH 109/109] fiq_fsm: Falling out of the state machine isn't fatal +Subject: [PATCH 109/116] fiq_fsm: Falling out of the state machine isn't fatal This edge case can be hit if the port is disabled while the FIQ is in the middle of a transaction. Make the effects less severe. @@ -138877,3 +138879,905 @@ index 6266661..8a31562 100644 } /** Handles interrupt for a specific Host Channel */ + +From 9883079d5aaa02b17431f38b90e99e8f2bcd9911 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Sun, 15 Feb 2015 12:06:16 +0000 +Subject: [PATCH 110/116] platform: Remove bcmrpi_small_defconfig + +--- + arch/arm/configs/bcmrpi_small_defconfig | 103 -------------------------------- + 1 file changed, 103 deletions(-) + delete mode 100644 arch/arm/configs/bcmrpi_small_defconfig + +diff --git a/arch/arm/configs/bcmrpi_small_defconfig b/arch/arm/configs/bcmrpi_small_defconfig +deleted file mode 100644 +index 3f6e378..0000000 +--- a/arch/arm/configs/bcmrpi_small_defconfig ++++ /dev/null +@@ -1,103 +0,0 @@ +-CONFIG_LOCALVERSION="-quick" +-# CONFIG_LOCALVERSION_AUTO is not set +-# CONFIG_SWAP is not set +-CONFIG_SYSVIPC=y +-CONFIG_NO_HZ=y +-CONFIG_HIGH_RES_TIMERS=y +-CONFIG_IKCONFIG=y +-CONFIG_IKCONFIG_PROC=y +-CONFIG_KALLSYMS_ALL=y +-CONFIG_PERF_EVENTS=y +-# CONFIG_COMPAT_BRK is not set +-# CONFIG_BLK_DEV_BSG is not set +-CONFIG_ARCH_BCM2836=y +-# CONFIG_BCM2708_GPIO is not set +-# CONFIG_BCM2708_VCMEM is not set +-# CONFIG_CACHE_L2X0 is not set +-CONFIG_SMP=y +-CONFIG_HAVE_ARM_ARCH_TIMER=y +-CONFIG_PREEMPT=y +-CONFIG_AEABI=y +-CONFIG_ZBOOT_ROM_TEXT=0x0 +-CONFIG_ZBOOT_ROM_BSS=0x0 +-CONFIG_CMDLINE="console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait" +-CONFIG_CPU_IDLE=y +-# CONFIG_SUSPEND is not set +-CONFIG_DEVTMPFS=y +-CONFIG_DEVTMPFS_MOUNT=y +-CONFIG_BLK_DEV_LOOP=y +-CONFIG_BLK_DEV_RAM=y +-# CONFIG_BCM2708_VCHIQ is not set +-# CONFIG_INPUT_MOUSEDEV is not set +-CONFIG_INPUT_EVDEV=y +-# CONFIG_INPUT_KEYBOARD is not set +-# CONFIG_INPUT_MOUSE is not set +-# CONFIG_SERIO is not set +-# CONFIG_LEGACY_PTYS is not set +-# CONFIG_DEVKMEM is not set +-CONFIG_SERIAL_AMBA_PL011=y +-CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +-CONFIG_RAW_DRIVER=y +-# CONFIG_HID is not set +-CONFIG_DMADEVICES=y +-# CONFIG_IOMMU_SUPPORT is not set +-CONFIG_TMPFS=y +-CONFIG_TMPFS_POSIX_ACL=y +-# CONFIG_MISC_FILESYSTEMS is not set +-CONFIG_NLS=y +-CONFIG_NLS_DEFAULT="utf8" +-CONFIG_NLS_CODEPAGE_437=y +-CONFIG_NLS_CODEPAGE_737=y +-CONFIG_NLS_CODEPAGE_775=y +-CONFIG_NLS_CODEPAGE_850=y +-CONFIG_NLS_CODEPAGE_852=y +-CONFIG_NLS_CODEPAGE_855=y +-CONFIG_NLS_CODEPAGE_857=y +-CONFIG_NLS_CODEPAGE_860=y +-CONFIG_NLS_CODEPAGE_861=y +-CONFIG_NLS_CODEPAGE_862=y +-CONFIG_NLS_CODEPAGE_863=y +-CONFIG_NLS_CODEPAGE_864=y +-CONFIG_NLS_CODEPAGE_865=y +-CONFIG_NLS_CODEPAGE_866=y +-CONFIG_NLS_CODEPAGE_869=y +-CONFIG_NLS_CODEPAGE_936=y +-CONFIG_NLS_CODEPAGE_950=y +-CONFIG_NLS_CODEPAGE_932=y +-CONFIG_NLS_CODEPAGE_949=y +-CONFIG_NLS_CODEPAGE_874=y +-CONFIG_NLS_ISO8859_8=y +-CONFIG_NLS_CODEPAGE_1250=y +-CONFIG_NLS_CODEPAGE_1251=y +-CONFIG_NLS_ASCII=y +-CONFIG_NLS_ISO8859_1=y +-CONFIG_NLS_ISO8859_2=y +-CONFIG_NLS_ISO8859_3=y +-CONFIG_NLS_ISO8859_4=y +-CONFIG_NLS_ISO8859_5=y +-CONFIG_NLS_ISO8859_6=y +-CONFIG_NLS_ISO8859_7=y +-CONFIG_NLS_ISO8859_9=y +-CONFIG_NLS_ISO8859_13=y +-CONFIG_NLS_ISO8859_14=y +-CONFIG_NLS_ISO8859_15=y +-CONFIG_NLS_UTF8=y +-CONFIG_PRINTK_TIME=y +-CONFIG_DEBUG_KERNEL=y +-# CONFIG_DEBUG_PREEMPT is not set +-# CONFIG_FTRACE is not set +-CONFIG_KGDB=y +-CONFIG_KGDB_KDB=y +-# CONFIG_ARM_UNWIND is not set +-CONFIG_DEBUG_LL=y +-CONFIG_EARLY_PRINTK=y +-CONFIG_CRYPTO_CBC=y +-CONFIG_CRYPTO_HMAC=y +-CONFIG_CRYPTO_MD5=y +-CONFIG_CRYPTO_SHA1=y +-CONFIG_CRYPTO_DES=y +-# CONFIG_CRYPTO_ANSI_CPRNG is not set +-# CONFIG_CRYPTO_HW is not set +-CONFIG_CRC16=y +-CONFIG_CRC_ITU_T=y +-CONFIG_LIBCRC32C=y + +From d5a3db1a12fa0f7882c0830ea580f9f253859f89 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Sun, 15 Feb 2015 12:09:47 +0000 +Subject: [PATCH 111/116] platform: Remove bcmrpi_sdcard_defconfig + +--- + arch/arm/configs/bcmrpi_sdcard_defconfig | 176 ------------------------------- + 1 file changed, 176 deletions(-) + delete mode 100644 arch/arm/configs/bcmrpi_sdcard_defconfig + +diff --git a/arch/arm/configs/bcmrpi_sdcard_defconfig b/arch/arm/configs/bcmrpi_sdcard_defconfig +deleted file mode 100644 +index fef887a..0000000 +--- a/arch/arm/configs/bcmrpi_sdcard_defconfig ++++ /dev/null +@@ -1,176 +0,0 @@ +-# CONFIG_ARM_PATCH_PHYS_VIRT is not set +-CONFIG_LOCALVERSION="-quick" +-# CONFIG_LOCALVERSION_AUTO is not set +-# CONFIG_SWAP is not set +-CONFIG_SYSVIPC=y +-CONFIG_POSIX_MQUEUE=y +-CONFIG_NO_HZ=y +-CONFIG_HIGH_RES_TIMERS=y +-CONFIG_IKCONFIG=y +-CONFIG_IKCONFIG_PROC=y +-CONFIG_KALLSYMS_ALL=y +-CONFIG_EMBEDDED=y +-CONFIG_PERF_EVENTS=y +-# CONFIG_COMPAT_BRK is not set +-CONFIG_SLAB=y +-# CONFIG_BLK_DEV_BSG is not set +-CONFIG_ARCH_BCM2708=y +-CONFIG_PREEMPT=y +-CONFIG_AEABI=y +-CONFIG_UACCESS_WITH_MEMCPY=y +-CONFIG_ZBOOT_ROM_TEXT=0x0 +-CONFIG_ZBOOT_ROM_BSS=0x0 +-CONFIG_CMDLINE="dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait" +-CONFIG_CPU_FREQ=y +-CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=y +-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +-CONFIG_CPU_FREQ_GOV_USERSPACE=y +-CONFIG_CPU_FREQ_GOV_ONDEMAND=y +-CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +-CONFIG_CPU_IDLE=y +-CONFIG_VFP=y +-CONFIG_BINFMT_MISC=y +-CONFIG_NET=y +-CONFIG_PACKET=y +-CONFIG_UNIX=y +-CONFIG_INET=y +-CONFIG_IP_MULTICAST=y +-CONFIG_IP_PNP=y +-CONFIG_IP_PNP_DHCP=y +-CONFIG_IP_PNP_RARP=y +-CONFIG_SYN_COOKIES=y +-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +-# CONFIG_INET_XFRM_MODE_TUNNEL is not set +-# CONFIG_INET_XFRM_MODE_BEET is not set +-# CONFIG_INET_LRO is not set +-# CONFIG_INET_DIAG is not set +-# CONFIG_IPV6 is not set +-# CONFIG_WIRELESS is not set +-CONFIG_DEVTMPFS=y +-CONFIG_DEVTMPFS_MOUNT=y +-CONFIG_BLK_DEV_LOOP=y +-CONFIG_BLK_DEV_RAM=y +-CONFIG_SCSI=y +-# CONFIG_SCSI_PROC_FS is not set +-# CONFIG_SCSI_LOWLEVEL is not set +-CONFIG_NETDEVICES=y +-CONFIG_MII=y +-# CONFIG_NET_VENDOR_BROADCOM is not set +-# CONFIG_NET_VENDOR_CIRRUS is not set +-# CONFIG_NET_VENDOR_FARADAY is not set +-# CONFIG_NET_VENDOR_INTEL is not set +-# CONFIG_NET_VENDOR_MARVELL is not set +-# CONFIG_NET_VENDOR_MICREL is not set +-# CONFIG_NET_VENDOR_NATSEMI is not set +-# CONFIG_NET_VENDOR_SEEQ is not set +-# CONFIG_NET_VENDOR_STMICRO is not set +-# CONFIG_NET_VENDOR_WIZNET is not set +-CONFIG_PHYLIB=y +-# CONFIG_WLAN is not set +-# CONFIG_INPUT_MOUSEDEV is not set +-CONFIG_INPUT_EVDEV=y +-# CONFIG_INPUT_KEYBOARD is not set +-# CONFIG_INPUT_MOUSE is not set +-# CONFIG_SERIO is not set +-CONFIG_VT_HW_CONSOLE_BINDING=y +-# CONFIG_LEGACY_PTYS is not set +-# CONFIG_DEVKMEM is not set +-CONFIG_SERIAL_AMBA_PL011=y +-CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +-CONFIG_TTY_PRINTK=y +-CONFIG_RAW_DRIVER=y +-CONFIG_WATCHDOG=y +-CONFIG_REGULATOR=y +-CONFIG_REGULATOR_DEBUG=y +-CONFIG_REGULATOR_FIXED_VOLTAGE=y +-CONFIG_REGULATOR_VIRTUAL_CONSUMER=y +-CONFIG_REGULATOR_USERSPACE_CONSUMER=y +-CONFIG_FB=y +-CONFIG_FRAMEBUFFER_CONSOLE=y +-CONFIG_LOGO=y +-# CONFIG_LOGO_LINUX_MONO is not set +-# CONFIG_LOGO_LINUX_VGA16 is not set +-CONFIG_SOUND=y +-CONFIG_SND=y +-CONFIG_MMC=y +-CONFIG_MMC_SDHCI=y +-CONFIG_MMC_SDHCI_PLTFM=y +-CONFIG_MMC_SDHCI_BCM2708=y +-CONFIG_MMC_SDHCI_BCM2708_DMA=y +-CONFIG_NEW_LEDS=y +-CONFIG_LEDS_CLASS=y +-CONFIG_LEDS_TRIGGERS=y +-# CONFIG_IOMMU_SUPPORT is not set +-CONFIG_EXT4_FS=y +-CONFIG_EXT4_FS_POSIX_ACL=y +-CONFIG_EXT4_FS_SECURITY=y +-CONFIG_AUTOFS4_FS=y +-CONFIG_FSCACHE=y +-CONFIG_CACHEFILES=y +-CONFIG_MSDOS_FS=y +-CONFIG_VFAT_FS=y +-CONFIG_FAT_DEFAULT_IOCHARSET="ascii" +-CONFIG_TMPFS=y +-CONFIG_TMPFS_POSIX_ACL=y +-CONFIG_CONFIGFS_FS=y +-# CONFIG_MISC_FILESYSTEMS is not set +-CONFIG_NFS_FS=y +-CONFIG_NFS_V3_ACL=y +-CONFIG_NFS_V4=y +-CONFIG_ROOT_NFS=y +-CONFIG_NFS_FSCACHE=y +-CONFIG_NLS_DEFAULT="utf8" +-CONFIG_NLS_CODEPAGE_437=y +-CONFIG_NLS_CODEPAGE_737=y +-CONFIG_NLS_CODEPAGE_775=y +-CONFIG_NLS_CODEPAGE_850=y +-CONFIG_NLS_CODEPAGE_852=y +-CONFIG_NLS_CODEPAGE_855=y +-CONFIG_NLS_CODEPAGE_857=y +-CONFIG_NLS_CODEPAGE_860=y +-CONFIG_NLS_CODEPAGE_861=y +-CONFIG_NLS_CODEPAGE_862=y +-CONFIG_NLS_CODEPAGE_863=y +-CONFIG_NLS_CODEPAGE_864=y +-CONFIG_NLS_CODEPAGE_865=y +-CONFIG_NLS_CODEPAGE_866=y +-CONFIG_NLS_CODEPAGE_869=y +-CONFIG_NLS_CODEPAGE_936=y +-CONFIG_NLS_CODEPAGE_950=y +-CONFIG_NLS_CODEPAGE_932=y +-CONFIG_NLS_CODEPAGE_949=y +-CONFIG_NLS_CODEPAGE_874=y +-CONFIG_NLS_ISO8859_8=y +-CONFIG_NLS_CODEPAGE_1250=y +-CONFIG_NLS_CODEPAGE_1251=y +-CONFIG_NLS_ASCII=y +-CONFIG_NLS_ISO8859_1=y +-CONFIG_NLS_ISO8859_2=y +-CONFIG_NLS_ISO8859_3=y +-CONFIG_NLS_ISO8859_4=y +-CONFIG_NLS_ISO8859_5=y +-CONFIG_NLS_ISO8859_6=y +-CONFIG_NLS_ISO8859_7=y +-CONFIG_NLS_ISO8859_9=y +-CONFIG_NLS_ISO8859_13=y +-CONFIG_NLS_ISO8859_14=y +-CONFIG_NLS_ISO8859_15=y +-CONFIG_NLS_UTF8=y +-CONFIG_PRINTK_TIME=y +-CONFIG_DEBUG_FS=y +-CONFIG_DETECT_HUNG_TASK=y +-# CONFIG_DEBUG_PREEMPT is not set +-# CONFIG_DEBUG_BUGVERBOSE is not set +-# CONFIG_FTRACE is not set +-CONFIG_KGDB=y +-CONFIG_KGDB_KDB=y +-# CONFIG_ARM_UNWIND is not set +-CONFIG_CRYPTO_CBC=y +-CONFIG_CRYPTO_HMAC=y +-CONFIG_CRYPTO_MD5=y +-CONFIG_CRYPTO_SHA1=y +-CONFIG_CRYPTO_DES=y +-# CONFIG_CRYPTO_ANSI_CPRNG is not set +-# CONFIG_CRYPTO_HW is not set +-CONFIG_CRC_ITU_T=y +-CONFIG_LIBCRC32C=y + +From 6e8273a7683b5967a4823c961729803ef1d4e3a1 Mon Sep 17 00:00:00 2001 +From: Rainer Herbers +Date: Sun, 15 Feb 2015 13:44:14 +0100 +Subject: [PATCH 112/116] Create bmp085_i2c-sensor-overlay.dts and update + Makefile + +--- + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/bmp085_i2c-sensor-overlay.dts | 23 +++++++++++++++++++++++ + 2 files changed, 24 insertions(+) + create mode 100644 arch/arm/boot/dts/bmp085_i2c-sensor-overlay.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 2031ffe..754291e 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -64,6 +64,7 @@ endif + dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb + dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb + dtb-$(CONFIG_BCM2709_DT) += bcm2709-rpi-2-b.dtb ++dtb-$(RPI_DT_OVERLAYS) += bmp085_i2c-sensor-overlay.dtb + dtb-$(RPI_DT_OVERLAYS) += ds1307-rtc-overlay.dtb + dtb-$(RPI_DT_OVERLAYS) += hifiberry-dac-overlay.dtb + dtb-$(RPI_DT_OVERLAYS) += hifiberry-dacplus-overlay.dtb +diff --git a/arch/arm/boot/dts/bmp085_i2c-sensor-overlay.dts b/arch/arm/boot/dts/bmp085_i2c-sensor-overlay.dts +new file mode 100644 +index 0000000..b830bf2 +--- /dev/null ++++ b/arch/arm/boot/dts/bmp085_i2c-sensor-overlay.dts +@@ -0,0 +1,23 @@ ++// Definitions for BMP085/BMP180 digital barometric pressure and temperature sensors from Bosch Sensortec ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "brcm,bcm2708"; ++ ++ fragment@0 { ++ target = <&i2c1>; ++ __overlay__ { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ status = "okay"; ++ ++ bmp085@77 { ++ compatible = "bosch,bmp085"; ++ reg = <0x77>; ++ default-oversampling = <3>; ++ status = "okay"; ++ }; ++ }; ++ }; ++}; + +From a8f400dc12f70c4460dd162e3d8d617cf7d01493 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Mon, 16 Feb 2015 13:51:02 +0000 +Subject: [PATCH 113/116] lirc-rpi: use getnstimeofday instead of + read_current_timer + +read_current_timer isn't guaranteed to return values in +microseconds, and indeed it doesn't on a Pi2. + +Issue: linux#827 +--- + drivers/staging/media/lirc/lirc_rpi.c | 12 ++++++++++-- + 1 file changed, 10 insertions(+), 2 deletions(-) + +diff --git a/drivers/staging/media/lirc/lirc_rpi.c b/drivers/staging/media/lirc/lirc_rpi.c +index cd66ca2..24563ec 100644 +--- a/drivers/staging/media/lirc/lirc_rpi.c ++++ b/drivers/staging/media/lirc/lirc_rpi.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -107,6 +108,13 @@ static void safe_udelay(unsigned long usecs) + udelay(usecs); + } + ++static unsigned long read_current_us(void) ++{ ++ struct timespec now; ++ getnstimeofday(&now); ++ return (now.tv_sec * 1000000) + (now.tv_nsec/1000); ++} ++ + static int init_timing_params(unsigned int new_duty_cycle, + unsigned int new_freq) + { +@@ -135,7 +143,7 @@ static long send_pulse_softcarrier(unsigned long length) + length *= 1000; + + actual = 0; target = 0; flag = 0; +- read_current_timer(&actual_us); ++ actual_us = read_current_us(); + + while (actual < length) { + if (flag) { +@@ -153,7 +161,7 @@ static long send_pulse_softcarrier(unsigned long length) + */ + if ((int)(target_us - actual_us) > 0) + udelay(target_us - actual_us); +- read_current_timer(&actual_us); ++ actual_us = read_current_us(); + actual += (actual_us - initial_us) * 1000; + flag = !flag; + } + +From 5c6ec05ffc9261163ab699a95398afd23c5f2aeb Mon Sep 17 00:00:00 2001 +From: Dave Martin +Date: Tue, 17 Feb 2015 16:28:52 +0000 +Subject: [PATCH 114/116] serial: amba-pl011: Kickstart TX by explicit FIFO + fill + +urrently, the transmit state machine arranges for the TX IRQ +always to be asserted whever the FIFO fill level is below the +watermark set in IFLS, with all actual transmission being done on +the back of the TX IRQ. + +To kickstart transmission, pl011_startup() temporarily disables the +FIFO, enables loopback mode and transmits a dummy character in +order to trigger the initial assertion of the IRQ. + +This leads to two problems: + + * Unfortunately, at least some pl011-based systems seem to send + this dummy character down the wire even in loopback mode (in + addition to looping it back). This means that if + pl011_startup() is called in between other transmissions, the + odd timing of the dummy tx forces the receiver out of sync. + + This causes problems when the console is on pl011 and userspace + opens and closes the same port often (*cough* systemd *cough*, + where large amounts of console output get turned to garbage as a + result). + + It also causes a single framing error whenever the port is + opened, in particulary in kernel_init_freeable() when preparing + the initial userspace environment. + + * The ARM SBSA UART[1] is a cut-down version of pl011. The lack + of a loopback mode means that the dummy tx strategy isn't + suitable for this UART, but the other differences should be less + invasive. + +This patch makes an initial call to pl011_tx_chars() to get things +going instead of sending a dummy character. This should reduce the +turnaround time of an XON/XOFF by one IRQ latency or so, as well as +eliminating some IRQs around short writes from the tty layer. + +There is no way to find out the TX FIFO fill level from the +hardware directly, which becomes a problem when transmitting +characters outside the interrupt handler. To address this while +keeping status polling minimal, a minimum bound on the space +available is maintained in uap->tx_avail. For now, if we are not +sure there is any FIFO space at all, the driver transmits nothing +and falls back to waiting for the next TX inerrupt. + +Thanks to Andrew Jackson for spotting some dumb bugs while I was +developing this patch. + +[1] ARM-DEN-0029 Server Base System Architecture, available (click- + thru...) from http://infocenter.arm.com. Version v2.3 was + referred to when drawing the above conclusions. + +Signed-off-by: Dave Martin +Cc: Russell King +Cc: Andre Przywara +--- + drivers/tty/serial/amba-pl011.c | 64 ++++++++++++++++++----------------------- + 1 file changed, 28 insertions(+), 36 deletions(-) + +diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c +index 16ca535..e00ca32 100644 +--- a/drivers/tty/serial/amba-pl011.c ++++ b/drivers/tty/serial/amba-pl011.c +@@ -157,6 +157,7 @@ struct uart_amba_port { + unsigned int lcrh_rx; /* vendor-specific */ + unsigned int old_cr; /* state during shutdown */ + bool autorts; ++ unsigned int tx_avail; /* min TX FIFO space */ + char type[12]; + #ifdef CONFIG_DMA_ENGINE + /* DMA stuff */ +@@ -585,6 +586,7 @@ static int pl011_dma_tx_refill(struct uart_amba_port *uap) + */ + xmit->tail = (xmit->tail + count) & (UART_XMIT_SIZE - 1); + uap->port.icount.tx += count; ++ uap->tx_avail = 0; /* DMA will be keeping the FIFO full now */ + + if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS) + uart_write_wakeup(&uap->port); +@@ -686,7 +688,8 @@ static inline bool pl011_dma_tx_start(struct uart_amba_port *uap) + uap->dmacr &= ~UART011_TXDMAE; + writew(uap->dmacr, uap->port.membase + UART011_DMACR); + +- if (readw(uap->port.membase + UART01x_FR) & UART01x_FR_TXFF) { ++ if (uap->tx_avail < 1 && ++ readw(uap->port.membase + UART01x_FR) & UART01x_FR_TXFF) { + /* + * No space in the FIFO, so enable the transmit interrupt + * so we know when there is space. Note that once we've +@@ -698,6 +701,8 @@ static inline bool pl011_dma_tx_start(struct uart_amba_port *uap) + writew(uap->port.x_char, uap->port.membase + UART01x_DR); + uap->port.icount.tx++; + uap->port.x_char = 0; ++ if (uap->tx_avail > 0) ++ uap->tx_avail--; + + /* Success - restore the DMA state */ + uap->dmacr = dmacr; +@@ -1208,6 +1213,8 @@ static void pl011_stop_tx(struct uart_port *port) + pl011_dma_tx_stop(uap); + } + ++static void pl011_tx_chars(struct uart_amba_port *uap); ++ + static void pl011_start_tx(struct uart_port *port) + { + struct uart_amba_port *uap = +@@ -1216,6 +1223,7 @@ static void pl011_start_tx(struct uart_port *port) + if (!pl011_dma_tx_start(uap)) { + uap->im |= UART011_TXIM; + writew(uap->im, uap->port.membase + UART011_IMSC); ++ pl011_tx_chars(uap); + } + } + +@@ -1283,6 +1291,7 @@ static void pl011_tx_chars(struct uart_amba_port *uap) + writew(uap->port.x_char, uap->port.membase + UART01x_DR); + uap->port.icount.tx++; + uap->port.x_char = 0; ++ uap->tx_avail--; + return; + } + if (uart_circ_empty(xmit) || uart_tx_stopped(&uap->port)) { +@@ -1294,14 +1303,16 @@ static void pl011_tx_chars(struct uart_amba_port *uap) + if (pl011_dma_tx_irq(uap)) + return; + +- count = uap->fifosize >> 1; +- do { ++ count = uart_circ_chars_pending(xmit); ++ if (uap->tx_avail < count) ++ count = uap->tx_avail; ++ ++ while (count--) { + writew(xmit->buf[xmit->tail], uap->port.membase + UART01x_DR); + xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1); + uap->port.icount.tx++; +- if (uart_circ_empty(xmit)) +- break; +- } while (--count > 0); ++ uap->tx_avail--; ++ } + + if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS) + uart_write_wakeup(&uap->port); +@@ -1372,8 +1383,10 @@ static irqreturn_t pl011_int(int irq, void *dev_id) + if (status & (UART011_DSRMIS|UART011_DCDMIS| + UART011_CTSMIS|UART011_RIMIS)) + pl011_modem_status(uap); +- if (status & UART011_TXIS) ++ if (status & UART011_TXIS) { ++ uap->tx_avail = uap->fifosize >> 1; + pl011_tx_chars(uap); ++ } + + if (pass_counter-- == 0) + break; +@@ -1392,8 +1405,12 @@ static unsigned int pl011_tx_empty(struct uart_port *port) + { + struct uart_amba_port *uap = + container_of(port, struct uart_amba_port, port); +- unsigned int status = readw(uap->port.membase + UART01x_FR); +- return status & (UART01x_FR_BUSY|UART01x_FR_TXFF) ? 0 : TIOCSER_TEMT; ++ unsigned int status = readw(uap->port.membase + UART01x_FR) & ++ (UART01x_FR_BUSY|UART01x_FR_TXFF) ? 0 : TIOCSER_TEMT; ++ ++ if (status) ++ uap->tx_avail = uap->fifosize; ++ return status; + } + + static unsigned int pl011_get_mctrl(struct uart_port *port) +@@ -1577,7 +1594,7 @@ static int pl011_startup(struct uart_port *port) + { + struct uart_amba_port *uap = + container_of(port, struct uart_amba_port, port); +- unsigned int cr, lcr_h, fbrd, ibrd; ++ unsigned int cr; + int retval; + + retval = pl011_hwinit(port); +@@ -1594,38 +1611,13 @@ static int pl011_startup(struct uart_port *port) + goto clk_dis; + + writew(uap->vendor->ifls, uap->port.membase + UART011_IFLS); +- +- /* +- * Provoke TX FIFO interrupt into asserting. Taking care to preserve +- * baud rate and data format specified by FBRD, IBRD and LCRH as the +- * UART may already be in use as a console. +- */ +- spin_lock_irq(&uap->port.lock); +- +- fbrd = readw(uap->port.membase + UART011_FBRD); +- ibrd = readw(uap->port.membase + UART011_IBRD); +- lcr_h = readw(uap->port.membase + uap->lcrh_rx); +- +- cr = UART01x_CR_UARTEN | UART011_CR_TXE | UART011_CR_LBE; +- writew(cr, uap->port.membase + UART011_CR); +- writew(0, uap->port.membase + UART011_FBRD); +- writew(1, uap->port.membase + UART011_IBRD); +- pl011_write_lcr_h(uap, 0); +- writew(0, uap->port.membase + UART01x_DR); +- while (readw(uap->port.membase + UART01x_FR) & UART01x_FR_BUSY) +- barrier(); +- +- writew(fbrd, uap->port.membase + UART011_FBRD); +- writew(ibrd, uap->port.membase + UART011_IBRD); +- pl011_write_lcr_h(uap, lcr_h); ++ uap->tx_avail = uap->fifosize; /* FIFO should be empty */ + + /* restore RTS and DTR */ + cr = uap->old_cr & (UART011_CR_RTS | UART011_CR_DTR); + cr |= UART01x_CR_UARTEN | UART011_CR_RXE | UART011_CR_TXE; + writew(cr, uap->port.membase + UART011_CR); + +- spin_unlock_irq(&uap->port.lock); +- + /* + * initialise the old status of the modem signals + */ + +From d0a44cbe02c860f3b533b34916c6c8efd45fffac Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Wed, 18 Feb 2015 10:40:28 +0000 +Subject: [PATCH 115/116] vc_cma: Make the vc_cma area the default contiguous + DMA area + +--- + drivers/char/broadcom/vc_cma/vc_cma.c | 98 ++++++++++++++++++++++++++--------- + 1 file changed, 73 insertions(+), 25 deletions(-) + +diff --git a/drivers/char/broadcom/vc_cma/vc_cma.c b/drivers/char/broadcom/vc_cma/vc_cma.c +index a635f9f..bd64317 100644 +--- a/drivers/char/broadcom/vc_cma/vc_cma.c ++++ b/drivers/char/broadcom/vc_cma/vc_cma.c +@@ -58,6 +58,8 @@ + #define LOG_DBG(fmt, ...) \ + if (vc_cma_debug) \ + printk(KERN_INFO fmt "\n", ##__VA_ARGS__) ++#define LOG_INFO(fmt, ...) \ ++ printk(KERN_INFO fmt "\n", ##__VA_ARGS__) + #define LOG_ERR(fmt, ...) \ + printk(KERN_ERR fmt "\n", ##__VA_ARGS__) + +@@ -120,6 +122,10 @@ unsigned int vc_cma_chunks; + unsigned int vc_cma_chunks_used; + unsigned int vc_cma_chunks_reserved; + ++ ++void *vc_cma_dma_alloc; ++unsigned int vc_cma_dma_size; ++ + static int in_loud_error; + + unsigned int vc_cma_reserve_total; +@@ -198,8 +204,17 @@ void vc_cma_reserve(void) + * size from the end of memory + */ + if (vc_cma_size) { +- if (dma_declare_contiguous(NULL /*&vc_cma_device.dev*/, vc_cma_size, ++ if (dma_declare_contiguous(&vc_cma_device.dev, vc_cma_size, + vc_cma_base, 0) == 0) { ++ if (!dev_get_cma_area(NULL)) { ++ /* There is no default CMA area - make this ++ the default */ ++ struct cma *vc_cma_area = dev_get_cma_area( ++ &vc_cma_device.dev); ++ dma_contiguous_set_default(vc_cma_area); ++ LOG_INFO("vc_cma_reserve - using vc_cma as " ++ "the default contiguous DMA area"); ++ } + } else { + LOG_ERR("vc_cma: dma_declare_contiguous(%x,%x) failed", + vc_cma_size, (unsigned int)vc_cma_base); +@@ -309,6 +324,9 @@ static int vc_cma_show_info(struct seq_file *m, void *v) + seq_printf(m, " PID %5d: %d bytes\n", user->pid, + user->reserve); + } ++ seq_printf(m, " dma_alloc : %p (%d pages)\n", ++ vc_cma_dma_alloc ? page_address(vc_cma_dma_alloc) : 0, ++ vc_cma_dma_size); + + seq_printf(m, "\n"); + +@@ -348,31 +366,33 @@ static int vc_cma_proc_write(struct file *file, + #define FREE_STR "free" + #define DEBUG_STR "debug" + #define RESERVE_STR "reserve" ++#define DMA_ALLOC_STR "dma_alloc" ++#define DMA_FREE_STR "dma_free" + if (strncmp(input_str, ALLOC_STR, strlen(ALLOC_STR)) == 0) { +- int size; ++ int alloc_size; + char *p = input_str + strlen(ALLOC_STR); + + while (*p == ' ') + p++; +- size = memparse(p, NULL); +- LOG_ERR("/proc/vc-cma: alloc %d", size); +- if (size) ++ alloc_size = memparse(p, NULL); ++ LOG_INFO("/proc/vc-cma: alloc %d", alloc_size); ++ if (alloc_size) + send_vc_msg(VC_CMA_MSG_REQUEST_FREE, +- size / VC_CMA_CHUNK_SIZE, 0); ++ alloc_size / VC_CMA_CHUNK_SIZE, 0); + else + LOG_ERR("invalid size '%s'", p); + rc = size; + } else if (strncmp(input_str, FREE_STR, strlen(FREE_STR)) == 0) { +- int size; ++ int alloc_size; + char *p = input_str + strlen(FREE_STR); + + while (*p == ' ') + p++; +- size = memparse(p, NULL); +- LOG_ERR("/proc/vc-cma: free %d", size); +- if (size) ++ alloc_size = memparse(p, NULL); ++ LOG_INFO("/proc/vc-cma: free %d", alloc_size); ++ if (alloc_size) + send_vc_msg(VC_CMA_MSG_REQUEST_ALLOC, +- size / VC_CMA_CHUNK_SIZE, 0); ++ alloc_size / VC_CMA_CHUNK_SIZE, 0); + else + LOG_ERR("invalid size '%s'", p); + rc = size; +@@ -384,18 +404,46 @@ static int vc_cma_proc_write(struct file *file, + vc_cma_debug = 1; + else if ((strcmp(p, "off") == 0) || (strcmp(p, "0") == 0)) + vc_cma_debug = 0; +- LOG_ERR("/proc/vc-cma: debug %s", vc_cma_debug ? "on" : "off"); ++ LOG_INFO("/proc/vc-cma: debug %s", vc_cma_debug ? "on" : "off"); + rc = size; + } else if (strncmp(input_str, RESERVE_STR, strlen(RESERVE_STR)) == 0) { +- int size; ++ int alloc_size; + int reserved; + char *p = input_str + strlen(RESERVE_STR); + while (*p == ' ') + p++; +- size = memparse(p, NULL); ++ alloc_size = memparse(p, NULL); + +- reserved = vc_cma_set_reserve(size, current->tgid); ++ reserved = vc_cma_set_reserve(alloc_size, current->tgid); + rc = (reserved >= 0) ? size : reserved; ++ } else if (strncmp(input_str, DMA_ALLOC_STR, strlen(DMA_ALLOC_STR)) == 0) { ++ int alloc_size; ++ char *p = input_str + strlen(DMA_ALLOC_STR); ++ while (*p == ' ') ++ p++; ++ alloc_size = memparse(p, NULL); ++ ++ if (vc_cma_dma_alloc) { ++ dma_release_from_contiguous(NULL, vc_cma_dma_alloc, ++ vc_cma_dma_size); ++ vc_cma_dma_alloc = NULL; ++ vc_cma_dma_size = 0; ++ } ++ vc_cma_dma_alloc = dma_alloc_from_contiguous(NULL, alloc_size, 0); ++ vc_cma_dma_size = (vc_cma_dma_alloc ? alloc_size : 0); ++ if (vc_cma_dma_alloc) ++ LOG_INFO("dma_alloc(%d pages) -> %p", alloc_size, page_address(vc_cma_dma_alloc)); ++ else ++ LOG_ERR("dma_alloc(%d pages) failed", alloc_size); ++ rc = size; ++ } else if (strncmp(input_str, DMA_FREE_STR, strlen(DMA_FREE_STR)) == 0) { ++ if (vc_cma_dma_alloc) { ++ dma_release_from_contiguous(NULL, vc_cma_dma_alloc, ++ vc_cma_dma_size); ++ vc_cma_dma_alloc = NULL; ++ vc_cma_dma_size = 0; ++ } ++ rc = size; + } + + out: +@@ -526,7 +574,7 @@ static int vc_cma_alloc_chunks(int num_chunks, struct cma_msg *reply) + uint8_t *chunk_addr; + size_t chunk_size = PAGES_PER_CHUNK << PAGE_SHIFT; + +- chunk = dma_alloc_from_contiguous(NULL /*&vc_cma_device.dev*/, ++ chunk = dma_alloc_from_contiguous(&vc_cma_device.dev, + PAGES_PER_CHUNK, + VC_CMA_CHUNK_ORDER); + if (!chunk) +@@ -548,7 +596,7 @@ static int vc_cma_alloc_chunks(int num_chunks, struct cma_msg *reply) + "bad SPARSEMEM configuration?", + __func__, (unsigned int)page_to_phys(chunk), + vc_cma_base, vc_cma_base + vc_cma_size - 1); +- LOG_ERR("%s: dev->cma_area = %p\n", __func__, ++ LOG_ERR("%s: dev->cma_area = %p", __func__, + (void*)0/*vc_cma_device.dev.cma_area*/); + LOG_ERR("%s: ===============================", + __func__); +@@ -672,7 +720,7 @@ static int cma_worker_proc(void *param) + } + + if (!dma_release_from_contiguous +- (NULL /*&vc_cma_device.dev*/, page, ++ (&vc_cma_device.dev, page, + PAGES_PER_CHUNK)) { + LOG_ERR + ("CMA_MSG_FREE - failed to " +@@ -1023,12 +1071,12 @@ static int vc_cma_init(void) + if (!check_cma_config()) + goto out_release; + +- printk(KERN_INFO "vc-cma: Videocore CMA driver\n"); +- printk(KERN_INFO "vc-cma: vc_cma_base = 0x%08x\n", vc_cma_base); +- printk(KERN_INFO "vc-cma: vc_cma_size = 0x%08x (%u MiB)\n", +- vc_cma_size, vc_cma_size / (1024 * 1024)); +- printk(KERN_INFO "vc-cma: vc_cma_initial = 0x%08x (%u MiB)\n", +- vc_cma_initial, vc_cma_initial / (1024 * 1024)); ++ LOG_INFO("vc-cma: Videocore CMA driver"); ++ LOG_INFO("vc-cma: vc_cma_base = 0x%08x", vc_cma_base); ++ LOG_INFO("vc-cma: vc_cma_size = 0x%08x (%u MiB)", ++ vc_cma_size, vc_cma_size / (1024 * 1024)); ++ LOG_INFO("vc-cma: vc_cma_initial = 0x%08x (%u MiB)", ++ vc_cma_initial, vc_cma_initial / (1024 * 1024)); + + vc_cma_base_page = phys_to_page(vc_cma_base); + +@@ -1038,7 +1086,7 @@ static int vc_cma_init(void) + for (vc_cma_chunks_used = 0; + vc_cma_chunks_used < chunks_needed; vc_cma_chunks_used++) { + struct page *chunk; +- chunk = dma_alloc_from_contiguous(NULL /*&vc_cma_device.dev*/, ++ chunk = dma_alloc_from_contiguous(&vc_cma_device.dev, + PAGES_PER_CHUNK, + VC_CMA_CHUNK_ORDER); + if (!chunk) + +From 3c9fd364bfa6c0f6ef725d74b72a9b77dd0d0fb4 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Wed, 18 Feb 2015 22:00:00 +0000 +Subject: [PATCH 116/116] config: Add TOUCHSCREEN_EGALAX + +--- + arch/arm/configs/bcm2709_defconfig | 1 + + arch/arm/configs/bcmrpi_defconfig | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig +index d4c18fa..1413673 100644 +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -527,6 +527,7 @@ CONFIG_JOYSTICK_XPAD=m + CONFIG_JOYSTICK_XPAD_FF=y + CONFIG_INPUT_TOUCHSCREEN=y + CONFIG_TOUCHSCREEN_ADS7846=m ++CONFIG_TOUCHSCREEN_EGALAX=m + CONFIG_INPUT_MISC=y + CONFIG_INPUT_AD714X=m + CONFIG_INPUT_ATI_REMOTE2=m +diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig +index 898ebd2..70a5ea3 100644 +--- a/arch/arm/configs/bcmrpi_defconfig ++++ b/arch/arm/configs/bcmrpi_defconfig +@@ -520,6 +520,7 @@ CONFIG_JOYSTICK_XPAD=m + CONFIG_JOYSTICK_XPAD_FF=y + CONFIG_INPUT_TOUCHSCREEN=y + CONFIG_TOUCHSCREEN_ADS7846=m ++CONFIG_TOUCHSCREEN_EGALAX=m + CONFIG_INPUT_MISC=y + CONFIG_INPUT_AD714X=m + CONFIG_INPUT_ATI_REMOTE2=m