- Jul 03, 2019
-
-
Helen Koike authored
Add MAINTAINERS entry for the rockchip isp1 driver. Signed-off-by:
Helen Koike <helen.koike@collabora.com>
-
Shunqian Zheng authored
It's a Designware MIPI D-PHY, used for ISP0 in rk3399. Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - add phy-cells
-
Shunqian Zheng authored
rk3399 have two ISP, but we havn't test isp1, so just add isp0 at present. Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - add phy properties - add ports
-
Jacob Chen authored
Add DT bindings documentation for Rockchip MIPI D-PHY RX Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Reviewed-by:
Rob Herring <robh@kernel.org> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - updated doc with new design and tested example
-
Jacob Chen authored
Add DT bindings documentation for Rockchip ISP1 Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Reviewed-by:
Rob Herring <robh@kernel.org> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - update document with new design and tested example
-
Jacob Chen authored
Add the core driver for rockchip isp1. Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Yichong Zhong <zyc@rock-chips.com> Signed-off-by:
Jacob Chen <cc@rock-chips.com> Signed-off-by:
Eddie Cai <eddie.cai.linux@gmail.com> Signed-off-by:
Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by:
Allon Huang <allon.huang@rock-chips.com> Signed-off-by:
Tomasz Figa <tfiga@chromium.org> [fixed compilation and run time errors regarding new v4l2 async API] Signed-off-by:
Laurent Pinchart <laurent.pinchart@ideasonboard.com> [Add missing module device table] Signed-off-by:
Ezequiel Garcia <ezequiel@collabora.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - VIDEO_ROCKCHIP_ISP1 selects VIDEOBUF2_VMALLOC - add PHY_ROCKCHIP_DPHY as a dependency for VIDEO_ROCKCHIP_ISP1 - Fix compilation and runtime errors due to bitrotting The code has bit-rotten since March 2018, fix compilation errors. The new V4L2 async notifier API requires notifiers to be initialized by a call to v4l2_async_notifier_init() before being used, do so. - Add missing module device table - use clk_bulk framework - add missing notifiers cleanups - s/strlcpy/strscpy - normalize bus_info name - fix s_stream error path, stream_cnt wans't being decremented properly - use devm_platform_ioremap_resource() helper - s/deice/device - redesign: remove mipi/csi subdevice, sensors connect directly to the isp subdevice in the media topology now. - remove "saved_state" member from rkisp1_stream struct - Reverse the order of MIs - Simplify MI interrupt handling Rather than adding unnecessary indirection, just use stream index to handle MI interrupt enable/disable/clear, since the stream index matches the order of bits now, thanks to previous patch. While at it, remove some dead code. - code styling and checkpatch fixes
-
Jacob Chen authored
This is the capture device interface driver that provides the v4l2 user interface. Frames can be received from ISP1. Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Yichong Zhong <zyc@rock-chips.com> Signed-off-by:
Jacob Chen <cc@rock-chips.com> Signed-off-by:
Eddie Cai <eddie.cai.linux@gmail.com> Signed-off-by:
Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by:
Allon Huang <allon.huang@rock-chips.com> Signed-off-by:
Tomasz Figa <tfiga@chromium.org> [updated for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - s/strlcpy/strscpy - Fix v4l2-compliance issues: * remove input ioctls media api can be used to define the topology, this input api is not required. Besides it, if an input is enumerated, v4l2-compliance is not happy with G_FMT returning the default colorspace instead of something more specific. * return the pixelformat to the userspace G_/S_/TRY_ FORMAT should return a valid pixelformat to the user, even if the user gave an invalid one * add missing default colorspace and ycbcr * fix wrong pixformat in mp_fmts[] table * add buf type check in s_/g_selection * queue_setup - check sizes * normalize bus_info name * fix field any v4l2-compliance -s complain - set field none when streaming - Fix compiling error: s/vidioc_enum_fmt_vid_cap_mplane/vidioc_enum_fmt_vid_cap - Replace stream state with a boolean The rkisp1_state enum consists only of 3 entries, where 1 is completely unused and the other two respectively mean not streaming or streaming. Replace it with a boolean called "streaming". - Simplify MI interrupt handling Rather than adding unnecessary indirection, just use stream index to handle MI interrupt enable/disable/clear, since the stream index matches the order of bits now, thanks to previous patch. While at it, remove some dead code. - code styling and checkpatch fixes - add link_validate: don't allow a link with bayer/non-bayer mismatch Commit-notes: Hi, Hans, I removed your Acked-by tag since some things changed. Please let me know if I can keep it. Thanks Helen END
-
Jacob Chen authored
Add the output video driver that accept params from userspace. Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Yichong Zhong <zyc@rock-chips.com> Signed-off-by:
Jacob Chen <cc@rock-chips.com> Signed-off-by:
Eddie Cai <eddie.cai.linux@gmail.com> Signed-off-by:
Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by:
Allon Huang <allon.huang@rock-chips.com> Signed-off-by:
Tomasz Figa <tfiga@chromium.org> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - s/strlcpy/strscpy - s/strcpy/strscpy - fix config lsc error LSC data table size is 17x17, but when configuring data to ISP, should be aligned to 18x17. That means every last data of last line should be filled with 0, and not filled with the data of next line. - Update new ISP parameters immediately For those sub modules that have shadow registers in core isp, the new programing parameters would not be active if both CIF_ISP_CTRL_ISP_CFG_UPD_PERMANENT and CFG_UPD are not set. Now we configure CFG_UPD to force update the shadow registers when new ISP parameters are configured. - fix some ISP parameters config error Some ISP parameter config functions may override the old enable bit value, because the enable bits of these modules are in the same registers with parameters. So we should save the old enable bits firstly. - code styling and checkpatch fixes
-
Jacob Chen authored
Add the capture video driver for rockchip isp1 statistics block. Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Yichong Zhong <zyc@rock-chips.com> Signed-off-by:
Jacob Chen <cc@rock-chips.com> Signed-off-by:
Eddie Cai <eddie.cai.linux@gmail.com> Signed-off-by:
Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by:
Allon Huang <allon.huang@rock-chips.com> Signed-off-by:
Tomasz Figa <tfiga@chromium.org> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Acked-by:
Hans Verkuil <hans.verkuil@cisco.com> Series-changes: 7 - s/strlcpy/strscpy - sort out the locks in isp stats - code styling and checkpatch fixes
-
Jacob Chen authored
Add the subdev driver for rockchip isp1. Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Yichong Zhong <zyc@rock-chips.com> Signed-off-by:
Jacob Chen <cc@rock-chips.com> Signed-off-by:
Eddie Cai <eddie.cai.linux@gmail.com> Signed-off-by:
Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by:
Allon Huang <allon.huang@rock-chips.com> Signed-off-by:
Tomasz Figa <tfiga@chromium.org> [fixed unknown entity type / switched to PIXEL_RATE] Signed-off-by:
Ezequiel Garcia <ezequiel@collabora.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - fixed warning because of unknown entity type - fixed v4l2-compliance errors regarding rkisp1 formats, try formats and default values - fix typo riksp1/rkisp1 - redesign: remove mipi/csi subdevice, sensors connect directly to the isp subdevice in the media topology now. As a consequence, remove the hack in mipidphy_g_mbus_config() where information from the sensor was being propagated through the topology. - From the old dphy: * cache get_remote_sensor() in s_stream * use V4L2_CID_PIXEL_RATE instead of V4L2_CID_LINK_FREQ - Replace stream state with a boolean - code styling and checkpatch fixes - fix stop_stream (return after calling stop, do not reenable the stream) - fix rkisp1_isp_sd_get_selection when V4L2_SUBDEV_FORMAT_TRY is set - fix get format in output (isp_sd->out_fmt.mbus_code was being ignored) - s/intput/input - remove #define sd_to_isp_sd(_sd), add a static inline as it will be reused by the capture
-
Jacob Chen authored
This commit adds a subdev driver for Rockchip MIPI Synopsys DPHY driver Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Tomasz Figa <tfiga@chromium.org> [migrate to phy framework] Signed-off-by:
Ezequiel Garcia <ezequiel@collabora.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - Migrate dphy specific code from drivers/media/platform/rockchip/isp1/mipi_dphy_sy.c to drivers/phy/rockchip/phy-rockchip-dphy.c - Drop support for rk3288 - Drop support for dphy txrx - code styling and checkpatch fixes
-
Jeffy Chen authored
Add the header for userspace Signed-off-by:
Jeffy Chen <jeffy.chen@rock-chips.com> Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - Fix checkpatch errors (lines over 80 and SPDX) - Add TODO to improve docs Commit-notes: Hi, I don't have the "REF_01 - ISP_user_manual, Rev 2.57" document that was mentioned in previous version, so I'm adding a TODO for now to improve the docs once we collect the information. If Rockchip people could help here it would be great. Thanks Helen END
-
Jacob Chen authored
This commit add document for rkisp1 meta buffer format Signed-off-by:
Jacob Chen <jacob-chen@rock-chips.com> Acked-by:
Hans Verkuil <hans.verkuil@cisco.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-changes: 7 - s/correspond/corresponding - s/use/uses - s/docuemnt/document
-
Shunqian Zheng authored
Add the Rockchip ISP1 specific processing parameter format V4L2_META_FMT_RK_ISP1_PARAMS and metadata format V4L2_META_FMT_RK_ISP1_STAT_3A for 3A. Signed-off-by:
Shunqian Zheng <zhengsq@rock-chips.com> Signed-off-by:
Jacob Chen <jacob2.chen@rock-chips.com> Acked-by:
Hans Verkuil <hans.verkuil@cisco.com> [update for upstream] Signed-off-by:
Helen Koike <helen.koike@collabora.com> Series-to: linux-rockchip@lists.infradead.org Series-cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Series-cc: mchehab@kernel.org, linux-media@vger.kernel.org Series-cc: sakari.ailus@linux.intel.com, hans.verkuil@cisco.com Series-cc: tfiga@chromium.org, zhengsq@rock-chips.com Series-cc: laurent.pinchart@ideasonboard.com, zyc@rock-chips.com Series-cc: eddie.cai.linux@gmail.com, jeffy.chen@rock-chips.com Series-cc: devicetree@vger.kernel.org, heiko@sntech.de Series-cc: jacob2.chen@rock-chips.com Series-cc: kernel@collabora.com, ezequiel@collabora.com Series-version: 7 Series-changes: 7 - s/IPU3/RK_ISP1 Cover-letter: Rockchip ISP1 Driver Hello, I'm re-sending a new version of ISP(Camera) v4l2 driver for rockchip rk3399 SoC. It is not perfect yet (see known issues below), but I'm sending in case some other people already wants to start playing with it. I believe de main design is ok (please let me know if it is not) and it would be great to get some reviews already. This patchset is also available at: https://gitlab.collabora.com/koike/linux/tree/rockchip/isp/v7 Libcamera patched to work with this version: https://gitlab.collabora.com/koike/libcamera (I'll also sent it to the libcamera dev mailing list) I tested on the rockpi 4 with a rpi v1.3 sensor and also with the Scarlet Chromebook. Images from the Scarlet are a bit dark and green for some reason, but I believe it's a problem in the sensor's drivers as images from the rockpi looks ok. The main differences from previous version are (in a macro pov): ---------------------------------------------------------------- - dphy specific code migrated to drivers/phy - design change: droped the subdevice for the interface. Now, in the media topology, the sensors connect directly to the ISP1. - v4l2-compliance fixes - dropped rk3288 (as I'm not testing it) - dropped txrx dphy support (as I'm not testing it and it requires a bit more work to support dsi too) - interrupts and hw config fixes - minor bug fixes and cleanups - I added myself in the MAINTAINERS, as I'm not sure if previous people still wants to maintain it, please let me know if I should keep the old names there. Known issues: ------------- - Reloading the module doesn't work (there is some missing cleanup when unloading) - When capturing in bayer format, changing the size doesn't seem to affect the image. - crop needs more tests - v4l2-compliance error: fail: v4l2-test-controls.cpp(824): subscribe event for control 'Image Processing Controls' failed test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL It seems that if controls are supported, v4l2-compliance says that controls of type 'Image Processing Controls' are mandatory, is this correct? - It seems there are still some issues with interrupts, but I couldn't isolate them yet. Reasoning for the design change: -------------------------------- In the previous version, the isp subdevice call the mipidphy_g_mbus from rkisp1.c, so it can get informations from the sensor such as the type of mbus (V4L2_MBUS_BT656, V4L2_MBUS_PARALLEL or V4L2_MBUS_CSI2_CPHY), the number of csi2 lanes, flags (V4L2_MBUS_PCLK_SAMPLE_RISING, V4L2_MBUS_VSYNC_ACTIVE_LOW or V4L2_MBUS_HSYNC_ACTIVE_LOW). And the isp driver uses those info to configure the hardware properly. These information come from the DT node of the sensor. And the current implementation is propagating this information from the sensor to the isp through this mipidphy_g_mbus_config() (thus the hack) * 1st attempt to solve this hack) Separating the interface code from the isp. With the topology: isp -> csi2 -> sensor I was trying to migrate the CSI2 hardware configuration to the csi2 subdevice code. But the problem I found was that in the DT, the csi2 regs is in the middle of the isp1 regs, and declaring the same "regs = <>" in both nodes (isp0 and csi2) is no good. * 2nd attempt) flatening the DT So instead of having two DT nodes (isp0 and csi2), we can have a single node, similar to omap3isp. And we can have a property, "rk,phy-type" that defines the interface (csi2, bt656 or parallel). But, now my question is: can the isp be connected to multiple interfaces at a time? If yes, then this is not a good solution (as we won't be able to describe multiple interfaces in the DT node). * 3rd attemp - WIP) get rid of the interface subdevice (chosen design) Is there a reason to have the topology like: isp -> interface - - -> sensor1 | |--------> sensor2 | - - - - - - > sensor3 (only one sensor can be active at a time) ? Would it be ok if I just hide the interface from the topology? Like: isp - - - - - -> sensor1 | |-----------> sensor2 |- - - - - - - > sensor3 Like this, I could cleanup a bunch of v4l2 code from the interface node, the isp would know the active sensor (and its configs), and it can configure everything itself. I don't really see a big reason to expose the interface (csi2, bt656 or parallel) in the topology. Unless I'm missing something. Previous changelog: ------------------- changes in V6: - add mipi txrx phy support - remove bool and enum from uapi header - add buf_prepare op - correct some spelling problems - return all queued buffers when starting stream failed changes in V5: Sync with local changes, - fix the SP height limit - speed up the second stream capture - the second stream can't force sync for rsz when start/stop streaming - add frame id to param vb2 buf - enable luminance maximum threshold changes in V4: - fix some bugs during development - move quantization settings to rkisp1 subdev - correct some spelling problems - describe ports in dt-binding documents changes in V3: - add some comments - fix wrong use of v4l2_async_subdev_notifier_register - optimize two paths capture at a time - remove compose - re-struct headers - add a tmp wiki page: http://opensource.rock-chips.com/wiki_Rockchip-isp1 changes in V2: mipi-phy: - use async probing - make it be a child device of the GRF isp: - add dummy buffer - change the way to get bus configuration, which make it possible to add parallel sensor support in the future(without mipi-phy driver). ------------------ END
-
Helen Koike authored
-
Helen Koike authored
-
Helen Koike authored
-
- Jun 27, 2019
-
-
Michael Tretter authored
As the try_encoder_cmd is identical for many drivers, there are now helpers for this function in the mem2mem core. Use the helper in allegro. This fixes the v4l2-compliance test regarding V4L2_ENC_CMD_STOP, because the allegro-specific function rejected invalid flags. Signed-off-by:
Michael Tretter <m.tretter@pengutronix.de> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Bastien Nocera authored
Not sure how codespell thinks "sroweam" is a real word. Signed-off-by:
Bastien Nocera <hadess@hadess.net> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Luke Nowakowski-Krijger authored
Change devm_k*alloc to k*alloc to manually allocate memory The manual allocation and freeing of memory is necessary because when the USB radio is disconnected, the memory associated with devm_k*alloc is freed. Meaning if we still have unresolved references to the radio device, then we get use-after-free errors. This patch fixes this by manually allocating memory, and freeing it in the v4l2.release callback that gets called when the last radio device exits. Reported-and-tested-by:
<syzbot+a4387f5b6b799f6becbf@syzkaller.appspotmail.com> Signed-off-by:
Luke Nowakowski-Krijger <lnowakow@eng.ucsd.edu> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> [hverkuil-cisco@xs4all.nl: cleaned up two small checkpatch.pl warnings] [hverkuil-cisco@xs4all.nl: prefix subject with driver name] Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Mauro Carvalho Chehab authored
There was a typo at the lower frequency limit for a DVB-C card, causing the driver to fail while tuning channels at the VHF range. https://bugzilla.kernel.org/show_bug.cgi?id=202083 Fixes: f1b1eabf ("media: dvb: represent min/max/step/tolerance freqs in Hz") Reported-by:
Ari Kohtamäki <ari.kohtamaki@gmail.com> Cc: stable@vger.kernel.org Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Signed-off-by:
Sean Young <sean@mess.org> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Bastien Nocera authored
Prefer KEY_NUMERIC_* for number buttons on remotes. Now all the remotes use KEY_NUMERIC_[0-9] for the number buttons rather than keys that could be affected by modifiers (Caps-Lock, or Num-Lock) or regional keymaps. Created using: sed -i 's/KEY_\([0-9]\) /KEY_NUMERIC_\1 /' *.c sed -i 's/KEY_\([0-9]\)}/KEY_NUMERIC_\1}/' *.c sed -i 's/``KEY_\([0-9]\)/``KEY_NUMERIC_\1/' Documentation/media/uapi/rc/rc-tables.rst Signed-off-by:
Bastien Nocera <hadess@hadess.net> Signed-off-by:
Sean Young <sean@mess.org> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Arnd Bergmann authored
Over time, dvb_frontend_handle_ioctl() has grown to the point where we now get a warning from the compiler about excessive stack usage: drivers/media/dvb-core/dvb_frontend.c: In function 'dvb_frontend_handle_ioctl': drivers/media/dvb-core/dvb_frontend.c:2692:1: error: the frame size of 1048 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] Almost all of this is used by the dtv_frontend_properties structure in the FE_GET_PROPERTY and FE_GET_FRONTEND commands. Splitting those into separate function reduces the stack usage of the main function to just 136 bytes, the others are under 500 each. Signed-off-by:
Arnd Bergmann <arnd@arndb.de> Signed-off-by:
Sean Young <sean@mess.org> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
A Sun authored
mceusb device 2304:0225, and likely others, produces numerous [ 4231.111310] mceusb 1-1.1.2:1.0: nonsensical irdata 80 with duration 0 [ 4381.493597] mceusb 1-1.1.2:1.0: nonsensical irdata 80 with duration 0 [ 4410.247568] mceusb 1-1.1.2:1.0: nonsensical irdata 80 with duration 0 ... [60153.264064] mceusb 1-1.1.2:1.0: nonsensical irdata 00 with duration 0 ... due to reception of ambient IR noise. Change these warning messages to debug messages. Signed-off-by:
A Sun <as1033x@comcast.net> Signed-off-by:
Sean Young <sean@mess.org> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Ding Xiang authored
devm_ioremap_resource already contains error message, so remove the redundant dev_err message Signed-off-by:
Ding Xiang <dingxiang@cmss.chinamobile.com> Signed-off-by:
Sean Young <sean@mess.org> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Hans Verkuil authored
In order to support multiple CEC devices for an HDMI connector, and to support cec_connector_info, drivers should use either a cec_notifier_conn_(un)register pair of functions (HDMI drivers) or a cec_notifier_cec_adap_(un)register pair (CEC adapter drivers). This replaces cec_notifier_get_conn/cec_notifier_put. For CEC adapters it is also no longer needed to call cec_notifier_register, cec_register_cec_notifier and cec_notifier_unregister. This is now all handled internally by the new functions. Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Dariusz Marcinkiewicz authored
Define struct cec_connector_info in media/cec.h and define CEC_CAP_CONNECTOR_INFO. In a later patch this will be moved to uapi/linux/cec.h. The CEC_CAP_CONNECTOR_INFO capability can be set by drivers, but cec_allocate_adapter() will remove it again until the public API for this can be enabled once all drm drivers wire this up correctly. Also add the cec_fill_conn_info_from_drm and cec_s_conn_info functions, which are needed by drm drivers to fill in the cec_connector info based on a drm_connector. The cec_notifier_(un)register and cec_register_cec_notifier prototypes were moved from cec-notifier.h to cec.h since cec.h no longer includes cec-notifier.h. These headers included each other before, which caused various problems. Due to these changes the seco-cec driver was changed as well: it should include cec-notifier.h, not cec.h. Signed-off-by:
Dariusz Marcinkiewicz <darekm@google.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Hans Verkuil authored
dev -> hdmi_dev conn -> conn_name Check if n->conn_name is not NULL before calling strcmp. Check the result of kstrdup, and clean up on error. Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
- Jun 24, 2019
-
-
Sakari Ailus authored
When Media Controller was merged to mainline long, long time ago, no-one bothered to think what its MAINTAINERS entry should be. Now that Media Controller is moved into its own directory, address this at the same time. So tell people to mail patches to myself and Laurent Pinchart. Note that the patches are still merged through the Media tree, just like any other driver or framework bits that have separate "mail patches to" entries different from the main drivers/media one. Signed-off-by:
Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by:
Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Dmitry Osipenko authored
Frequent IOMMU remappings take about 50% of CPU usage because there is quite a lot to remap. Defer dmabuf's unmapping by 5 seconds in order to mitigate the mapping overhead which goes away completely and driver works as fast as in a case of a disabled IOMMU. The case of a disabled IOMMU should also benefit a tad from the caching since CPU cache maintenance that happens on dmabuf's attaching takes some resources. Signed-off-by:
Dmitry Osipenko <digetx@gmail.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Dmitry Osipenko authored
All Tegra's could provide memory isolation for the video decoder hardware using IOMMU, it is also required for Tegra30+ in order to handle sparse dmabuf's which GPU exports in a default kernel configuration. Signed-off-by:
Dmitry Osipenko <digetx@gmail.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Hans Verkuil authored
This driver has three locking issues: - The wait_event_interruptible() condition calls hdpvr_get_next_buffer(dev) which uses a mutex, which is not allowed. Rewrite with list_empty_careful() that doesn't need locking. - In hdpvr_read() the call to hdpvr_stop_streaming() didn't lock io_mutex, but it should have since stop_streaming expects that. - In hdpvr_device_release() io_mutex was locked when calling flush_work(), but there it shouldn't take that mutex since the work done by flush_work() also wants to lock that mutex. There are also two other changes (suggested by Keith): - msecs_to_jiffies(4000); (a NOP) should have been msleep(4000). - Change v4l2_dbg to v4l2_info to always log if streaming had to be restarted. Reported-by:
Keith Pyle <kpyle@austin.rr.com> Suggested-by:
Keith Pyle <kpyle@austin.rr.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Boris Brezillon authored
cfg->type can be overridden by v4l2_ctrl_fill() and the new value is stored in the local type var. Fix the tests to use this local var. Fixes: 0996517c ("V4L/DVB: v4l2: Add new control handling framework") Cc: <stable@vger.kernel.org> Signed-off-by:
Boris Brezillon <boris.brezillon@collabora.com> [hverkuil-cisco@xs4all.nl: change to !qmenu and !qmenu_int (checkpatch)] Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Eugen Hristev authored
Changed module parameters to static. Reported-by:
kbuild test robot <lkp@intel.com> Signed-off-by:
Eugen Hristev <eugen.hristev@microchip.com> Acked-by:
Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Ezequiel Garcia authored
Rework std_init adding an explicit initialization for compound controls. While here, make sure the control is initialized to zero, before providing default values for all its fields. Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Signed-off-by:
Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Ezequiel Garcia authored
Use the newly introduced vb2_get_buffer API and avoid accessing buffers in the queue directly. Signed-off-by:
Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Puranjay Mohan authored
Callers of hrtimer_forward_now() should save the return value in u64. change type of missed from unsigned long to u64. Signed-off-by:
Puranjay Mohan <puranjay12@gmail.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> [hverkuil-cisco@xs4all.nl: type changed, so %ld -> %llu in printk] Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
André Almeida authored
v4l2_fill_pixfmt() returns -EINVAL if the pixelformat used as parameter is invalid or if the user is trying to use a multiplanar format with the singleplanar API. Currently, the vimc_cap_try_fmt_vid_cap() returns such value, but vimc_cap_s_fmt_vid_cap() is ignoring it. Fix that and returns an error value if vimc_cap_try_fmt_vid_cap() has failed. Signed-off-by:
André Almeida <andrealmeid@collabora.com> Suggested-by:
Helen Koike <helen.koike@collabora.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Hans Verkuil authored
Instead of filling in the struct v4l2_capability device_caps field, fill in the struct video_device device_caps field. That way the V4L2 core knows what the capabilities of the video device are. But this only really works if all drivers use this, so convert all pci drivers in this patch. Tested with cx88-blackbird and ivtv PVR-350. Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-
Janusz Krzysztofik authored
Extend parameter checks performed by v4l2_subdev_call() with a check for a non-NULL pad config pointer if V4L2_SUBDEV_FORMAT_TRY format type is requested so drivers don't need to care. Signed-off-by:
Janusz Krzysztofik <jmkrzyszt@gmail.com> Reviewed-by:
Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by:
Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by:
Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-