summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-05-27wireless: enable in-tree rtlwifi/rtl8192cu driverrpi-4.0.y-devPeter Wu2-4/+4
The in-tree driver uses mac80211 which is compatible with 'iw' and other modern tools. In https://github.com/raspberrypi/linux/issues/369, issues with this driver were reported. These are fixed in v4.1-rc1-52-g414b7e3 (414b7e3b9ce8b0577f613e656fdbc36b34b444dd) upstream.
2015-05-27rtlwifi: rtl8192cu: Fix kernel deadlockLarry Finger1-1/+1
The USB mini-driver in rtlwifi, which is used by rtl8192cu, issues a call to usb_control_msg() with a timeout value of 0. In some instances where the interface is shutting down, this infinite wait results in a CPU deadlock. A one second timeout fixes this problem without affecting any normal operations. This bug is reported at https://bugzilla.novell.com/show_bug.cgi?id=927786. Reported-by: Bernhard Wiedemann <bwiedemann@suse.com> Tested-by: Bernhard Wiedemann <bwiedemann@suse.com> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Stable <stable@vger.kernel.org> Cc: Bernhard Wiedemann <bwiedemann@suse.com> Cc: Takashi Iwai<tiwai@suse.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> (cherry picked from commit 414b7e3b9ce8b0577f613e656fdbc36b34b444dd)
2015-05-27Merge pull request #981 from HiassofT/dt-audiorpi-4.0.yPhil Elwell3-0/+6
bcm270x: add dtparam to enable/disable onboard sound device
2015-05-26bcm270x: add dtparam for audio nodeMatthias Reichl3-0/+6
The audio node is enabled by default and can be disabled with dtparam=audio=off in config.txt
2015-05-25dts: overlay: add generic support for ads7846Noralf Trønnes2-0/+84
Add generic support for the ADS7846 touch controller. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-23vcsm: Add ioctl for custom cache flushingpopcornmix2-0/+64
2015-05-23Improve __copy_to_user and __copy_from_user performancePhil Elwell12-6/+1359
Provide a __copy_from_user that uses memcpy. On BCM2708, use optimised memcpy/memmove/memcmp/memset implementations.
2015-05-23config: Add CONFIG_FB_SSD1307=mpopcornmix2-0/+2
2015-05-23config: Add CONFIG_CIFS_UPCALLpopcornmix2-0/+2
2015-05-23Merge pull request #977 from notro/audiopopcornmix10-3/+124
Add onboard sound device to Device Tree
2015-05-21bcm2835: Add bcm2835-audio to Device TreeNoralf Trønnes1-0/+6
Add onboard sound device to Device Tree. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-21BCM270x: Add onboard sound device to Device TreeNoralf Trønnes9-3/+118
Add Device Tree support to alsa driver. Add device to Device Tree. Don't add platform devices when booting in DT mode. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-21vchiq: Change logging level for inbound dataPhil Elwell1-1/+1
2015-05-20i2c-bcm2708: When using DT, leave the GPIO setup to pinctrlPhil Elwell1-1/+2
2015-05-19Merge pull request #973 from notro/vchiqPhil Elwell10-98/+145
Enable vchiq on ARCH_BCM2835
2015-05-19bcm2835: Add bcm2835-vchiq to Device TreeNoralf Trønnes1-0/+6
Add vchiq to Device Tree. There are no kernel users yet, but it's available to userspace (vcgencmd). Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-19bcm2708: vchiq: Add Device Tree supportNoralf Trønnes4-98/+79
Turn vchiq into a driver and stop hardcoding resources. Use devm_* functions in probe path to simplify cleanup. A global variable is used to hold the register address. This is done to keep this patch as small as possible. Also make available on ARCH_BCM2835. Based on work by Lubomir Rintel. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-19BCM270x: Add vchiq device to platform file and Device TreeNoralf Trønnes5-0/+60
Prepare to turn the vchiq module into a driver. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-19BCM2708_DT: Enable mmc and fb in the CM dtsiPhil Elwell1-0/+9
2015-05-19Merge pull request #970 from notro/fbPhil Elwell12-12/+39
bcm2708_fb: Add ARCH_BCM2835 support
2015-05-18bcm2835: bcm2835_defconfig use FB_BCM2708Noralf Trønnes1-1/+1
Enable the bcm2708 framebuffer driver. Disable the simple framebuffer driver, which matches the device handed over by u-boot. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18bcm2835: Add bcm2708-fb to Device TreeNoralf Trønnes2-0/+9
Add framebuffer device to Device Tree. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18ARM: bcm2835: Use 0x4 prefix for DMA bus addresses to SDRAM.Eric Anholt1-0/+1
There exists a tiny MMU, configurable only by the VC (running the closed firmware), which maps from the ARM's physical addresses to bus addresses. These bus addresses determine the caching behavior in the VC's L1/L2 (note: separate from the ARM's L1/L2) according to the top 2 bits. The bits in the bus address mean: From the VideoCore processor: 0x0... L1 and L2 cache allocating and coherent 0x4... L1 non-allocating, but coherent. L2 allocating and coherent 0x8... L1 non-allocating, but coherent. L2 non-allocating, but coherent 0xc... SDRAM alias. Cache is bypassed. Not L1 or L2 allocating or coherent From the GPU peripherals (note: all peripherals bypass the L1 cache. The ARM will see this view once through the VC MMU): 0x0... Do not use 0x4... L1 non-allocating, and incoherent. L2 allocating and coherent. 0x8... L1 non-allocating, and incoherent. L2 non-allocating, but coherent 0xc... SDRAM alias. Cache is bypassed. Not L1 or L2 allocating or coherent The 2835 firmware always configures the MMU to turn ARM physical addresses with 0x0 top bits to 0x4, meaning present in L2 but incoherent with L1. However, any bus addresses we were generating in the kernel to be passed to a device had 0x0 bits. That would be a reserved (possibly totally incoherent) value if sent to a GPU peripheral like USB, or L1 allocating if sent to the VC (like a firmware property request). By setting dma-ranges, all of the devices below it get a dev->dma_pfn_offset, so that dma_alloc_coherent() and friends return addresses with 0x4 bits and avoid cache incoherency. This matches the behavior in the downstream 2708 kernel (see BUS_OFFSET in arch/arm/mach-bcm2708/include/mach/memory.h). Signed-off-by: Eric Anholt <eric@anholt.net> Tested-by: Noralf Trønnes <noralf@tronnes.org> Acked-by: Stephen Warren <swarren@wwwdotorg.org> Cc: popcornmix@gmail.com
2015-05-18BCM270x_DT: Add bcm2708-fb deviceNoralf Trønnes6-2/+19
Add bcm2708-fb to Device Tree and don't add the platform device when booting in DT mode. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM270x: Remove header file mach/dma.hNoralf Trønnes2-4/+0
This header file can be removed since there are no more users. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18fbdev: bcm2708_fb: Add ARCH_BCM2835 supportNoralf Trønnes1-5/+9
Add Device Tree support. Pass the device to dma_alloc_coherent() in order to get the correct bus address on ARCH_BCM2835. Use the new DMA legacy API header file. Including <mach/platform.h> is not necessary. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18fixup: restore dma-mapping.hNoralf Trønnes1-1/+17
dwc_otg has been fixed, so no need to revert 6ce0d20: ARM: dma: Use dma_pfn_offset for dma address translation The pfn_to_dma/dma_to_pfn changes that came with that commit is needed to use the 'dma-ranges' DT property on ARCH_BCM2835. dma-ranges is needed by bcm2708_fb and vchiq on ARCH_BCM2835. If not the mailbox call fails to hand over the correct bus address to videocore. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18usb: dwc_otg: Don't use dma_to_virt()Noralf Trønnes1-4/+5
Commit 6ce0d20 changes dma_to_virt() which breaks this driver. Open code the old dma_to_virt() implementation to work around this. Limit the use of __bus_to_virt() to cases where transfer_buffer_length is set and transfer_buffer is not set. This is done to increase the chance that this driver will also work on ARCH_BCM2835. transfer_buffer should not be NULL if the length is set, but the comment in the code indicates that there are situations where this might happen. drivers/usb/isp1760/isp1760-hcd.c also has a similar comment pointing to a possible: 'usb storage / SCSI bug'. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM2708_DT: Add missing CM aliasesPhil Elwell1-0/+4
2015-05-18bcm2835-mmc: Round up the overclock, so 62 works for 62.5MhzPhil Elwell1-2/+5
Also only warn once for each overclock setting.
2015-05-18bcm2835-sdhost: Round up the overclock, so 62 works for 62.5MhzPhil Elwell1-2/+5
Also only warn once for each overclock setting.
2015-05-18squash: Fix up the mmc overlayPhil Elwell2-0/+9
2015-05-18BCM2708_DT: Adding starter Compute Module DTS filesPhil Elwell3-0/+38
2015-05-18dmaengine: bcm2708: set residue_granularity fieldMatthias Reichl1-0/+2
bcm2708-dmaengine supports residue reporting at burst level but didn't report this via the residue_granularity field. Without this field set properly we get playback issues with I2S cards.
2015-05-18bcm2835-mmc: Adding overclocking optionPhil Elwell2-3/+33
Allow a different clock speed to be substitued for a requested 50MHz. This option is exposed using the "overclock_50" DT parameter. Note that the mmc interface is restricted to EVEN integer divisions of 250MHz, and the highest sensible option is 63 (250/4 = 62.5), the next being 125 (250/2) which is much too high. Use at your own risk.
2015-05-18bcm2835-sdhost: Adding overclocking optionPhil Elwell2-4/+19
Allow a different clock speed to be substitued for a requested 50MHz. This option is exposed using the "overclock_50" DT parameter. Note that the sdhost interface is restricted to integer divisions of core_freq, and the highest sensible option for a core_freq of 250MHz is 84 (250/3 = 83.3MHz), the next being 125 (250/2) which is much too high. Use at your own risk.
2015-05-18bcm2835-sdhost: Error handling fix, and code clarificationPhil Elwell1-5/+6
2015-05-18rpi-ft5406: Add touchscreen driver for pi LCD displayGordon Hollingworth4-0/+267
2015-05-18mailbox: bcm2708-vcio: Check the correct status register before writingNoralf Trønnes1-1/+2
With the VC reader blocked and the ARM writing, MAIL0_STA reads empty permanently while MAIL1_STA goes from empty (0x40000000) to non-empty (0x00000001-0x00000007) to full (0x80000008). Suggested-by: Phil Elwell <phil@raspberrypi.org> Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18mailbox: bcm2708-vcio: Allocation does not need to be atomicNoralf Trønnes1-1/+1
No need to do atomic allocation in a context that can sleep. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18bcm2835: Add mailbox bcm2708-vcio to Device TreeNoralf Trønnes1-0/+6
Add mailbox to Device Tree. There are no kernel users yet, but it's available to userspace. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18bcm2835: bcm2835_defconfig enable BCM2708_MBOXNoralf Trønnes1-0/+2
Enable the mailbox driver. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM270x_DT: Add mailbox bcm2708-vcioNoralf Trønnes3-2/+8
Add bcm2708-vcio to Device Tree and don't add the platform device when booting in DT mode. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM270x: Remove arch driver vcio.cNoralf Trønnes4-1196/+0
Remove the arch vcio.c driver and header file. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM270x: Use bcm2708-vcioNoralf Trønnes14-12/+16
Use bcm2708-vcio instead of the arch version. Change affected drivers to use linux/platform_data/mailbox-bcm2708.h Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM270x: power: Change initcall level to subsysNoralf Trønnes2-2/+10
Load ordering of modules are determined by the initcall used. If it's the same initcall level, makefile ordering decides. Now that the mailbox driver is being moved, it's no longer placed before the power driver by the linker. So use a later initcall level to let the mailbox driver load first. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18mailbox: bcm2708: Add bcm2708-vcioNoralf Trønnes4-0/+560
Copy the arch vcio.c driver to drivers/mailbox. This is done to make it available on ARCH_BCM2835. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM2708: vcio: Use device resourcesNoralf Trønnes1-61/+61
Use device resources instead of hardcoding them. Use devm_* functions where possible. Merge dev_mbox_register() with probe function. Add Device Tree support. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM2708: vcio: Do not print messages in module initNoralf Trønnes1-10/+1
It is not common practice to print messages from a module init function that only register a driver. Remove obsolete module alias. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
2015-05-18BCM2708: vcio: Only store the register base addressNoralf Trønnes1-23/+14
No need to keep pointers to the sub registers. Only store the base address. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>