https://github.com/raspberrypi/linux

sort by:
Revision Author Date Message Commit Date
d5c0e92 overlays: i2c1-bcm2708: Don't overwrite i2c1 pins node It is bad practise to overwrite an entire node in an overlay. Instead, target the node and overwrite any properties that need changing. See: https://github.com/raspberrypi/linux/pull/2118 Suggested-by: soodvarun78 <soodvarun78@gmail.com> Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:50 UTC
6344586 config: enhance DualShock3 controller support Enable rumble support in Sony HID & HID battery strength. 21 July 2017, 14:30:50 UTC
0c8e419 bcm2835-mmc: Prevent DMA race condition The end of a read operation is triggered by the completion of the DMA transfer, but writes are complete when the data IRQ is raised. The bcm2835-mmc driver contains a race between the handling of the DMA completion interrupt and the submission of the next request. Fix the race by deferring the completion of the request until the DMA transfer finishes. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:49 UTC
c336fcc bcm2835-mmc: Fix DMA usage The previous change ("bcm2835-mmc: Only claim one DMA channel") used an incorrect variable, the effect of which was to prevent DMA from being used at all. Fix that bug by using the right variable. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:49 UTC
671b5e9 config: enable generic S/PDIF codec drivers (#2104) These drivers can be used as dummy ADC/DAC drivers for attaching general codecs that don't need to be configured. This option will build 2 additional drivers, spdif_receiver and spdif_transmitter. Since these drivers have DT bindings they are handy for quick testing of I2S peripherals with simple-audio-card. eg: fragment@0 { target-path = "/"; __overlay__ { dummy_receiver: spdif-receiver { #address-cells = <0>; #size-cells = <0>; #sound-dai-cells = <0>; compatible = "linux,spdif-dir"; status = "okay"; }; }; }; Signed-off-by: Matthias Reichl <hias@horus.com> 21 July 2017, 14:30:48 UTC
e9f345c overlays: Add gpio-shutdown overlay (#2103) This overlay facilitates the addition of a powerbutton by converting GPIO edges into KEY_POWER keypresses, which can be handled by systemd-logind to shut down the system. Signed-off-by: Matthijs Kooijman <matthijs@stdin.nl> 21 July 2017, 14:30:47 UTC
772dd93 PianoPlus: Dual Mono & Dual Stereo features added (#2069) 21 July 2017, 14:30:47 UTC
6bfd2cf New i2c-rtc-gpio device overlay (#2092) Created new i2c-rtc-gpio device overlay by combining i2c-rtc and i2c-gpio. Tested with PCF2127 on CM3. 21 July 2017, 14:30:46 UTC
4ebc003 bcm2708: Drop CMA alignment from FKMS mode as well. I dropped it from KMS mode in d88274d88ed81de1ade8e18e4c0ed91792ec82ea and should have done both of them at that time. Signed-off-by: Eric Anholt <eric@anholt.net> 21 July 2017, 14:30:46 UTC
85210fe bcm2835-cpufreq: Change licence to GPLv2 Signed-off-by: Eben Upton <eben.upton@broadcom.com> Signed-off-by: Dom Cobley <dom@raspberrypi.com> 21 July 2017, 14:30:45 UTC
d62acd5 dma-bcm2708: Fix module compilation of CONFIG_DMA_BCM2708 bcm2708-dmaengine.c defines functions like bcm_dma_start which are defined as well in dma-bcm2708.h as inline versions when CONFIG_DMA_BCM2708 is not defined. This works fine when CONFIG_DMA_BCM2708 is built in, but when it is selected as module build fails with redefinition errors because in the build system when CONFIG_DMA_BCM2708 is selected as module, the macro becomes CONFIG_DMA_BCM2708_MODULE. This patch makes the header use CONFIG_DMA_BCM2708_MODULE too when available. Fixes https://github.com/raspberrypi/linux/issues/2056 Signed-off-by: Andrei Gherzan <andrei@gherzan.com> 21 July 2017, 14:30:45 UTC
1fff13b Allo Digione Driver (#2048) Driver for the Allo Digione soundcard 21 July 2017, 14:30:44 UTC
c594627 Add device tree config for htu21 See: https://github.com/raspberrypi/linux/pull/2041 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:43 UTC
5610f99 BCM270X_DT: Improve i2c-sensor and i2c-rtc overlay Use the "__dormant__" feature to permit multiple instances of each overlay, which is more useful now that changing the "reg" property also changes the node address. Although the overlay grows slightly, when applied only the requested node is included. Usage does not change, except that the "lm75addr" parameter of the i2c-sensor overlay has been deprecated in favour of the generic "addr" parameter. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:43 UTC
2e40c9f config: Adding SENSOR_JC42 The jc42 module supports a number of I2C-based temperature sensor modules. [ DM_RAID0 config lost because now selected by DM_RAID ] See: https://github.com/raspberrypi/linux/issues/2046 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:42 UTC
b69fc2c mpu6050 device tree overlay (#2031) Add overlay and config options for InvenSense MPU6050 6-axis motion detector. 21 July 2017, 14:30:42 UTC
e1118cf config: Add CONFIG_IPV6_SIT_6RD 21 July 2017, 14:30:41 UTC
75e6365 config: Add CONFIG_IPV6_ROUTE_INFO 21 July 2017, 14:30:41 UTC
422ff2a ASoC: TLV320AIC23: Unquote NULL from control name commit a03faba972cb0f9b3a46d8054e674d5492e06c38 upstream. Without this I am getting the following messages at boot on my Trimslice: tlv320aic23-codec 2-001a: Control not supported for path LLINEIN -> [NULL] -> Line Input tlv320aic23-codec 2-001a: ASoC: no dapm match for LLINEIN --> NULL --> Line Input tlv320aic23-codec 2-001a: ASoC: Failed to add route LLINEIN -> NULL -> Line Input tlv320aic23-codec 2-001a: Control not supported for path RLINEIN -> [NULL] -> Line Input tlv320aic23-codec 2-001a: ASoC: no dapm match for RLINEIN --> NULL --> Line Input tlv320aic23-codec 2-001a: ASoC: Failed to add route RLINEIN -> NULL -> Line Input tlv320aic23-codec 2-001a: Control not supported for path MICIN -> [NULL] -> Mic Input tlv320aic23-codec 2-001a: ASoC: no dapm match for MICIN --> NULL --> Mic Input tlv320aic23-codec 2-001a: ASoC: Failed to add route MICIN -> NULL -> Mic Input tegra-snd-trimslice sound: tlv320aic23-hifi <-> 70002800.i2s mapping ok Signed-off-by: Liviu Dudau <liviu@dudau.co.uk> Signed-off-by: Mark Brown <broonie@kernel.org> 21 July 2017, 14:30:40 UTC
6e87abb Add device tree overlay for GPIO connected rotary encoder. See Documentation/input/rotary-encoder.txt for more information. 21 July 2017, 14:30:40 UTC
a876cd4 overlays: Add Goodix overlay Add support for I2C connected Goodix gt9271 multiple touch controller using GPIOs 4 and 17 (pins 7 and 11 on GPIO header) for interrupt and reset. Signed-off-by: Ahmet Inan <inan@distec.de> 21 July 2017, 14:30:39 UTC
2385dac irq_bcm2836: Send event when onlining sleeping cores In order to reduce power consumption and bus traffic, it is sensible for secondary cores to enter a low-power idle state when waiting to be started. The wfe instruction causes a core to wait until an event or interrupt arrives before continuing to the next instruction. The sev instruction sends a wakeup event to the other cores, so call it from bcm2836_smp_boot_secondary, the function that wakes up the waiting cores during booting. It is harmless to use this patch without the corresponding change adding wfe to the ARMv7/ARMv8-32 stubs, but if the stubs are updated and this patch is not applied then the other cores will sleep forever. See: https://github.com/raspberrypi/linux/issues/1989 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:39 UTC
fdf388a ARM: dts: bcm283x: Reserve first page for firmware The Raspberry Pi startup stub files for multi-core BCM27XX processors make the secondary CPUs spin until the corresponding mailbox is written. These stubs are loaded at physical address 0x00000xxx (as seen by the ARMs), but this page will be reused by the kernel unless it is explicitly reserved, causing the waiting cores to execute random code. Use the /memreserve/ Device Tree directive to mark the first page as off-limits to the kernel. See: https://github.com/raspberrypi/linux/issues/1989 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:38 UTC
30730c8 BCM270X_DT: Add tmp102 to i2c sensor overlay Signed-off-by: Scott Ellis <scott@jumpnowtek.com> 21 July 2017, 14:30:38 UTC
e376ff0 config: Enable TI TMP102 temp sensor module Signed-off-by: Scott Ellis <scott@jumpnowtek.com> 21 July 2017, 14:30:37 UTC
ccfbc8d config: Add CONFIG_BMP280 (and CONFIG_BMP280_I2C) Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:37 UTC
8106cc4 BCM270X_DT: Add bme280 and bmp180 to i2c-sensor overlay Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:36 UTC
bc4ab40 Audioinjector octo : Make the playback and capture symmetric This patch ensures that the sample rate and channel count of the audioinjector octo sound card are symmetric. 21 July 2017, 14:30:36 UTC
152abdd Audioinjector : make the octo and pi sound cards have different driver names This patch gives the audioinjector octo and pi soundcards different driver names. This allows both the be loaded without clashing. 21 July 2017, 14:30:35 UTC
4f9f477 rtl8192: switch to netdev->priv_destructor() When trying to build from the rpi-4.11.y branch, I'm getting the following error : drivers/net/wireless/realtek/rtl8192cu/os_dep/linux/ioctl_cfg80211.c:3464:10: error: 'struct net_device' has no member named 'destructor' It seems to occur since this upstream commit : https://github.com/torvalds/linux/commit/cf124db566e6b036b8bcbe8decbed740bdfac8c6 [...] netdev->priv_destructor() performs all actions to free up the private resources that used to be freed by netdev->destructor(), except for free_netdev(). netdev->needs_free_netdev is a boolean that indicates whether free_netdev() should be done at the end of unregister_netdevice(). Signed-off-by: Bilal Amarni <bilal.amarni@gmail.com> 21 July 2017, 14:30:34 UTC
ac11953 ASoC: bcm2835: Enforce full symmetry bcm2835's configuration registers can't be changed when a stream is running, which means asymmetric configurations aren't supported. Channel and rate symmetry are already enforced by constraints but samplebits had been missed. As hw_params doesn't check for symmetry constraints by itself and just returns success if a stream is running this led to situations where asymmetric configurations were seeming to succeed but of course didn't work because the hardware wasn't configured at all. Fix this by adding the missing samplerate symmetry constraint. Signed-off-by: Matthias Reichl <hias@horus.com> 21 July 2017, 14:30:34 UTC
50be212 ASoC: bcm2835: Support additional samplerates up to 384kHz Sample rates are only restricted by the capabilities of the clock driver, so use SNDRV_PCM_RATE_CONTINUOUS instead of SNDRV_PCM_RATE_8000_192000. Tests (eg with pcm5122) have shown that bcm2835 works fine in 384kHz/32bit stereo mode, so change the maximum allowed rate from 192kHz to 384kHz. Signed-off-by: Matthias Reichl <hias@horus.com> 21 July 2017, 14:30:33 UTC
66106af ASoC: bcm2835: Support left/right justified and DSP modes DSP modes and left/right justified modes can be supported on bcm2835 by configuring the frame sync polarity and frame sync length registers and by adjusting the channel data position registers. Clock and frame sync polarity handling in hw_params has been refactored to make the interaction between logical rising/falling edge frame start and physical configuration (changed by normal/inverted polarity modes) clearer. Modes where the first active data bit is transmitted immediately after frame start (eg DSP mode B with slot 0 active) only work reliable if bcm2835 is configured as frame master. In frame slave mode channel swap (or shift, this isn't quite clear yet) can occur. Currently the driver only warns if an unstable configuration is detected but doensn't prevent using them. Signed-off-by: Matthias Reichl <hias@horus.com> 21 July 2017, 14:30:33 UTC
afb1c71 ASoC: bcm2835: Add support for TDM modes bcm2835 supports arbitrary positioning of channel data within a frame and thus is capable of supporting TDM modes. Since the driver is limited to 2-channel operations only TDM setups with exactly 2 active slots are supported. Logical TDM slot numbering follows the usual convention: For I2S-like modes, with a 50% duty-cycle frame clock, slots 0, 2, ... are transmitted in the first half of a frame, slots 1, 3, ... are transmitted in the second half. For DSP modes slot numbering is ascending: 0, 1, 2, 3, ... Channel position calculation has been refactored to use TDM info and moved out of hw_params. set_tdm_slot, set_bclk_ratio and hw_params now check more strictly if the configuration is valid. Illegal configurations like odd number of slots in I2S mode, data lengths exceeding slot width or frame sizes larger than the hardware limit of 1024 are rejected. Also hw_params now properly checks for errors from clk_set_rate. Allowed PCM formats are already guarded by stream constraints, thus the formats check in hw_params has been removed and data_length is now retrieved via params_width(). Also standard functions like snd_soc_params_to_bclk are now being used instead of manual calculations to make the code more readable. Special care has been taken to ensure that set_bclk_ratio works as before. The bclk ratio is mapped to a 2-channel TDM config with a slot width of half the ratio. In order to support odd ratios, which can't be expressed via a TDM config, the ratio (frame length) is stored and used by hw_params. Signed-off-by: Matthias Reichl <hias@horus.com> 21 July 2017, 14:30:32 UTC
69b9dec SQUASH: mmc: Apply ERASE_BROKEN quirks correctly Squash with: mmc: Add MMC_QUIRK_ERASE_BROKEN for some cards Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:32 UTC
021a18a overlays: README: remove vestigial SDIO parameters Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:31 UTC
5dfec3b BCM270X_DT: Add midi-uart1 overlay Add a scaler to the ttyS0 clock so that requesting 38400 baud results in an approximately 31250 baud signal. This is analagous to midi-uart0, except for ttyS0, which may be useful on Pi3 and also may avoid an issue with ttyAMA0 failing to synchronise to an active data stream. See: https://www.raspberrypi.org/forums/viewtopic.php?f=107&t=183860 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:31 UTC
d06400e serial: 8250: Fix THRE flag usage for CAP_MINI The BCM2835 MINI UART has non-standard THRE semantics. Conventionally the bit means that the FIFO is empty (although there may still be a byte in the transmit register), but on 2835 it indicates that the FIFO is not empty. This causes interrupts after every byte is transmitted, with the FIFO providing some interrupt latency tolerance. A consequence of this difference is that the usual strategy of writing multiple bytes into the TX FIFO after checking THRE once is unsafe. In the worst case of 7 bytes in the FIFO, writing 8 bytes loses all but the first since by then the FIFO is full. There is an HFIFO ("Hidden FIFO") bit which is almost what is needed, but it only adds more bytes while both THRE and TEMT are set, i.e. when the TX side is completely idle. This is unnecessarily pessimistic. Add a new special case, predicated on CAP_MINI, that loops until THRE is no longer set. With this change, the FIFO fills quickly but subsequent writes are paced by the transmission rate. See: https://github.com/raspberrypi/linux/issues/1855 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:30 UTC
1eb2efc dwc_otg: fiq_fsm: Add non-periodic TT exclusivity constraints Certain hub types do not discriminate between pipe direction (IN or OUT) when considering non-periodic transfers. Therefore these hubs get confused if multiple transfers are issued in different directions with the same device address and endpoint number. Constrain queuing non-periodic split transactions so they are performed serially in such cases. Related: https://github.com/raspberrypi/linux/issues/2024 21 July 2017, 14:30:29 UTC
d456b51 dwc_otg: add module parameter int_ep_interval_min Add a module parameter (defaulting to ignored) that clamps the polling rate of high-speed Interrupt endpoints to a minimum microframe interval. The parameter is modifiable at runtime as it is used when activating new endpoints (such as on device connect). 21 July 2017, 14:30:29 UTC
fc9cb00 config: Add CONFIG_CAN_GS_USB 21 July 2017, 14:30:28 UTC
b40f3f3 dwc_otg: fiq_fsm: Make isochronous compatibility checks work properly Get rid of the spammy printk and local pointer mangling. Also, there is a nominal benefit for using fiq_fsm for isochronous transfers in FS mode (~1.1k IRQs per second vs 2.1k IRQs per second) so remove the root port speed check. 21 July 2017, 14:30:28 UTC
a4044a2 serial: 8250: Add CAP_MINI, set for bcm2835aux commit d087e7a991f1f61ee2c07db1be7c5cc2aa373f5d upstream. The AUX/mini-UART in the BCM2835 family of procesors is a cut-down 8250 clone. In particular it is lacking support for the following features: CSTOPB PARENB PARODD CMSPAR CS5 CS6 Add a new capability (UART_CAP_MINI) that exposes the restrictions to the user of the termios API by turning off the unsupported features in the request. N.B. It is almost possible to automatically discover the missing features by reading back the LCR register, but the CSIZE bits don't cooperate (contrary to the documentation, both bits are significant, but CS5 and CS6 are mapped to CS7) and the code is much longer. See: https://github.com/raspberrypi/linux/issues/1561 Signed-off-by: Phil Elwell <phil@raspberrypi.org> Acked-by: Eric Anholt <eric@anholt.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> 21 July 2017, 14:30:27 UTC
78d631d 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 21 July 2017, 14:30:27 UTC
3bd4441 [ARM64] enable drivers for GPIO expander and vcio 21 July 2017, 14:30:26 UTC
1f7eba3 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 <phil@raspberrypi.org> 21 July 2017, 14:30:26 UTC
2006379 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 <phil@raspberrypi.org> 21 July 2017, 14:30:25 UTC
e3557cd config: Add CONFIG_I2C_ROBOTFUZZ_OSIF 21 July 2017, 14:30:24 UTC
9c3f9a7 config: Add CONFIG_TOUCHSCREEN_EDT_FT5X06 21 July 2017, 14:30:24 UTC
8128372 config: Add FB_TFT_ST7789V module 21 July 2017, 14:30:23 UTC
fb5e99a config: Add CONFIG_TOUCHSCREEN_GOODIX 21 July 2017, 14:30:23 UTC
bbdff72 dwc_otg: remove unnecessary dma-mode channel halts on disconnect interrupt Host channels are already halted in kill_urbs_in_qh_list() with the subsequent interrupt processing behaving as if the URB was dequeued via HCD callback. There's no need to clobber the host channel registers a second time as this exposes races between the driver and host channel resulting in hcd->free_hc_list becoming corrupted. 21 July 2017, 14:30:22 UTC
38adc2c dwc_otg: delete hcd->channel_lock The lock serves no purpose as it is only held while the HCD spinlock is already being held. 21 July 2017, 14:30:21 UTC
ec433ae 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 well with the FIQ running in the background, so: - Guard the disconnect callback with both the host spinlock and FIQ spinlock - Move qtd dereference in dwc_otg_handle_hc_fsm() after the early-out so we don't dereference a qtd that has gone away - Turn catch-all BUG()s in dwc_otg_handle_hc_fsm() into warnings. 21 July 2017, 14:30:21 UTC
538a327 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. The new versions should be functionally equivalent. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:20 UTC
71419dd vc4_fkms: Apply firmware overscan offset to hardware cursor 21 July 2017, 14:30:20 UTC
32b2124 squash: vc4_firmware_kms fixups 21 July 2017, 14:30:19 UTC
9982c2e 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 CRTC's atomic flush handler that moved the completion event from the proposed atomic state change to the CRTC's current state. That meant that when full screen pageflipping happened (glxgears -fullscreen in X, compton, por weston), the app would end up blocked firever waiting to draw its next frame. Signed-off-by: Eric Anholt <eric@anholt.net> 21 July 2017, 14:30:19 UTC
8904b89 drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of fkms. Trying to debug weston on fkms involved figuring out what calls I was making to the firmware. Signed-off-by: Eric Anholt <eric@anholt.net> 21 July 2017, 14:30:18 UTC
83a548e drm/vc4: Name the primary and cursor planes in fkms. This makes debugging nicer, compared to trying to remember what the IDs are. Signed-off-by: Eric Anholt <eric@anholt.net> 21 July 2017, 14:30:18 UTC
f90d9f6 drm/vc4: Add a mode for using the closed firmware for display. Signed-off-by: Eric Anholt <eric@anholt.net> 21 July 2017, 14:30:17 UTC
a3df4d5 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. Signed-off-by: Nisar Sayed <Nisar.Sayed@microchip.com> Reported-by: popcorn mix <popcornmix@gmail.com> 21 July 2017, 14:30:17 UTC
83e1965 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. Signed-off-by: popcornmix <popcornmix@gmail.com> 21 July 2017, 14:30:16 UTC
1af7487 fiq_fsm: Use correct states when starting isoc OUT transfers In fiq_fsm_start_next_periodic() if an isochronous OUT transfer was selected, no regard was given as to whether this was a single-packet transfer or a multi-packet staged transfer. For single-packet transfers, this had the effect of repeatedly sending OUT packets with bogus data and lengths. Eventually if the channel was repeatedly enabled enough times, this would lock up the OTG core and no further bus transfers would happen. Set the FSM state up properly if we select a single-packet transfer. Fixes https://github.com/raspberrypi/linux/issues/1842 21 July 2017, 14:30:16 UTC
2d5be3a 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. Also report when mapping fails. Signed-off-by: popcornmix <popcornmix@gmail.com> 21 July 2017, 14:30:15 UTC
5ab62a4 dwc_otg: fix split transaction data toggle handling around dequeues See https://github.com/raspberrypi/linux/issues/1709 Fix several issues regarding endpoint state when URBs are dequeued - If the HCD is disconnected, flush FIQ-enabled channels properly - Save the data toggle state for bulk endpoints if the last transfer from an endpoint where URBs were dequeued returned a data packet - Reset hc->start_pkt_count properly in assign_and_init_hc() 21 July 2017, 14:30:14 UTC
bef8fb8 dwc_otg: make nak_holdoff work as intended with empty queues If URBs reading from non-periodic split endpoints were dequeued and the last transfer from the endpoint was a NAK handshake, the resulting qh->nak_frame value was stale which would result in unnecessarily long polling intervals for the first subsequent transfer with a fresh URB. Fixup qh->nak_frame in dwc_otg_hcd_urb_dequeue and also guard against a case where a single URB is submitted to the endpoint, a NAK was received on the transfer immediately prior to receiving data and the device subsequently resubmits another URB past the qh->nak_frame interval. Fixes https://github.com/raspberrypi/linux/issues/1709 21 July 2017, 14:30:14 UTC
ea1074f 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 CXD2880 device driver with TV HAT. Add the following line to /boot/config.txt to enable TV HAT: dtoverlay=rpi-tv Reboot Raspberry Pi and check the existance of /proc/device-tree/soc/spi@7e204000/cxd2880@0. If exists, the installation is successful. you should be able to find the following three files. /dev/dvb/adapter0/frontend0 /dev/dvb/adapter0/demux0 /dev/dvb/adapter0/dvr0 Signed-off-by: Yasunari Takiguchi <Yasunari.Takiguchi@sony.com> Signed-off-by: Masayuki Yamamoto <Masayuki.Yamamoto@sony.com> Signed-off-by: Hideki Nozawa <Hideki.Nozawa@sony.com> Signed-off-by: Kota Yonezawa <Kota.Yonezawa@sony.com> Signed-off-by: Toshihiko Matsumoto <Toshihiko.Matsumoto@sony.com> Signed-off-by: Satoshi Watanabe <Satoshi.C.Watanabe@sony.com> 21 July 2017, 14:30:13 UTC
4cc5ed6 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. Signed-off-by: Yasunari Takiguchi <Yasunari.Takiguchi@sony.com> Signed-off-by: Masayuki Yamamoto <Masayuki.Yamamoto@sony.com> Signed-off-by: Hideki Nozawa <Hideki.Nozawa@sony.com> Signed-off-by: Kota Yonezawa <Kota.Yonezawa@sony.com> Signed-off-by: Toshihiko Matsumoto <Toshihiko.Matsumoto@sony.com> Signed-off-by: Satoshi Watanabe <Satoshi.C.Watanabe@sony.com> 21 July 2017, 14:30:13 UTC
744ba40 Add clock changes and mute gpios (#1938) Also improve code style and adhere to ALSA coding conventions. Signed-off-by: Baswaraj K <jaikumar@cem-solutions.net> Reviewed-by: Vijay Kumar B. <vijaykumar@zilogic.com> Reviewed-by: Raashid Muhammed <raashidmuhammed@zilogic.com> 21 July 2017, 14:30:12 UTC
223866f Add support for new clock rate and mute gpios. Signed-off-by: Baswaraj K <jaikumar@cem-solutions.net> Reviewed-by: Deepak <deepak@zilogic.com> Reviewed-by: BabuSubashChandar <babusubashchandar@zilogic.com> 21 July 2017, 14:30:12 UTC
b25036f Add support for Allo Boss DAC add-on board for Raspberry Pi. (#1924) Signed-off-by: Baswaraj K <jaikumar@cem-solutions.net> Reviewed-by: Deepak <deepak@zilogic.com> Reviewed-by: BabuSubashChandar <babusubashchandar@zilogic.com> 21 July 2017, 14:30:11 UTC
79f0d4d 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. Signed-off-by: Baswaraj K <jaikumar@cem-solutions.net> Reviewed-by: Vijay Kumar B. <vijaykumar@zilogic.com> Reviewed-by: Raashid Muhammed <raashidmuhammed@zilogic.com> 21 July 2017, 14:30:11 UTC
20d83f4 Driver support for Google voiceHAT soundcard. 21 July 2017, 14:30:10 UTC
c797f2d 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) : 96, 48, 32, 24, 16, 8, 88.2, 44.1, 29.4, 22.05, 14.7 Reference the bcm270x DT regulators in the overlay. This patch adds a reset GPIO for the AudioInjector.net octo sound card. 21 July 2017, 14:30:09 UTC
5696ef2 config: Add back MMC_BCM2835_DMA 21 July 2017, 14:30:09 UTC
4a423e7 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. Remove an accidental initialisation (a copy-and-paste error) that sets it regardless, which has been seen to cause crashes with the gpio expander driver. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:08 UTC
38340e4 BCM270X_DT: Allow multiple instances of w1-gpio overlays Upcoming firmware will modify the address portion of node names when their "reg" property is written by a dtparam. Modify the w1-gpio overlays to write the gpiopin parameter value to "reg" properties, so that multiple instances can be loaded simultaneously. Note: The value of the "address" is unimportant - the w1 subsystem assigns instance numbers to buses sequentially from 1, and it is not necessary to know which bus a device is on in order to find it. 21 July 2017, 14:30:08 UTC
41b3e08 BCM270X_DT: Add lm75 to i2c-sensor overlay See: https://www.raspberrypi.org/forums/viewtopic.php?f=107&t=177236 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:07 UTC
529aaf8 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. Resolves https://github.com/raspberrypi/linux/issues/1876 21 July 2017, 14:30:07 UTC
8d98007 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 dedicated compatible strings on bcm2836 and bcm2837, even though the downstream driver doesn't support them. The Pi2 DTB uses "brcm,bcm2836-thermal", so the driver doesn't load. The Pi3 DTB doesn't override the base value, but the arm64 Pi3 support uses "brcm,bcm2837-thermal". Solve the documentation problem by adding "brcm,bcm2836-thermal" and "brcm,bcm2837-thermal" as alternative compatible strings for the bcm2835-thermal driver. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:06 UTC
940f718 bcm2835-sdhost: mmc_card_blockaddr fix Get the definition of mmc_card_blockaddr from drivers/mmc/core/card.h. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:06 UTC
52c4b18 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, and set it for cards of that type. Signed-off-by: Phil Elwell <phil@raspberrypi.org> mmc: Apply QUIRK_BROKEN_ERASE to other capacities Signed-off-by: Phil Elwell <phil@raspberrypi.org> mmc: Add card_quirks module parameter, log quirks Use mmc_block.card_quirks to override the quirks for all SD or MMC cards. The value is a bitfield using the bit positions defined in include/linux/mmc/card.h. If the module parameter is placed in the kernel command line (or bootargs) stored on the card then, assuming the device only has one SD card interface, the override effectively becomes card-specific. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:05 UTC
2f41c26 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 the bcm2835-mmc driver. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:05 UTC
86ff931 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 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:04 UTC
4575781 mmc: read mmc alias from device tree To get the SD/MMC host device ID, read the alias from the device tree. This is useful in case a SoC has multipe SD/MMC host controllers while the second controller should logically be the first device (e.g. if the second controller is connected to an internal eMMC). Combined with block device numbering using MMC/SD host device ID, this results in predictable name assignment of the internal eMMC block device. Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Dmitry Torokhov <dtor@chromium.org> [dianders: rebase + roll in http://crosreview.com/259916] Signed-off-by: Douglas Anderson <dianders@chromium.org> 21 July 2017, 14:30:03 UTC
b24e557 mkknlimg: Find some more downstream-only strings See: https://github.com/raspberrypi/linux/issues/1920 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:03 UTC
581ebb3 BCM270X_DT: Enable AUX interrupt controller in DT See: https://github.com/raspberrypi/linux/issues/1484 https://github.com/raspberrypi/linux/issues/1573 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:02 UTC
20699c2 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 controller to avoid sharing problems. See: https://github.com/raspberrypi/linux/issues/1484 https://github.com/raspberrypi/linux/issues/1573 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:02 UTC
9d6d67c 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 can use the driver. Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:01 UTC
4491d29 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. See: https://github.com/raspberrypi/linux/issues/1897 Signed-off-by: Phil Elwell <phil@raspberrypi.org> 21 July 2017, 14:30:01 UTC
5af260d config: disable MMC driver temporarily for now. Currently causes a breakage to sdhost driver. However when MMC is disabled Pi3 wifi will not work 21 July 2017, 14:30:00 UTC
18cb72f 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. The firmware treated it modulo-8 anyway, but was logging an assert every time. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> 21 July 2017, 14:30:00 UTC
b17ef8a BCM270X_DT: Invert Pi3 power LED to match fw change Firmware expgpio driver reworked due to complaint over hotplug detect. Requires power LED to change sense as firmware is no longer inverting the read value. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> 21 July 2017, 14:29:59 UTC
0ab43d7 pinctrl-bcm2835: Fix interrupt handling for GPIOs 28-31 and 46-53 Contrary to the documentation, the BCM2835 GPIO controller actually has four interrupt lines - one each for the three IRQ groups and one common. Rather confusingly, the GPIO interrupt groups don't correspond directly with the GPIO control banks. Instead, GPIOs 0-27 generate IRQ GPIO0, 28-45 GPIO1 and 46-53 GPIO2. Awkwardly, the GPIOS for IRQ GPIO1 straddle two 32-entry GPIO banks, so it is cleaner to split out a function to process the interrupts for a single GPIO bank. This bug has only just been observed because GPIOs above 27 can only be accessed on an old Raspberry Pi with the optional P5 header fitted, where the pins are often used for I2S instead. 21 July 2017, 14:29:59 UTC
f5abd50 clk: bcm2835: Mark GPIO clocks enabled at boot as critical. These divide off of PLLD_PER and are used for the ethernet and wifi PHYs source PLLs. Neither of them is currently represented by a phy device that would grab the clock for us. This keeps other drivers from killing the networking PHYs when they disable their own clocks and trigger PLLD_PER's refcount going to 0. v2: Skip marking as critical if they aren't on at boot. Signed-off-by: Eric Anholt <eric@anholt.net> 21 July 2017, 14:29:58 UTC
67674d8 build/arm64: Add rules for .dtbo files for dts overlays We now create overlays as .dtbo files. Signed-off-by: Khem Raj <raj.khem@gmail.com> 21 July 2017, 14:29:58 UTC
085f3cb ARM64: Force hardware emulation of deprecated instructions. 21 July 2017, 14:29:57 UTC
e6b06f4 ARM64: Enable DWC_OTG Driver In ARM64 Build Config(bcmrpi3_defconfig) Signed-off-by: Michael Zoran <mzoran@crowfest.net> 21 July 2017, 14:29:57 UTC
d230a37 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 at a time. This reduces the need for FIQ. Signed-off-by: Michael Zoran <mzoran@crowfest.net> 21 July 2017, 14:29:56 UTC
back to top