- Jun 18, 2020
-
-
Phil Elwell authored
Add the spi_dma4 DT parameter to enable use of the 40-bit DMA channels to drive SPI. Note that there are only 3-4 40-bit channels available, and using this parameter claims 2 of them. Usage: dtparam=spi_dma4 Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
BCM2711 has 4 DMA channels with a 40-bit address range, allowing them to access the full 4GB of memory on a Pi 4. Signed-off-by: Phil Elwell <phil@raspberrypi.org>
-
Phil Elwell authored
This warning is unavoidable from a client's perspective and doesn't indicate anything wrong (just surprising). SQUASH with "spi: use_gpio_descriptor fixup moved to spi_setup" Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
popcornmix authored
Signed-off-by: popcornmix <popcornmix@gmail.com>
-
popcornmix authored
Signed-off-by: popcornmix <popcornmix@gmail.com>
-
popcornmix authored
This isn't required on Pi3, so don't treat as an error Signed-off-by: popcornmix <popcornmix@gmail.com>
-
Naushir Patuck authored
This commit enables the bcm2835-isp driver in the following defconfigs: bcm2709_defconfig bcm2711_defconfig bcmrpi_defconfig bcmrpi3_defconfig Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
bcmn2835_isp is a platform driver dependent on vchiq, therefore add the load/unload functions for it to vchiq. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Driver for the BCM2835 ISP hardware block. This driver uses the MMAL component to program the ISP hardware through the VC firmware. The ISP component can produce two video stream outputs, and Bayer image statistics. This can't be encompassed in a simple V4L2 M2M device, so create a new device that registers 4 video nodes. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
No functional changes in this commit. - Remove erroneous whitespace. - Remove _t postfix label on structs and enums. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
We are reserving controls for the new bcm2835-isp driver. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Add V4L2_META_FMT_BCM2835_ISP_STATS V4L2 format type. This new format will be used by the BCM2835 ISP device to return out ISP statistics for 3A. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
This file defines the userland interface to the bcm2835-isp driver that will follow in a separate commit. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
The sensor subdevice may change the Bayer order if a H/V flip is requested after a s_fmt call. Unicam g_fmt must call the subdev get_fmt in case this has happened and return out the correct format 4cc. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
This commit updates the imx219 driver to adverise support for embedded data streams. This can then be used by the bcm2835-unicam driver, which has recently been updated to expose the embedded data stream to userland. The imx219 sensor subdevice overloads the media pad to differentiate between image stream (pad 0) and embedded data stream (pad 1) when performing the v4l2_subdev_pad_ops functions. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Phil Elwell authored
This reverts commit 91f2cf4a . Revert this because the clock driver won't probe without a DT node, and creating it as a platform device won't give it one. Doing so avoids the following error message: raspberrypi-clk raspberrypi-clk: Missing firmware node Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
popcornmix authored
We actually use the 64-bit 2711 kernel on Pi3 too. It still uses the downstream cpufreq driver in DT. See: https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=269769&start=100#p1644752 Signed-off-by: popcornmix <popcornmix@gmail.com>
-
Laurent Pinchart authored
The FRAME_SYNC event is useful for userspace image processing algorithms to program the camera sensor as early as possible after frame start. Support it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
-
Laurent Pinchart authored
The unicam driver supports both the SOURCE_CHANGE and CTRL events. Both events are only generated on the image video node, so the event-related ioctls are useless on the medatada node. Disable them. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
-
Dafna Hirschfeld authored
https://patchwork.linuxtv.org/patch/62740/ When enumerating the frame sizes, the value sent to imx219_get_format_code should be fse->code (the code from the ioctl) and not imx219->fmt.code which is the code set currently in the driver. Fixes: 22da1d56 ("media: i2c: imx219: Add support for RAW8 bit bayer format") Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com> Reviewed-by: Helen Koike <helen.koike@collabora.com> Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
-
Lad Prabhakar authored
Commit 25130b8a upstream. This patch adds mode table entry for capturing cropped 640x480 resolution Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Acked-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
-
Lad Prabhakar authored
Commit 22da1d56 upstream. IMX219 sensor is capable for RAW8/RAW10 modes. This commit adds support for RAW8 bayer format. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
-
Lad Prabhakar authored
Commit ca45448a upstream. When supporting Rpi Camera v2 Module on the RZ/G2E, found the driver had some issues with rcar mipi-csi driver. The sensor never entered into LP-11 state. The powerup sequence in the datasheet[1] shows the sensor entering into LP-11 in streaming mode, so to fix this issue transitions are performed from "streaming -> standby" in the probe() after power up. With this commit the sensor is able to enter LP-11 mode during power up, as expected by some CSI-2 controllers. [1] https://publiclab.org/system/images/photos/000/023/294/original/ RASPBERRY_PI_CAMERA_V2_DATASHEET_IMX219PQH5_7.0.0_Datasheet_XXX.PDF Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Acked-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
-
Dave Stevenson authored
Commit 1283b3b8 upstream. (Currently on linux-media/master, queued for 5.7) Adds a driver for the 8MPix Sony IMX219 CSI2 sensor. Whilst the sensor supports 2 or 4 CSI2 data lanes, this driver currently only supports 2 lanes. 8MPix @ 15fps, 1080P @ 30fps (cropped FOV), and 1640x1232 (2x2 binned) @ 30fps are currently supported. [Sakari Ailus: make imx219_check_hwcfg static] Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Signed-off-by: Andrey Konovalov <andrey.konovalov@linaro.org> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Phil Elwell authored
This reverts commit 334c2448fb0aa5fb21c275619cec3ceb65dfc81d.
-
Naushir Patuck authored
If no buffer has been queued by a userland application, we use an internal dummy buffer for the hardware to spin in. This will allow the driver to release the existing userland buffer back to the application for processing. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
This patch adds a new node in the bcm2835-unicam driver to support CSI-2 embedded data streams. The subdevice is queried to see if embedded data is available from the sensor. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Move device node specific state out of the device state structure and into a new node structure. This separation will be needed for future changes where we will add an embedded data node to the driver to work alongside the existing image data node. Currently only use a single image node, so this commit does not add any functional changes. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
This patch adds MEDIA_BUS_FMT_SENSOR_DATA used by the bcm2835-unicam driver to support CSI-2 embedded data streams from camera sensors. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Add V4L2_META_FMT_SENSOR_DATA format 4CC. This new format will be used by the BCM2835 Unicam device to return out camera sensor embedded data. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
This commit enables the bcm2835-unicam driver in the following defconfigs: bcm2709_defconfig bcm2711_defconfig bcmrpi_defconfig Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Add driver for the Unicam camera receiver block on BCM283x processors. This commit is made up of a series of changes cherry-picked from the rpi-4.19.y branch. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Jacopo Mondi authored
Add to the V4L2 core a function to register device nodes for video subdevices in read-only mode. Registering a device node in read-only mode is useful to expose to userspace the current sub-device configuration, without allowing application to change it by using the V4L2 subdevice ioctls. Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
-
Jacopo Mondi authored
Document a new kAPI function to register subdev device nodes in read only mode and for each affected ioctl report how access is restricted. Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
-
Jacopo Mondi authored
Update the V4L2 sub-device userspace API introduction to provide more details on why complex devices might want to register devnodes for the connected subdevices. Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com> Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
-
Phil Elwell authored
The first revision of the Pi Model B used I2C0 to address the camera and I2C0 was available for user applications on the 26-pin header. The second revision switched the roles, kept I2C0 on the 26-pin header and added I2C1 on a new 8-way header (P5). Up to now, downstream DTS has used a single file for both revisions of the board, with a small amount of patching from the firmware. With the introduction of an I2C mux to share I2C0 between the camera/display connectors and the IDC headers, the difference between the two versions becomes too great to comfortably manage with tweaking, hence this split. Upstream DTS files already have bcm2835-rpi-b.dts and bcm2835-rpi-b-rev2.dts, but for backwards compatibility the new file is being added as bcm2708-rpi-b-rev1.dts, rather than renaming the old shared version to bcm2708-rpi-b-rev2.dts. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Dave Stevenson authored
BSC0 (aka i2c0) can me muxed via pinctrl to GPIOs 0&1, 28&29, or 44&45. These have different uses based on the platform (40pin header, and CSI/DSI connectors), so add a pinctrl I2C mux between the different options. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
Update all overlays that were using i2c_vc for talking to CSI source devices to use the new i2c_csi_dsi node via i2c_mux_pinctrl. Remove the pins overrides as well. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
BSC0 serves either the HAT EEPROM pins on the 40pin connector, or the display and camera on a board specific pairing of either GPIO 28&29, or 44&45. Use I2C_MUX_PINCTRL to allow exposing both pairs of pins as I2C busses. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
To be used to switch between the camera/display pins, and the HAT pins for i2c-0. (arm64/bcmrpi3_defconfig was missing all the I2C mux support, so enable it all) Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-