Dave Stevenson [Wed, 21 Feb 2018 15:53:59 +0000 (15:53 +0000)]
staging: bcm2835-camera: Fix open parenthesis alignment
Fix checkpatch "Alignment should match open parenthesis"
errors.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 15:48:54 +0000 (15:48 +0000)]
staging: bcm2835-camera: Fix logical continuation splits
Fix checkpatch errors for "Logical continuations should be
on the previous line".
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 15:39:26 +0000 (15:39 +0000)]
staging: bcm2835-camera: Fix missing lines between items
Fix checkpatch errors for missing blank lines after variable
or structure declarations.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 15:37:11 +0000 (15:37 +0000)]
staging: bcm2835-camera: Fix brace style issues.
Fix mismatched or missing brace issues flagged by checkpatch.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 15:28:07 +0000 (15:28 +0000)]
staging: bcm2835-camera: Fix multiple line dereference errors
Fix checkpatch errors "Avoid multiple line dereference"
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 15:23:35 +0000 (15:23 +0000)]
staging: bcm2835-camera: Reduce length of enum names
We have numerous lines over 80 chars, or oddly split. Many
of these are due to using long enum names such as
MMAL_COMPONENT_CAMERA.
Reduce the length of these enum names.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 14:13:03 +0000 (14:13 +0000)]
staging: bcm2835-camera: Fix spacing around operators
Fix checkpatch warnings over spaces around operators.
Many were around operations that can be replaced with the
BIT(x) macro, so replace with that where appropriate.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 21 Feb 2018 13:49:32 +0000 (13:49 +0000)]
staging: bcm2835-camera: Fix comment style violations.
Fix comment style violations in the header files.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Fri, 10 Mar 2017 17:35:38 +0000 (17:35 +0000)]
staging: bcm2835-camera: Remove dead email addresses
None of the listed author email addresses were valid.
Keep list of authors and the companies they represented.
Update my email address.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Fri, 10 Mar 2017 17:27:56 +0000 (17:27 +0000)]
staging: bcm2835-camera: Return early on errors
Fix several instances where it is easier to return
early on error conditions than handle it as an else
clause.
As requested by Mauro.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Mon, 13 Feb 2017 13:11:41 +0000 (13:11 +0000)]
staging: bcm2835-camera: Correctly denote key frames in encoded data
Forward MMAL key frame flags to the V4L2 buffers.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Mon, 29 Oct 2018 14:21:04 +0000 (14:21 +0000)]
staging: bcm2835-camera: Ensure H264 header bytes get a sensible timestamp
H264 header come from VC with 0 timestamps, which means they get a
strange timestamp when processed with VC/kernel start times,
particularly if used with the inline header option.
Remember the last frame timestamp and use that if set, or otherwise
use the kernel start time.
https://github.com/raspberrypi/linux/issues/1836
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 14 Feb 2018 17:04:26 +0000 (17:04 +0000)]
staging: bcm2835-camera: Do not bulk receive from service thread
vchi_bulk_queue_receive will queue up to a default of 4
bulk receives on a connection before blocking.
If called from the VCHI service_callback thread, then
that thread is unable to service the VCHI_CALLBACK_BULK_RECEIVED
events that would enable the queue call to succeed.
Add a workqueue to schedule the call vchi_bulk_queue_receive
in an alternate context to avoid the lock up.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Mon, 3 Dec 2018 12:50:38 +0000 (12:50 +0000)]
staging: vchiq_arm: Improve error handling on loading drivers
The handling of loading platform drivers requires checking IS_ERR
for the pointer on unload.
If the driver fails to load, NULL the pointer during probe as
platform_device_unregister already checks for NULL.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Stefan Wahren [Mon, 22 Oct 2018 09:09:18 +0000 (11:09 +0200)]
staging: bcm2835: Don't probe if no camera is detected
It is a waste of resources to load the camera driver in case there isn't
a camera actually connected to the Raspberry Pi. This solution also
avoids a NULL ptr dereference of mmal instance on driver unload.
Fixes:
7b3ad5abf027 ("staging: Import the BCM2835 MMAL-based V4L2 camera driver.")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sun, 21 Oct 2018 17:08:29 +0000 (19:08 +0200)]
staging: bcm2835-camera: Add hint about possible faulty GPU mem config
As per default the GPU memory config of the Raspberry Pi isn't sufficient
for the camera usage. Even worse the bcm2835 camera doesn't provide a
helpful error message in this case. So let's add a hint to point the user
to the likely cause.
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sun, 21 Oct 2018 16:40:07 +0000 (18:40 +0200)]
staging: bcm2835-camera: Provide more specific probe error messages
Currently there is only a catch-all info message which print the
relevant error code without any context. So add more specific error
messages in order to narrow down possible issues.
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Thu, 18 Oct 2018 17:54:01 +0000 (19:54 +0200)]
staging: bcm2835-audio: Drop DT dependency
Just like the bcm2835-video make this a platform driver which is probed
by vchiq. In order to change the number of channels use a module
parameter instead, but use the maximum as default.
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Thu, 18 Oct 2018 17:47:29 +0000 (19:47 +0200)]
staging: bcm2835-audio: use module_platform_driver() macro
There is not much value behind this boilerplate, so use
module_platform_driver() instead.
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sat, 13 Oct 2018 18:19:13 +0000 (20:19 +0200)]
staging: bcm2835-audio: Enable compile test
Enable the compilation test for bcm2835-audio.
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sat, 20 Oct 2018 18:25:41 +0000 (20:25 +0200)]
staging: vchiq_arm: Register a platform device for the audio driver
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Mon, 22 Oct 2018 13:16:51 +0000 (15:16 +0200)]
staging: vchiq_arm: Fix camera device registration
Since the camera driver isn't probed via DT, we need to properly setup DMA.
Fixes:
37b7b3087a2f ("staging/vc04_services: Register a platform device for the camera driver.")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sat, 13 Oct 2018 18:51:23 +0000 (20:51 +0200)]
staging: vchiq_arm: Fix platform device unregistration
In error case platform_device_register_data would return an ERR_PTR
instead of NULL. So we better check this before unregistration.
Fixes:
37b7b3087a2f ("staging/vc04_services: Register a platform device for the camera driver.")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sat, 20 Oct 2018 17:31:00 +0000 (19:31 +0200)]
staging: bcm2835-camera: Move module info to the end
In order to have this more consistent between the vc04 services move
the module information to the end of the file.
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Stefan Wahren [Sat, 20 Oct 2018 17:26:18 +0000 (19:26 +0200)]
staging: bcm2835-camera: fix module autoloading
In order to make the module bcm2835-camera load automatically, we need to
add a module alias.
Fixes:
4bebb0312ea9 ("staging/bcm2835-camera: Set ourselves up as a platform driver.")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Dave Stevenson [Thu, 22 Nov 2018 17:31:06 +0000 (17:31 +0000)]
media: tc358743: Return an appropriate colorspace from tc358743_set_fmt
When calling tc358743_set_fmt, the code was calling tc358743_get_fmt
to choose a valid format. However that sets the colorspace
based on what was read back from the chip. When you set the format,
then the driver would choose and program the colorspace based
on the format code.
The result was that if you called try or set format for UYVY
when the current format was RGB3 then you would get told sRGB,
and try RGB3 when current was UYVY and you would get told
SMPTE170M.
The value programmed into the chip is determined by this driver,
therefore there is no need to read back the value. Return the
colorspace based on the format set/tried instead.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Thu, 22 Nov 2018 17:28:02 +0000 (17:28 +0000)]
media: bcm2835-unicam: Pass through the colorspace on try_fmt
The current colorspace was always returned from try_fmt for no
good reason.
Return what the source subdevice returns instead.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
popcornmix [Fri, 30 Nov 2018 18:55:23 +0000 (18:55 +0000)]
lirc-rpi: Remove in favour of gpio-ir
Phil Elwell [Mon, 16 Jul 2018 13:40:13 +0000 (14:40 +0100)]
dwc-otg: FIQ: Fix "bad mode in data abort handler"
Create a semi-static mapping for the USB registers early in the boot
process, before additional kernel threads are started, so all threads
will have the mappings from the start. This avoids the need for
data aborts to lazily update them.
See: https://github.com/raspberrypi/linux/issues/2450
Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
Phil Elwell [Thu, 29 Nov 2018 16:00:22 +0000 (16:00 +0000)]
BCM270X_DT: Mark eth_downshift_after as an integer
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Tue, 27 Nov 2018 16:56:50 +0000 (16:56 +0000)]
BCM270X_DT: Add new Ethernet DT parameters
Add "eth_downshift_after" DT parameter to allow the delay before the
downshift to be specified. The default is 2 auto-negotiation cycles,
and legal values are 2, 3, 4, 5 and 0 (disabled).
Add "eth_max_speed" DT parameter as a way of prohibiting 1000Mbps
links. This can be used to avoid the delay until the downshift mechanism
activates. Legal values are 10, 100 and 1000, where the default is
unlimited (effectively 1000Mbps).
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Tue, 27 Nov 2018 16:55:14 +0000 (16:55 +0000)]
ARM: dts: bcm283x: Set downshift-after for Pi 3B+
Enable the auto-downshift feature on Raspberry Pi 3B+ so that a link
can eventually be established using a cable with pairs C and/or D
missing or broken in a 1000Mbps-capable port.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Wed, 28 Nov 2018 15:51:41 +0000 (15:51 +0000)]
dt-bindings: Document microchip,downshift-after
Document the optional downshift-after property of the lan78xx's PHY.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Mon, 26 Nov 2018 19:46:58 +0000 (19:46 +0000)]
net: lan78xx: Support auto-downshift to 100Mb/s
Ethernet cables with faulty or missing pairs (specifically pairs C and
D) allow auto-negotiation to 1000Mbs, but do not support the successful
establishment of a link. Add a DT property, "microchip,downshift-after",
to configure the number of auto-negotiation failures after which it
falls back to 100Mbs. Valid values are 2, 3, 4, 5 and 0, where 0 means
never downshift.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Tue, 27 Nov 2018 16:33:31 +0000 (16:33 +0000)]
ARM: dts: bcm283x: The lan7515 PHY node has moved
The DT node describing the LAN7800s PHY has now moved inside an "mdio"
node. Update the DT declarations accordingly.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Nicolas Saenz Julienne [Tue, 27 Nov 2018 15:59:10 +0000 (16:59 +0100)]
BCM2710_DT: fix gpio expander bindings
The upstreamed driver for the GPIO expander expects to be a children of
the "firmware" node.
The patch also removes the "firmware" phandle as it's useless.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Nicolas Saenz Julienne [Wed, 28 Nov 2018 09:36:01 +0000 (10:36 +0100)]
BCM2708_DT: update firmware node binding
The upstreamed version of the firmware node has been updated to present
it as a "simple-bus". We need to get this in order to accomodate other
device bindings, namely RPi's firmware based gpio expander.
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Phil Elwell [Mon, 26 Nov 2018 20:15:16 +0000 (20:15 +0000)]
overlays: Update upstream overlay
The vc4-kms-v3d overlay gained an extra fragment enabling the txp node,
so rebuild the upstream overlay to match.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Dave Stevenson [Mon, 26 Nov 2018 17:02:15 +0000 (17:02 +0000)]
dtoverlays: Add i2c on 0&1 option to TC358743, ADV7282 and OV5647
Adds the option of configuring i2c0 to be on GPIOs 0&1 as
this is of use on the Compute Module.
Also fixes the ov5647 overlay where the override enabled the wrong
fragments.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Matthias Reichl [Sun, 18 Nov 2018 14:32:28 +0000 (15:32 +0100)]
rpi-wm8804-soundcard: configure wm8804 clocks only on rate change
This should avoid clicks when stopping and immediately afterwards
starting a stream with the same samplerate as before.
Signed-off-by: Matthias Reichl <hias@horus.com>
Matthias Reichl [Sun, 18 Nov 2018 14:24:16 +0000 (15:24 +0100)]
rpi-wm8804-soundcard: drop PWRDN register writes
Since kernel 4.0 the PWRDN register bits are under DAPM
control from the wm8804 driver.
Drop code that modifies that register to avoid interfering
with DAPM.
Signed-off-by: Matthias Reichl <hias@horus.com>
Matthias Reichl [Sun, 18 Nov 2018 12:21:26 +0000 (13:21 +0100)]
Revert "ASoC: wm8804: MCLK configuration options, 32-bit"
This reverts commit
3b12dcf797f5a4635aecd7f5c090dc507b124ffd.
Despite the commit message being wrong idle_bias changes
were already reverted in the 4.14 tree.
So drop the commit to bring the wm8804 driver back in line with
the rpi-4.14.y and upstream linux trees.
Signed-off-by: Matthias Reichl <hias@horus.com>
Phil Elwell [Wed, 14 Nov 2018 09:53:25 +0000 (09:53 +0000)]
overlays: Remove superfluous #address/size-cells
Newer versions of dtc warn about unnecessary usage of #address-cells
and #size-cells, so remove them.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
James Hughes [Tue, 13 Nov 2018 16:51:21 +0000 (16:51 +0000)]
Update README (#2750)
Small update to the DT blob docs to include the axiperf option.
Signed-off-by: James Hughes <james.hughes@raspberrypi.org>
Dave Stevenson [Wed, 14 Nov 2018 11:54:46 +0000 (11:54 +0000)]
vcsm: Fix an NULL dereference in the import_dmabuf error path
resource was dereferenced even though it was NULL.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
James Hughes [Tue, 13 Nov 2018 17:27:00 +0000 (17:27 +0000)]
Mailbox firmware calls now use kmalloc (#2749)
A previous change moved away from variable stack
allocation of a data buffer to a fixed maximum size.
However, some mailbox calls use larger data buffers
than the maximum allowed. This change moves from
stack storage to kmalloc to ensure all sizes are
catered for.
Signed-off-by: James Hughes <james.hughes@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 15:02:18 +0000 (15:02 +0000)]
dtoverlays: Add support for ADV7280-M, ADV7281-M and ADV7281-MA chips.
The driver that supports the ADV7282-M also supports the ADV7280-M,
ADV7281-M, and ADV7281-MA.
The 7280-M exposes 8 analogue inputs. The 7281-M doesn't have the
I2P deinterlacing block. The 7281-MA has 8 inputs but no I2P.
Otherwise they are the same as ADV7282-M.
Adds a new overlay "adv728x" that includes the existing adv7282
overlay but adds several parameters to modify the behaviour.
Adds a new addr parameter to allow the I2C address to be changed.
(the chip has an address select pin to change between 0x20 and 0x21).
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 15:01:59 +0000 (15:01 +0000)]
arm: dt: Add DT overlays for ADV7282M, OV5647, and TC358743
DT overlays to setup the above devices via i2c_arm and csi1.
(This currently does not use the i2c-mux-pinctrl driver to
dynamically switch the pinctrl)
tc358743 is tc358743 running at a default link frequency
of 972Mbit/s. This allows up to 1080P50 UYVY on 2 lanes.
There is a parameter to allow changing the link frequency,
but the only values supported by the driver are
297000000
for 594Mbit/s, and
486000000 for 972Mbit/s.
There is also a parameter to enable 4 lane mode (only
relevant to Compute Module (1 or 3) csi1).
tc358743-audio overlay enables I2S audio from the TC358743
to the Pi (SD to GPIO20, SCK to GPIO18, WFS to GPIO19).
ADV7282M is the Analog Devices analogue video to CSI bridge
chip.
OV5647 is the Pi V1.3 camera module. Currently the driver only
supports VGA 8bit Bayer and very few controls.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 15:00:45 +0000 (15:00 +0000)]
BCM270X_DT: Add CSI defines for all the downstream Pi platforms
Adds the CSI device includes for the bcm27xx platform DTS files
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 15:00:20 +0000 (15:00 +0000)]
BCM283x DT: Add CSI nodes to the device tree.
Adds CSI nodes to all the upstream device tree configs
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 15:00:04 +0000 (15:00 +0000)]
media: adv7180: Nasty hack to allow input selection.
Whilst the adv7180 driver support s_routing, nothing else
does, and there is a missing lump of framework code to
define the mapping from connectors on a board to the inputs
they represent on the ADV7180.
Add a nasty hack to take a module parameter that is passed in
to s_routing on any call to G_STD, or S_STD (or subdev
g_input_status call).
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:59:51 +0000 (14:59 +0000)]
defconfig: Enable Unicam driver and various sources on Pi platforms.
Enable:
VIDEO_V4L2_SUBDEV_API=y
VIDEO_BCM2835_UNICAM=m
VIDEO_TC358743=m
VIDEO_ADV7180=m
VIDEO_OV5647=m
so that we can receive CSI data from these devices.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:59:40 +0000 (14:59 +0000)]
MAINTAINERS: Add entry for BCM2835 Unicam driver
Adds entry for the new BCM2835 Unicam (CSI-2 receiver) driver
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:59:22 +0000 (14:59 +0000)]
media: bcm2835-unicam: Driver for CCP2/CSI2 camera interface
Add driver for the Unicam camera receiver block on
BCM283x processors.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:59:06 +0000 (14:59 +0000)]
dt-bindings: Document BCM283x CSI2/CCP2 receiver
Document the DT bindings for the CSI2/CCP2 receiver peripheral
(known as Unicam) on BCM283x SoCs.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Acked-by: Rob Herring <robh@kernel.org>
Dave Stevenson [Wed, 31 Oct 2018 14:58:08 +0000 (14:58 +0000)]
media: videodev2: Add helper defines for printing FOURCCs
New helper defines that allow printing of a FOURCC using
printf(V4L2_FOURCC_CONV, V4L2_FOURCC_CONV_ARGS(fourcc));
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:57:56 +0000 (14:57 +0000)]
media: adv7180: Add YPrPb support for ADV7282M
The ADV7282M can support YPbPr on AIN1-3, but this was
not selectable from the driver. Add it to the list of
supported input modes.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:57:46 +0000 (14:57 +0000)]
media: adv7180: Default to the first valid input
The hardware default is differential CVBS on AIN1 & 2, which
isn't very useful.
Select the first input that is defined as valid for the
chip variant (typically CVBS_AIN1).
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:57:34 +0000 (14:57 +0000)]
media: tc358743: Check I2C succeeded during probe.
The probe for the TC358743 reads the CHIPID register from
the device and compares it to the expected value of 0.
If the I2C request fails then that also returns 0, so
the driver loads thinking that the device is there.
Generally I2C communications are reliable so there is
limited need to check the return value on every transfer,
therefore only amend the one read during probe to check
for I2C errors.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:57:21 +0000 (14:57 +0000)]
media: tc358743: Add support for 972Mbit/s link freq.
Adds register setups for running the CSI lanes at 972Mbit/s,
which allows 1080P50 UYVY down 2 lanes.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Philipp Zabel [Thu, 21 Sep 2017 15:30:24 +0000 (17:30 +0200)]
media: tc358743: fix connected/active CSI-2 lane reporting
g_mbus_config was supposed to indicate all supported lane numbers, not
only the number of those currently in active use. Since the TC358743
can dynamically reduce the number of active lanes if the required
bandwidth allows for it, report all lane numbers up to the connected
number of lanes as supported in pdata mode.
In device tree mode, do not report lane count and clock mode at all, as
the receiver driver can determine these from the device tree.
To allow communicating the number of currently active lanes, add a new
bitfield to the v4l2_mbus_config flags. This is a temporary fix, to be
used only until a better solution is found.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Dave Stevenson [Wed, 31 Oct 2018 14:56:59 +0000 (14:56 +0000)]
media: tc358743: Increase FIFO level to 374.
The existing fixed value of 16 worked for UYVY 720P60 over
2 lanes at 594MHz, or UYVY 1080P60 over 4 lanes. (RGB888
1080P60 needs 6 lanes at 594MHz).
It doesn't allow for lower resolutions to work as the FIFO
underflows.
374 is required for 1080P24-30 UYVY over 2 lanes @ 972Mbit/s, but
>374 means that the FIFO underflows on 1080P50 UYVY over 2 lanes
@ 972Mbit/s.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:56:47 +0000 (14:56 +0000)]
media: ov5647: Add support for non-continuous clock mode
The driver was only supporting continuous clock mode
although this was not stated anywhere.
Non-continuous clock saves a small amount of power and
on some SoCs is easier to interface with.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:56:33 +0000 (14:56 +0000)]
media: ov5647: Add support for PWDN GPIO.
Add support for an optional GPIO connected to PWDN on the sensor.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:55:59 +0000 (14:55 +0000)]
[media] Documentation: DT: add device tree for PWDN control
Add optional GPIO pwdn to connect to the PWDN line on the sensor.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Dave Stevenson [Wed, 31 Oct 2018 14:55:37 +0000 (14:55 +0000)]
media: ov5647: Add set_fmt and get_fmt calls.
There's no way to query the subdevice for the supported
resolutions.
Add set_fmt and get_fmt implementations.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Phil Elwell [Mon, 12 Nov 2018 22:56:35 +0000 (22:56 +0000)]
Fix warning in bcm2835-smi-nand
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Mon, 12 Nov 2018 22:54:40 +0000 (22:54 +0000)]
mmc: bcm2835-sdhost: Fix warnings on arm64
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Wed, 7 Nov 2018 17:43:10 +0000 (17:43 +0000)]
overlays: uart0 - return GPIOs 14 and 15 to inputs
In the event that alternate pins are used (only useful on Compute
Modules), return the standard pins to inputs to avoid double-mapping
them.
See: https://www.raspberrypi.org/forums/viewtopic.php?p=1388713#p1316977
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
James Hughes [Fri, 2 Nov 2018 11:55:49 +0000 (11:55 +0000)]
Update issue templates (#2736)
Phil Elwell [Mon, 29 Oct 2018 14:45:45 +0000 (14:45 +0000)]
Revert "rtc: pcf8523: properly handle oscillator stop bit"
This reverts commit
ede44c908d44b166a5b6bd7caacd105c2ff5a70f.
See: https://github.com/raspberrypi/firmware/issues/1065
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Mon, 29 Oct 2018 10:38:31 +0000 (10:38 +0000)]
overlays: pi3-disable-bt: Clear out bt_pins node
The pi3-disable-bt overlay does not (and cannot) delete the bt_pins
node, but emptying its properties (including brcm,pins) is a way of
signalling to the hciuart systemd service that Bluetooth has been
disabled.
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Fri, 26 Oct 2018 16:29:51 +0000 (17:29 +0100)]
mmc/bcm2835-sdhost: Recover from MMC_SEND_EXT_CSD
If the user issues an "mmc extcsd read", the SD controller receives
what it thinks is a SEND_IF_COND command with an unexpected data block.
The resulting operations leave the FSM stuck in READWAIT, a state which
persists until the MMC framework resets the controller, by which point
the root filesystem is likely to have been unmounted.
A less heavyweight solution is to detect the condition and nudge the
FSM by asserting the (self-clearing) FORCE_DATA_MODE bit.
N.B. This workaround was essentially discovered by accident and without
a full understanding the inner workings of the controller, so it is
fortunate that the "fix" only modifies error paths.
See: https://github.com/raspberrypi/linux/issues/2728
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
popcornmix [Thu, 25 Oct 2018 13:08:43 +0000 (14:08 +0100)]
config: Add CONFIG_USBIP_VUDC
See: https://github.com/raspberrypi/firmware/issues/353
Hans-Wilhelm Warlo [Tue, 16 Oct 2018 16:20:48 +0000 (18:20 +0200)]
Add hy28b 2017 model device tree overlay (#2721)
The 2017 version of the hy28b display requires a different
initialisation sequence.
Signed-off-by: Hans-Wilhelm Warlo <hw@warlo.no>
Phil Elwell [Wed, 18 Jul 2018 16:25:00 +0000 (17:25 +0100)]
overlays: Add gpio-no-bank0-irq overlay
See: https://github.com/raspberrypi/linux/issues/2590
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Serge Schneider [Tue, 2 Oct 2018 16:13:48 +0000 (17:13 +0100)]
overlays: add overrides for PoE HAT fan control
Signed-off-by: Serge Schneider <serge@raspberrypi.org>
Serge Schneider [Wed, 26 Sep 2018 18:44:59 +0000 (19:44 +0100)]
hwmon: adjust rpi-poe-fan overlay trip points
Signed-off-by: Serge Schneider <serge@raspberrypi.org>
Serge Schneider [Tue, 2 Oct 2018 10:14:15 +0000 (11:14 +0100)]
drivers: thermal: step_wise: avoid throttling at hysteresis temperature after dropping below it
Signed-off-by: Serge Schneider <serge@raspberrypi.org>
Ram Chandrasekar [Mon, 7 May 2018 17:54:08 +0000 (11:54 -0600)]
drivers: thermal: step_wise: add support for hysteresis
From: Ram Chandrasekar <rkumbako@codeaurora.org>
Step wise governor increases the mitigation level when the temperature
goes above a threshold and will decrease the mitigation when the
temperature falls below the threshold. If it were a case, where the
temperature hovers around a threshold, the mitigation will be applied
and removed at every iteration. This reaction to the temperature is
inefficient for performance.
The use of hysteresis temperature could avoid this ping-pong of
mitigation by relaxing the mitigation to happen only when the
temperature goes below this lower hysteresis value.
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Paul [Thu, 11 Oct 2018 09:17:20 +0000 (12:17 +0300)]
Update gpio-fan-overlay.dts (#2711)
Add references, links, clear details, some typo correction.
Matt Flax [Fri, 28 Sep 2018 05:13:28 +0000 (15:13 +1000)]
ASoC: cs4265: Add a MIC pre. route (#2696)
Commit
b0ef5011b981ece1fde8063243a56d3038b87adb upstream.
The cs4265 driver is missing a microphone preamp enable.
This patch enables/disables the microphone preamp when mic
selection is made using the kcontrol.
Signed-off-by: Matt Flax <flatmax@flatmax.org>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Phil Elwell [Mon, 24 Sep 2018 13:56:58 +0000 (14:56 +0100)]
configs: Add CONFIG_HID_BIGBEN_FF=m
See: https://github.com/raspberrypi/linux/issues/2690
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Hanno Zulla [Thu, 23 Aug 2018 15:03:38 +0000 (17:03 +0200)]
HID: hid-bigbenff: driver for BigBen Interactive PS3OFMINIPAD gamepad
commit
256a90ed9e46b270bbc4e15ef05216ff049c3721 upstream.
This is a driver to fix input mapping and add LED & force feedback
support for the "BigBen Interactive Kid-friendly Wired Controller
PS3OFMINIPAD SONY" gamepad with USB id 146b:0902. It was originally
sold as a PS3 accessory and makes a very nice gamepad for Retropie.
Signed-off-by: Hanno Zulla <kontakt@hanno.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Phil Elwell [Tue, 18 Sep 2018 10:08:07 +0000 (11:08 +0100)]
BCM270X_DT: Add gpio-fan overlay
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Phil Elwell [Tue, 18 Sep 2018 10:03:20 +0000 (11:03 +0100)]
configs: Add SENSOR_GPIO_FAN=m
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Matt Flax [Wed, 29 Aug 2018 23:38:01 +0000 (09:38 +1000)]
ASoC: cs4265: Add native 32bit I2S transport
commit
be47e75eb1419ffc1d9c26230963fd5fa3055097 upstream.
The cs4265 uses 32 bit transport on the I2S bus. This patch enables native
32 bit mode for machine drivers which use this sound card driver.
Signed-off-by: Matt Flax <flatmax@flatmax.org>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Matt Flax [Wed, 29 Aug 2018 23:38:02 +0000 (09:38 +1000)]
ASoC: cs4265: Add a S/PDIF enable switch
commit
f853d6b3ba345297974d877d8ed0f4a91eaca739 upstream.
This patch adds a S/PDIF enable switch as a SOC_SINGLE.
Signed-off-by: Matt Flax <flatmax@flatmax.org>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Matt Flax [Tue, 28 Aug 2018 08:42:13 +0000 (18:42 +1000)]
Add support for audioinjector.net ultra soundcard. (#2664)
Uses the simple-audio-card ALSA machine driver. Sets up the machine
driver in the device tree overlay file. The overlays/Makefile is
altered to add the audioinjector-ultra.dtbo dtb overlay.
Adds CONFIG_SND_SOC_CS4265 to the defconfig files.
Signed-off-by: Matt Flax <flatmax@flatmax.org>
Steve Pavao [Fri, 10 Aug 2018 21:09:50 +0000 (17:09 -0400)]
devicetree: add RPi CM3 dts to arm64; mimic the RPi 3B arm64 dts implementation, by referring to the actual dts file in the arm directory
Phil Elwell [Tue, 3 Jul 2018 13:23:47 +0000 (14:23 +0100)]
spi: Make GPIO CSs honour the SPI_NO_CS flag
The SPI configuration state includes an SPI_NO_CS flag that disables
all CS line manipulation, for applications that want to manage their
own chip selects. However, this flag is ignored by the GPIO CS code
in the SPI framework.
Correct this omission with a trivial patch.
See: https://github.com/raspberrypi/linux/issues/2169
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Eric Anholt [Fri, 9 Mar 2018 21:26:33 +0000 (13:26 -0800)]
overlays: Remove stale notes about vc4's CMA alignment in the README.
We haven't needed alignment since
553c942f8b2cbc7394b4d4fa2f848b23a8f07451, and the current overlays
don't specify any.
Signed-off-by: Eric Anholt <eric@anholt.net>
Eric Anholt [Fri, 9 Mar 2018 21:20:21 +0000 (13:20 -0800)]
overlays: Add an overlay for the Adafruit Kippah with their 7" panel
Signed-off-by: Eric Anholt <eric@anholt.net>
Eric Anholt [Fri, 9 Mar 2018 22:24:05 +0000 (14:24 -0800)]
ARM: BCM270X: Add the 18-bit DPI pinmux to the RPI DTs.
This doesn't do anything by default, but trying to put the node in an
overlay failed for me.
Signed-off-by: Eric Anholt <eric@anholt.net>
Phil Elwell [Mon, 9 Jul 2018 20:11:32 +0000 (21:11 +0100)]
overlays: Add addr parameter to i2c-rtc (& -gpio)
See: https://github.com/raspberrypi/linux/issues/2611
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Jasper Boomer [Mon, 2 Jul 2018 17:16:22 +0000 (13:16 -0400)]
Add hd44780 module to defconfig
Jasper Boomer [Sun, 24 Jun 2018 16:20:27 +0000 (12:20 -0400)]
Add device tree overlay for HD44780
Phil Elwell [Fri, 27 Apr 2018 15:21:33 +0000 (16:21 +0100)]
config: Add I2C_TINY_USB=m
Enable the I2C Tiny USB module.
See: https://github.com/raspberrypi/linux/issues/2535
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
popcornmix [Thu, 29 Mar 2018 15:05:28 +0000 (16:05 +0100)]
config: Add IPVLAN module
Matthias Reichl [Tue, 6 Feb 2018 14:37:22 +0000 (15:37 +0100)]
config: enable Audio Graph Card module
Signed-off-by: Matthias Reichl <hias@horus.com>