linux-4.9.git
7 years agodrm/tinydrm: Add helper functions
Noralf Trønnes [Sat, 21 Jan 2017 23:19:51 +0000 (00:19 +0100)]
drm/tinydrm: Add helper functions

Add common functionality needed by many tinydrm drivers.

Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Thierry Reding <treding@nvidia.com>
[rebased on 4.9]
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
7 years agodrm: Add DRM support for tiny LCD displays
Noralf Trønnes [Sat, 21 Jan 2017 23:15:00 +0000 (00:15 +0100)]
drm: Add DRM support for tiny LCD displays

tinydrm provides helpers for very simple displays that can use
CMA backed framebuffers and need flushing on changes.

Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Thierry Reding <treding@nvidia.com>
[rebased on 4.9]
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
7 years agodrm: debugfs: Remove all files automatically on cleanup
Noralf Trønnes [Thu, 26 Jan 2017 22:56:03 +0000 (23:56 +0100)]
drm: debugfs: Remove all files automatically on cleanup

Instead of having the drivers call drm_debugfs_remove_files() in
their drm_driver->debugfs_cleanup hook, do it automatically by
traversing minor->debugfs_list.
Also use debugfs_remove_recursive() so drivers who add their own
debugfs files don't have to keep track of them for removal.

Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20170126225621.12314-2-noralf@tronnes.org
[rebased on 4.9]
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
7 years agooverlays: i2c1-bcm2708: Don't overwrite i2c1 pins node
Phil Elwell [Wed, 19 Jul 2017 14:20:50 +0000 (15:20 +0100)]
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>
7 years agobcm2835-mmc: Prevent DMA race condition
Phil Elwell [Tue, 18 Jul 2017 14:30:48 +0000 (15:30 +0100)]
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>
7 years agoconfig: enhance DualShock3 controller support
Conn [Mon, 17 Jul 2017 02:25:43 +0000 (03:25 +0100)]
config: enhance DualShock3 controller support

Enable rumble support in Sony HID & HID battery strength.

7 years agobcm2835-mmc: Fix DMA usage
Phil Elwell [Fri, 14 Jul 2017 11:59:55 +0000 (12:59 +0100)]
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>
7 years agoconfig: enable generic S/PDIF codec drivers (#2104)
Matthias Reichl [Mon, 10 Jul 2017 09:05:17 +0000 (11:05 +0200)]
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>
7 years agooverlays: Add gpio-shutdown overlay (#2103)
Matthijs Kooijman [Sun, 9 Jul 2017 13:15:22 +0000 (15:15 +0200)]
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>
7 years agodrm/vc4: Add support for setting DPMS in firmwarekms.
Eric Anholt [Thu, 6 Jul 2017 18:45:48 +0000 (11:45 -0700)]
drm/vc4: Add support for setting DPMS in firmwarekms.

This ensures that the screen goes blank during DPMS (screensaver),
including the cursor.  Planes don't necessarily get disabled during
CRTC disable, so we need to be careful to not leave them on or turn
them back on early.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agodrm: allow changing DPMS mode
Marta Lofstedt [Mon, 5 Dec 2016 12:04:08 +0000 (14:04 +0200)]
drm: allow changing DPMS mode

The drm_atomic_helper_connector_dpms
will set the connector back the old DPMS state
before returning. This makes it impossible to change
DPMS state of the connector.

Fixes: 0853695c3ba46f97dfc0b5885f7b7e640ca212dd
v2: edit of commit message
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Eric Engestrom <eric.engestrom@imgtec.com>
Cc: Sean Paul <seanpaul@chromium.org>
Cc: dri-devel@lists.freedesktop.org
Cc: <drm-intel-fixes@lists.freedesktop.org>
Signed-off-by: Marta Lofstedt <marta.lofstedt@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161205120408.13056-1-marta.lofstedt@intel.com
(cherry picked from commit 8f5040e421ca4bbd8cd5216dec509da188eb74bc)

7 years agoPianoPlus: Dual Mono & Dual Stereo features added (#2069)
Allo [Mon, 3 Jul 2017 10:15:20 +0000 (15:45 +0530)]
PianoPlus: Dual Mono & Dual Stereo features added (#2069)

7 years agoNew i2c-rtc-gpio device overlay (#2092)
Steve Conner [Thu, 29 Jun 2017 14:56:19 +0000 (15:56 +0100)]
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.

7 years agommc: Apply ERASE_BROKEN quirks correctly
Phil Elwell [Thu, 23 Jun 2016 15:37:46 +0000 (16:37 +0100)]
mmc: Apply ERASE_BROKEN quirks correctly

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agoserial: 8250: Fix THRE flag usage for CAP_MINI
Phil Elwell [Wed, 21 Jun 2017 16:19:04 +0000 (17:19 +0100)]
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>
7 years agobcm2708: Drop CMA alignment from FKMS mode as well.
Eric Anholt [Wed, 21 Jun 2017 16:03:51 +0000 (09:03 -0700)]
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>
7 years agobcm2835-cpufreq: Change licence to GPLv2
popcornmix [Tue, 20 Jun 2017 16:51:47 +0000 (17:51 +0100)]
bcm2835-cpufreq: Change licence to GPLv2

Signed-off-by: Eben Upton <eben.upton@broadcom.com>
Signed-off-by: Dom Cobley <dom@raspberrypi.com>
7 years agodwc_otg: fiq_fsm: Add non-periodic TT exclusivity constraints
P33M [Tue, 20 Jun 2017 12:44:01 +0000 (13:44 +0100)]
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

7 years agoUSB: serial: ch341: change initial line-control settings
Johan Hovold [Fri, 6 Jan 2017 18:15:23 +0000 (19:15 +0100)]
USB: serial: ch341: change initial line-control settings

commit 7c61b0d5e82bfe29b8dda55745afbf65b6ccc901 upstream.

Some CH340 devices appear unable to change the initial LCR settings, so
set a sane 8N1 default during probe to enable basic support for such
devices.

Also drop a redundant LCR read during device initialisation.

Signed-off-by: Johan Hovold <johan@kernel.org>
7 years agodrm/vc4: Add FB modifier support to firmwarekms.
Eric Anholt [Wed, 7 Jun 2017 21:39:49 +0000 (14:39 -0700)]
drm/vc4: Add FB modifier support to firmwarekms.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agodrm/vc4: Add get/set tiling ioctls.
Eric Anholt [Mon, 5 Jun 2017 21:00:45 +0000 (14:00 -0700)]
drm/vc4: Add get/set tiling ioctls.

This allows mesa to set the tiling format for a BO and have that
tiling format be respected by mesa on the other side of an
import/export (and by vc4 scanout in the kernel), without defining a
protocol to pass the tiling through userspace.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agodrm/vc4: Add T-format scanout support.
Eric Anholt [Mon, 5 Jun 2017 19:16:10 +0000 (12:16 -0700)]
drm/vc4: Add T-format scanout support.

The T tiling format is what V3D uses for textures, with no raster
support at all until later revisions of the hardware (and always at a
large 3D performance penalty).  If we can't scan out V3D's format,
then we often need to do a relayout at some stage of the pipeline,
either right before texturing from the scanout buffer (common in X11
without a compositor) or between a tiled screen buffer right before
scanout (an option I've considered in trying to resolve this
inconsistency, but which means needing to use the dirty fb ioctl and
having some update policy).

T-format scanout lets us avoid either of those shadow copies, for a
massive, obvious performance improvement to X11 window dragging
without a compositor.  Unfortunately, enabling a compositor to work
around the discrepancy has turned out to be too costly in memory
consumption for the Raspbian distribution.

Because the HVS operates a scanline at a time, compositing from T does
increase the memory bandwidth cost of scanout.  On my 1920x1080@32bpp
display on a RPi3, we go from about 15% of system memory bandwidth
with linear to about 20% with tiled.  However, for X11 this still ends
up being a huge performance win in active usage.

This patch doesn't yet handle src_x/src_y offsetting within the tiled
buffer.  However, we fail to do so for untiled buffers already.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agoRevert "drm/vc4: Add T-format scanout support."
popcornmix [Tue, 13 Jun 2017 14:06:25 +0000 (15:06 +0100)]
Revert "drm/vc4: Add T-format scanout support."

This reverts commit 85e9ae254717d2e4a313945a465230a3102cad42.

7 years agoRevert "drm/vc4: Add get/set tiling ioctls."
popcornmix [Tue, 13 Jun 2017 14:06:24 +0000 (15:06 +0100)]
Revert "drm/vc4: Add get/set tiling ioctls."

This reverts commit 3ea95503a626b7e4157afa0745d11908546654b1.

7 years agoRevert "drm/vc4: Add FB modifier support to firmwarekms."
popcornmix [Tue, 13 Jun 2017 14:06:22 +0000 (15:06 +0100)]
Revert "drm/vc4: Add FB modifier support to firmwarekms."

This reverts commit 9183dfdbf2cb3ec8e981204847b345f7ab95662d.

7 years agodwc_otg: add module parameter int_ep_interval_min
P33M [Mon, 12 Jun 2017 15:10:03 +0000 (16:10 +0100)]
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).

7 years agoconfig: Add CONFIG_CAN_GS_USB
popcornmix [Mon, 12 Jun 2017 12:05:43 +0000 (13:05 +0100)]
config: Add CONFIG_CAN_GS_USB

7 years agodrm/vc4: Add FB modifier support to firmwarekms.
Eric Anholt [Wed, 7 Jun 2017 21:39:49 +0000 (14:39 -0700)]
drm/vc4: Add FB modifier support to firmwarekms.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agodrm/vc4: Add get/set tiling ioctls.
Eric Anholt [Mon, 5 Jun 2017 21:00:45 +0000 (14:00 -0700)]
drm/vc4: Add get/set tiling ioctls.

This allows mesa to set the tiling format for a BO and have that
tiling format be respected by mesa on the other side of an
import/export (and by vc4 scanout in the kernel), without defining a
protocol to pass the tiling through userspace.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agodrm/vc4: Add T-format scanout support.
Eric Anholt [Mon, 5 Jun 2017 19:16:10 +0000 (12:16 -0700)]
drm/vc4: Add T-format scanout support.

The T tiling format is what V3D uses for textures, with no raster
support at all until later revisions of the hardware (and always at a
large 3D performance penalty).  If we can't scan out V3D's format,
then we often need to do a relayout at some stage of the pipeline,
either right before texturing from the scanout buffer (common in X11
without a compositor) or between a tiled screen buffer right before
scanout (an option I've considered in trying to resolve this
inconsistency, but which means needing to use the dirty fb ioctl and
having some update policy).

T-format scanout lets us avoid either of those shadow copies, for a
massive, obvious performance improvement to X11 window dragging
without a compositor.  Unfortunately, enabling a compositor to work
around the discrepancy has turned out to be too costly in memory
consumption for the Raspbian distribution.

Because the HVS operates a scanline at a time, compositing from T does
increase the memory bandwidth cost of scanout.  On my 1920x1080@32bpp
display on a RPi3, we go from about 15% of system memory bandwidth
with linear to about 20% with tiled.  However, for X11 this still ends
up being a huge performance win in active usage.

This patch doesn't yet handle src_x/src_y offsetting within the tiled
buffer.  However, we fail to do so for untiled buffers already.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agooverlays: Fix i2c-rtc order and fragment numbering
Phil Elwell [Wed, 7 Jun 2017 07:53:36 +0000 (08:53 +0100)]
overlays: Fix i2c-rtc order and fragment numbering

See: https://github.com/raspberrypi/linux/issues/2059

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agodma-bcm2708: Fix module compilation of CONFIG_DMA_BCM2708
Andrei Gherzan [Mon, 5 Jun 2017 15:40:38 +0000 (16:40 +0100)]
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>
7 years agoBCM270X_DT: Add midi-uart1 overlay
Phil Elwell [Fri, 26 May 2017 12:03:41 +0000 (13:03 +0100)]
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>
7 years agocgroup_get() expected to be called only on live cgroups and triggers
Tejun Heo [Fri, 28 Apr 2017 19:14:55 +0000 (15:14 -0400)]
cgroup_get() expected to be called only on live cgroups and triggers
warning on a dead cgroup; however, cgroup_sk_alloc() may be called
while cloning a socket which is left in an empty and removed cgroup
and thus may legitimately duplicate its reference on a dead cgroup.
This currently triggers the following warning spuriously.

 WARNING: CPU: 14 PID: 0 at kernel/cgroup.c:490 cgroup_get+0x55/0x60
 ...
  [<ffffffff8107e123>] __warn+0xd3/0xf0
  [<ffffffff8107e20e>] warn_slowpath_null+0x1e/0x20
  [<ffffffff810ff465>] cgroup_get+0x55/0x60
  [<ffffffff81106061>] cgroup_sk_alloc+0x51/0xe0
  [<ffffffff81761beb>] sk_clone_lock+0x2db/0x390
  [<ffffffff817cce06>] inet_csk_clone_lock+0x16/0xc0
  [<ffffffff817e8173>] tcp_create_openreq_child+0x23/0x4b0
  [<ffffffff818601a1>] tcp_v6_syn_recv_sock+0x91/0x670
  [<ffffffff817e8b16>] tcp_check_req+0x3a6/0x4e0
  [<ffffffff81861ba3>] tcp_v6_rcv+0x693/0xa00
  [<ffffffff81837429>] ip6_input_finish+0x59/0x3e0
  [<ffffffff81837cb2>] ip6_input+0x32/0xb0
  [<ffffffff81837387>] ip6_rcv_finish+0x57/0xa0
  [<ffffffff81837ac8>] ipv6_rcv+0x318/0x4d0
  [<ffffffff817778c7>] __netif_receive_skb_core+0x2d7/0x9a0
  [<ffffffff81777fa6>] __netif_receive_skb+0x16/0x70
  [<ffffffff81778023>] netif_receive_skb_internal+0x23/0x80
  [<ffffffff817787d8>] napi_gro_frags+0x208/0x270
  [<ffffffff8168a9ec>] mlx4_en_process_rx_cq+0x74c/0xf40
  [<ffffffff8168b270>] mlx4_en_poll_rx_cq+0x30/0x90
  [<ffffffff81778b30>] net_rx_action+0x210/0x350
  [<ffffffff8188c426>] __do_softirq+0x106/0x2c7
  [<ffffffff81082bad>] irq_exit+0x9d/0xa0 [<ffffffff8188c0e4>] do_IRQ+0x54/0xd0
  [<ffffffff8188a63f>] common_interrupt+0x7f/0x7f <EOI>
  [<ffffffff8173d7e7>] cpuidle_enter+0x17/0x20
  [<ffffffff810bdfd9>] cpu_startup_entry+0x2a9/0x2f0
  [<ffffffff8103edd1>] start_secondary+0xf1/0x100

This patch renames the existing cgroup_get() with the dead cgroup
warning to cgroup_get_live() after cgroup_kn_lock_live() and
introduces the new cgroup_get() which doesn't check whether the cgroup
is live or dead.

All existing cgroup_get() users except for cgroup_sk_alloc() are
converted to use cgroup_get_live().

Fixes: d979a39d7242 ("cgroup: duplicate cgroup reference when cloning sockets")
Cc: stable@vger.kernel.org # v4.5+
Cc: Johannes Weiner <hannes@cmpxchg.org>
Reported-by: Chris Mason <clm@fb.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
7 years agoAllo Digione Driver (#2048)
sandeepal [Fri, 2 Jun 2017 13:29:46 +0000 (18:59 +0530)]
Allo Digione Driver (#2048)

Driver for the Allo Digione soundcard

7 years agodwc_otg: fiq_fsm: Make isochronous compatibility checks work properly
P33M [Fri, 26 May 2017 11:50:31 +0000 (12:50 +0100)]
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.

7 years agoAdd device tree config for htu21
Stefan Tatschner [Mon, 29 May 2017 19:46:16 +0000 (21:46 +0200)]
Add device tree config for htu21

See: https://github.com/raspberrypi/linux/pull/2041

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agoBCM270X_DT: Improve i2c-sensor and i2c-rtc overlay
Phil Elwell [Wed, 31 May 2017 14:27:39 +0000 (15:27 +0100)]
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>
7 years agoconfig: Adding SENSOR_JC42
Phil Elwell [Wed, 31 May 2017 08:33:55 +0000 (09:33 +0100)]
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>
7 years agodwc_otg: make periodic scheduling behave properly for FS buses
P33M [Thu, 25 May 2017 15:04:53 +0000 (16:04 +0100)]
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

7 years agohid: Reduce default mouse polling interval to 60Hz
popcornmix [Mon, 14 Jul 2014 21:02:09 +0000 (22:02 +0100)]
hid: Reduce default mouse polling interval to 60Hz

Reduces overhead when using X

7 years agoHID: usbhid: extend polling interval configuration to joysticks
Tobias Jakobi [Sat, 25 Feb 2017 19:27:27 +0000 (20:27 +0100)]
HID: usbhid: extend polling interval configuration to joysticks

For mouse devices we can currently change the polling interval
via usbhid.mousepoll. Implement the same thing for joysticks, so
users can reduce input latency this way.

This has been tested with a Logitech RumblePad 2 with jspoll=2,
resulting in a polling rate of 500Hz (verified with evhz).

Signed-off-by: Tobias Jakobi <tjakobi@math.uni-bielefeld.de>
Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
7 years agoRevert "hid: Reduce default mouse polling interval to 60Hz"
popcornmix [Wed, 24 May 2017 17:06:02 +0000 (18:06 +0100)]
Revert "hid: Reduce default mouse polling interval to 60Hz"

This reverts commit b45c0448b60d691508251cdccf242ea43bbabb14.

7 years agoclk: bcm2835: Minimise clock jitter for PCM clock
Phil Elwell [Mon, 22 May 2017 12:56:41 +0000 (13:56 +0100)]
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>
7 years agompu6050 device tree overlay (#2031)
Anton Onishchenko [Tue, 23 May 2017 15:55:46 +0000 (18:55 +0300)]
mpu6050 device tree overlay (#2031)

Add overlay and config options for InvenSense MPU6050 6-axis motion
detector.

7 years agoconfig: Add CONFIG_IPV6_SIT_6RD
popcornmix [Mon, 22 May 2017 12:35:28 +0000 (13:35 +0100)]
config: Add CONFIG_IPV6_SIT_6RD

7 years agoconfig: Add CONFIG_IPV6_ROUTE_INFO
popcornmix [Mon, 22 May 2017 14:28:27 +0000 (15:28 +0100)]
config: Add CONFIG_IPV6_ROUTE_INFO

7 years agoASoC: TLV320AIC23: Unquote NULL from control name
Liviu Dudau [Wed, 1 Mar 2017 12:26:28 +0000 (12:26 +0000)]
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>
7 years agooverlays: README: remove vestigial SDIO parameters
Phil Elwell [Sat, 20 May 2017 21:10:14 +0000 (22:10 +0100)]
overlays: README: remove vestigial SDIO parameters

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agousb/serial/ch341: Add parity support
Karl Palsson [Tue, 18 Mar 2014 23:33:27 +0000 (23:33 +0000)]
usb/serial/ch341: Add parity support

Based on wireshark packet traces from a windows machine.

ch340 and ch341 both seem to support all parity modes, but only the ch341
appears to support variable data bits and variable stop bits, so those are left
unimplemented, as before.

Tested on a generic usb-rs485 dongle with the chip label scratched off, and
some Modbus/RTU devices that required various parity settings.

Signed-off-by: Karl Palsson <karlp@tweak.net.au>
7 years agoconfig: Add FB_TFT_ST7789V module
popcornmix [Thu, 18 May 2017 10:40:43 +0000 (11:40 +0100)]
config: Add FB_TFT_ST7789V module

7 years agoserial: 8250: Add CAP_MINI, set for bcm2835aux
Phil Elwell [Fri, 19 May 2017 14:07:27 +0000 (15:07 +0100)]
serial: 8250: Add CAP_MINI, set for bcm2835aux

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>
7 years agoserial: 8250: Add IrDA to UART capabilities
Ed Blake [Thu, 10 Nov 2016 18:07:54 +0000 (18:07 +0000)]
serial: 8250: Add IrDA to UART capabilities

commit 98838d95075a5295f3478ceba18bcccf472e30f4 upstream.

Add an IrDA UART capability flag and change the type of
uart_8250_port.capabilities to be u32 rather than unsigned short to
accommodate the additional flag.

Signed-off-by: Ed Blake <ed.blake@imgtec.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
7 years agoAdd device tree overlay for GPIO connected rotary encoder.
chenzhiwo [Wed, 17 May 2017 08:34:57 +0000 (16:34 +0800)]
Add device tree overlay for GPIO connected rotary encoder.
See Documentation/input/rotary-encoder.txt for more information.

7 years agoconfig: Add CONFIG_I2C_ROBOTFUZZ_OSIF
popcornmix [Tue, 16 May 2017 18:34:52 +0000 (19:34 +0100)]
config: Add CONFIG_I2C_ROBOTFUZZ_OSIF

7 years agoconfig: Add CONFIG_TOUCHSCREEN_EDT_FT5X06
popcornmix [Tue, 16 May 2017 14:58:00 +0000 (15:58 +0100)]
config: Add CONFIG_TOUCHSCREEN_EDT_FT5X06

7 years agoconfig: Drop CONFIG_TOUCHSCREEN_EKTF2127
popcornmix [Tue, 16 May 2017 15:55:36 +0000 (16:55 +0100)]
config: Drop CONFIG_TOUCHSCREEN_EKTF2127

7 years agooverlays: Add Goodix overlay
Ahmet Inan [Mon, 15 May 2017 15:10:53 +0000 (17:10 +0200)]
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>
7 years agoconfig: Add Goodix touch controller module
Ahmet Inan [Mon, 15 May 2017 14:55:56 +0000 (16:55 +0200)]
config: Add Goodix touch controller module

Signed-off-by: Ahmet Inan <inan@distec.de>
7 years agoBCM270X: Drop position requirement for CMA in VC4 overlay.
Eric Anholt [Mon, 15 May 2017 18:35:13 +0000 (11:35 -0700)]
BCM270X: Drop position requirement for CMA in VC4 overlay.

No longer necessary since 2aefcd576195a739a7a256099571c9c4a401005f,
and will probably let peeople that want to choose a larger CMA
allocation (particularly on pi0/1).

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agodrm/vc4: Mark the device as active when enabling runtime PM.
Eric Anholt [Mon, 15 May 2017 16:28:36 +0000 (09:28 -0700)]
drm/vc4: Mark the device as active when enabling runtime PM.

Failing to do so meant that we got a resume() callback on first use of
the device, so we would leak the bin BO that we allocated during
probe.

Signed-off-by: Eric Anholt <eric@anholt.net>
Fixes: 553c942f8b2c ("drm/vc4: Allow using more than 256MB of CMA memory.")
7 years agodwc_otg: remove unnecessary dma-mode channel halts on disconnect interrupt
P33M [Mon, 15 May 2017 13:51:42 +0000 (14:51 +0100)]
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.

7 years agodwc_otg: delete hcd->channel_lock
P33M [Mon, 15 May 2017 13:27:48 +0000 (14:27 +0100)]
dwc_otg: delete hcd->channel_lock

The lock serves no purpose as it is only held while the HCD spinlock
is already being held.

7 years agodwc_otg: fix several potential crash sources
P33M [Fri, 12 May 2017 11:24:00 +0000 (12:24 +0100)]
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.

7 years agoSQUASH: BCM270X_DT: Fix typo in mmc overlay
Phil Elwell [Thu, 11 May 2017 21:00:20 +0000 (22:00 +0100)]
SQUASH: BCM270X_DT: Fix typo in mmc overlay

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agoBCM270X_DT: Tidy up mmc, sdhost, sdio overlays
Phil Elwell [Thu, 11 May 2017 15:58:16 +0000 (16:58 +0100)]
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>
7 years agodwcotg: Allow to build without FIQ on ARM64
popcornmix [Wed, 10 May 2017 11:47:46 +0000 (12:47 +0100)]
dwcotg: Allow to build without FIQ on ARM64

Signed-off-by: popcornmix <popcornmix@gmail.com>
7 years agoAccording to RFC 2460, IPv6 UDP calculated checksum yields a result
Nisar Sayed [Tue, 9 May 2017 17:51:42 +0000 (18:51 +0100)]
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>
7 years agoirq_bcm2836: Send event when onlining sleeping cores
Phil Elwell [Mon, 8 May 2017 15:43:40 +0000 (16:43 +0100)]
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>
7 years agoARM: dts: bcm283x: Reserve first page for firmware
Phil Elwell [Mon, 8 May 2017 15:30:18 +0000 (16:30 +0100)]
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>
7 years agoRevert "serial: 8250: Don't crash when nr_uarts is 0"
popcornmix [Fri, 5 May 2017 12:23:10 +0000 (13:23 +0100)]
Revert "serial: 8250: Don't crash when nr_uarts is 0"

This reverts commit 9c297d9ebd0d8c6d5e6e8675d527d6a221613abc.

7 years agobcm2708_fb: Avoid firmware mbox call in vc_mem_copy
popcornmix [Thu, 4 May 2017 16:38:22 +0000 (17:38 +0100)]
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>
7 years agovcsm: Treat EBUSY as success rather than SIGBUS
popcornmix [Tue, 2 May 2017 15:36:05 +0000 (16:36 +0100)]
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>
7 years agofiq_fsm: Use correct states when starting isoc OUT transfers (#1991)
P33M [Thu, 4 May 2017 13:56:08 +0000 (14:56 +0100)]
fiq_fsm: Use correct states when starting isoc OUT transfers (#1991)

* 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

7 years agodwc_otg: fix split transaction data toggle handling around dequeues
P33M [Tue, 2 May 2017 15:31:15 +0000 (16:31 +0100)]
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()

7 years agovc4_fkms: Apply firmware overscan offset to hardware cursor
popcornmix [Tue, 18 Apr 2017 20:43:46 +0000 (21:43 +0100)]
vc4_fkms: Apply firmware overscan offset to hardware cursor

7 years agodwc_otg: make nak_holdoff work as intended with empty queues
P33M [Thu, 27 Apr 2017 15:24:34 +0000 (16:24 +0100)]
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

7 years agoclk: bcm2835: Limit PCM clock to OSC and PLLD_PER
Phil Elwell [Wed, 26 Apr 2017 16:28:47 +0000 (17:28 +0100)]
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>
7 years agodwc_otg: Add the dependency on FIQ
popcornmix [Wed, 26 Apr 2017 15:51:48 +0000 (16:51 +0100)]
dwc_otg: Add the dependency on FIQ

Signed-off-by: popcornmix <popcornmix@gmail.com>
7 years agoBCM270X_DT: Add tmp102 to i2c sensor overlay
Scott Ellis [Tue, 25 Apr 2017 17:05:42 +0000 (13:05 -0400)]
BCM270X_DT: Add tmp102 to i2c sensor overlay

Signed-off-by: Scott Ellis <scott@jumpnowtek.com>
7 years agoconfig: Enable TI TMP102 temp sensor module
Scott Ellis [Tue, 25 Apr 2017 14:46:09 +0000 (10:46 -0400)]
config: Enable TI TMP102 temp sensor module

Signed-off-by: Scott Ellis <scott@jumpnowtek.com>
7 years agoconfig: Add CONFIG_BMP280 (and CONFIG_BMP280_I2C)
Phil Elwell [Sun, 23 Apr 2017 18:38:06 +0000 (19:38 +0100)]
config: Add CONFIG_BMP280 (and CONFIG_BMP280_I2C)

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agoBCM270X_DT: Add bme280 and bmp180 to i2c-sensor overlay
Phil Elwell [Sun, 23 Apr 2017 18:36:53 +0000 (19:36 +0100)]
BCM270X_DT: Add bme280 and bmp180 to i2c-sensor overlay

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
7 years agosmsc95xx: Use skb_cow_head to deal with cloned skbs
James Hughes [Wed, 19 Apr 2017 10:13:40 +0000 (11:13 +0100)]
smsc95xx: Use skb_cow_head to deal with cloned skbs

The driver was failing to check that the SKB wasn't cloned
before adding checksum data.
Replace existing handling to extend/copy the header buffer
with skb_cow_head.

Signed-off-by: James Hughes <james.hughes@raspberrypi.org>
Acked-by: Eric Dumazet <edumazet@google.com>
Acked-by: Woojung Huh <Woojung.Huh@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
7 years agopanel-raspberrypi-touchscreen: Fix NULL deref if probe order goes wrong.
Eric Anholt [Thu, 13 Apr 2017 00:52:56 +0000 (17:52 -0700)]
panel-raspberrypi-touchscreen: Fix NULL deref if probe order goes wrong.

If the i2c driver hadn't pobed before the panel driver probes, then
the client would be NULL but we were looking for an ERR_PTR in the
error case.

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agoARM: dts: bcm283x: Add HDMI audio related properties
Boris Brezillon [Thu, 2 Feb 2017 10:37:36 +0000 (11:37 +0100)]
ARM: dts: bcm283x: Add HDMI audio related properties

Add the dmas and dma-names properties to support HDMI audio.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
(cherry picked from commit d46d2c6380c10e80e99f6af9067356128bffac6b)

7 years agodrm/vc4: Add HDMI audio support
Eric Anholt [Mon, 27 Feb 2017 20:28:02 +0000 (12:28 -0800)]
drm/vc4: Add HDMI audio support

The HDMI encoder IP embeds all needed blocks to output audio, with a
custom DAI called MAI moving audio between the two parts of the HDMI
core.  This driver now exposes a sound card to let users stream audio
to their display.

Using the hdmi-codec driver has been considered here, but MAI meant
having to significantly rework hdmi-codec, and it would have left
little shared code with the I2S mode anyway.

The encoder requires that the audio be SPDIF-formatted frames only,
which alsalib will format-convert for us.

This patch is the combined work of Eric Anholt (initial register setup
with a separate dmaengine driver and using simple-audio-card) and
Boris Brezillon (moving it all into HDMI, massive debug to get it
actually working), and which Eric has the permission to release.

v2: Drop "-audio" from sound card name, since that's already implied
    (suggestion by Boris)

Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170227202803.12855-2-eric@anholt.net
7 years agoRevert "drm/vc4: Verify at boot that CMA doesn't cross a 256MB boundary."
Eric Anholt [Thu, 30 Mar 2017 17:23:27 +0000 (10:23 -0700)]
Revert "drm/vc4: Verify at boot that CMA doesn't cross a 256MB boundary."

This reverts commit 016c804fa69381bd23a1a13cba08a3c4557fcdff.  The
restriction was lifted by the previous commit.

7 years agodrm/vc4: Allow using more than 256MB of CMA memory.
Eric Anholt [Tue, 7 Mar 2017 22:51:03 +0000 (14:51 -0800)]
drm/vc4: Allow using more than 256MB of CMA memory.

Until now, we've had to limit Raspberry Pi to 256MB of CMA memory to
keep from triggering the hardware addressing bug between of the tile
binner of the tile alloc memory (where the top 4 bits come from the
tile state data array's address).

To work around that and allow more memory to be reserved for graphics,
allocate a single BO to store tile state data arrays and tile
alloc/overflow memory while the GPU is active, and make sure that that
one BO doesn't happen to cross a 256MB boundary.  With that in place,
we can allocate textures and shaders anywhere in system memory (still
contiguous, of course).

Signed-off-by: Eric Anholt <eric@anholt.net>
7 years agoBCM2708: Add Raspberry Pi TV HAT Device Tree Support
Yasunari Takiguchi [Thu, 22 Dec 2016 06:34:12 +0000 (15:34 +0900)]
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>
7 years agoThis is the driver for Sony CXD2880 DVB-T2/T tuner + demodulator.
Yasunari Takiguchi [Fri, 14 Apr 2017 09:43:57 +0000 (10:43 +0100)]
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>
7 years agoAudioinjector octo : Make the playback and capture symmetric
Matt Flax [Tue, 4 Apr 2017 09:23:04 +0000 (19:23 +1000)]
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.

7 years agoAudioinjector : make the octo and pi sound cards have different driver names
Matt Flax [Tue, 4 Apr 2017 09:20:59 +0000 (19:20 +1000)]
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.

7 years agoAdd clock changes and mute gpios (#1938)
BabuSubashChandar [Fri, 31 Mar 2017 19:16:52 +0000 (00:46 +0530)]
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>
7 years agoAdd support for new clock rate and mute gpios.
BabuSubashChandar C [Thu, 30 Mar 2017 14:47:27 +0000 (20:17 +0530)]
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>
7 years agoAudioinjector Octo : add extra sample rates, fix rst and use bcm270x regs
Matt Flax [Thu, 30 Mar 2017 00:43:57 +0000 (11:43 +1100)]
Audioinjector Octo : add extra sample rates, fix rst and use bcm270x regs

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

This patch also replaces the regulators in the device tree overlay with
the ones declared in bcm270x.dtsi include file.

This patch also adds an extra codec reset and delay on probe.

7 years agoleds-gpio: Remove stray assignment to brightness_set
Phil Elwell [Tue, 28 Mar 2017 16:41:30 +0000 (17:41 +0100)]
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>
7 years agoBCM270X_DT: Allow multiple instances of w1-gpio overlays
Phil Elwell [Tue, 28 Mar 2017 13:22:20 +0000 (14:22 +0100)]
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.

7 years ago Add support for Allo Boss DAC add-on board for Raspberry Pi. (#1924)
BabuSubashChandar [Tue, 28 Mar 2017 14:34:42 +0000 (20:04 +0530)]
 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>
7 years agoAdd support for Allo Piano DAC 2.1 plus add-on board for Raspberry Pi.
Raashid Muhammed [Mon, 27 Mar 2017 07:05:00 +0000 (12:35 +0530)]
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>