aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging
AgeCommit message (Collapse)AuthorFilesLines
2021-06-02media: rkvdec: Fix .buf_prepareEzequiel Garcia1-1/+9
The driver should only set the payload on .buf_prepare if the buffer is CAPTURE type. If an OUTPUT buffer has a zero bytesused set by userspace then v4l2-core will set it to buffer length. If we overwrite bytesused for OUTPUT buffers, too, then vb2_get_plane_payload() will return incorrect value which might be then written to hw registers by the driver in rkvdec-h264.c. [Changed the comment and used V4L2_TYPE_IS_CAPTURE macro] Fixes: cd33c830448ba ("media: rkvdec: Add the rkvdec driver") Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com> Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-06-02media: staging: ipu3-imgu: Document pages fieldSakari Ailus1-0/+1
The pages field in struct imgu_css_map was missing. Document it. Reported-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-06-02media: staging: ipu3-imgu: Move the UAPI header from include under include/uapiSakari Ailus2-1/+1
The header defines the user space interface but may be mistaken as kernel-only header due to its location. Add "uapi" directory under driver's include directory and move the header there. Suggested-by: Greg KH <gregkh@linuxfoundation.org> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Reviewed-by: Bingbu Cao <bingbu.cao@intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-06-02media: sp8870: move it to stagingMauro Carvalho Chehab4-0/+668
This driver is used only by av7110, which is preparing for its retirement. So, move this ancillary driver to stay together with av7110. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-06-02media: av7110: move driver to stagingMauro Carvalho Chehab20-0/+9691
This driver is really old, from devices that aren't manufactured anymore for more than a decade. Also, the decoder supports only MPEG2, with is not compatible with several modern DVB streams. It is also the only upstream driver relying on the DVB "full-featured" API. Some changes at the frontend drivers seem to have broken it without anybody noticing. Due to that, it sounds it is time to retire the driver for good. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-06-02Merge tag 'v5.13-rc4' into media_treeMauro Carvalho Chehab4-22/+27
Linux 5.13-rc4 * tag 'v5.13-rc4': (976 commits) Linux 5.13-rc4 seccomp: Refactor notification handler to prepare for new semantics selftests: kvm: fix overlapping addresses in memslot_perf_test KVM: X86: Kill off ctxt->ud KVM: X86: Fix warning caused by stale emulation context KVM: X86: Use kvm_get_linear_rip() in single-step and #DB/#BP interception Documentation: seccomp: Fix user notification documentation MAINTAINERS: adjust to removing i2c designware platform data perf vendor events powerpc: Fix eventcode of power10 JSON events Revert "serial: 8250: 8250_omap: Fix possible interrupt storm" i2c: s3c2410: fix possible NULL pointer deref on read message after write i2c: mediatek: Disable i2c start_en and clear intr_stat brfore reset perf stat: Fix error check for bpf_program__attach cifs: change format of CIFS_FULL_KEY_DUMP ioctl i2c: i801: Don't generate an interrupt on bus reset i2c: mpc: implement erratum A-004447 workaround powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P1010 i2c controllers powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041 i2c controllers dt-bindings: i2c: mpc: Add fsl,i2c-erratum-a004447 flag i2c: busses: i2c-stm32f4: Remove incorrectly placed ' ' from function name ...
2021-05-31staging: rtl8723bs: fix monitor netdev register/unregisterJohannes Berg1-2/+2
Due to the locking changes and callbacks happening inside cfg80211, we need to use cfg80211 versions of the register and unregister functions if called within cfg80211 methods, otherwise deadlocks occur. Fixes: a05829a7222e ("cfg80211: avoid holding the RTNL when calling the driver") Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20210426212801.3d902cc9e6f4.Ie0b1e0c545920c61400a4b7d0f384ea61feb645a@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2021-05-31Merge 5.13-rc4 into tty-nextGreg Kroah-Hartman4-22/+27
We need the tty/serial fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-31Merge 5.13-rc4 into staging-nextGreg Kroah-Hartman1-1/+0
We need the staging/iio fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-27Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/netJakub Kicinski2-19/+25
cdc-wdm: s/kill_urbs/poison_urbs/ to fix build Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-05-27staging: rtl8723bs: remove the repeated declarationShaokun Zhang2-2/+0
Function 'rtw_indicate_wx_disassoc_event' and 'Hal_SetBandwidth' are declared twice in their header file, so remove the repeated declaration. Cc: Dan Carpenter <dan.carpenter@oracle.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Shaokun Zhang <zhangshaokun@hisilicon.com> Link: https://lore.kernel.org/r/1622077092-50618-1-git-send-email-zhangshaokun@hisilicon.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-27staging: rtl8192u: Fixed warnings of coding stylePiyush Thange1-2/+4
Fixed coding style issues with comments. Signed-off-by: Piyush Thange <pthange19@gmail.com> Link: https://lore.kernel.org/r/20210526172900.56093-1-pthange19@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-27staging: mmal-vchiq: Fix incorrect static vchiq_instance.Dave Stevenson1-1/+1
For some reason lost in history function vchiq_mmal_init used a static variable for storing the vchiq_instance. This value is retrieved from vchiq per instance, so worked fine until you try to call vchiq_mmal_init multiple times concurrently when things then go wrong. This seemed to happen quite frequently if using the cutdown firmware (no MMAL or VCSM services running) as the vchiq_connect then failed, and one or other vchiq_shutdown was working on an invalid handle. Remove the static so that each caller gets a unique vchiq_instance. Fixes: 7b3ad5abf027 ("staging: Import the BCM2835 MMAL-based V4L2 camera driver.") Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> Link: https://lore.kernel.org/r/1621979857-26754-1-git-send-email-stefan.wahren@i2se.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-27staging: rtl8188eu: convert pr_info call to dev_err call ODM_RAStateCheckPhillip Potter1-1/+2
Introduce logic to extract struct device pointer from passed in struct odm_dm_struct pointer argument, and use this to call dev_err instead of pr_info. As this is an error state if this line is reached, this is not just information. Also, this is a driver, so dev_err is more appropriate. Signed-off-by: Phillip Potter <phil@philpotter.co.uk> Link: https://lore.kernel.org/r/20210525214813.6362-1-phil@philpotter.co.uk Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-27Staging: rtl8723bs: fixed a blank coding styleDonggyu Kim1-0/+1
Fixed a coding style issue - add blank after declation Signed-off-by: Dongkyu Kim <a29661498@gmail.com> Link: https://lore.kernel.org/r/20210525140123.15100-1-a29661498@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: emxx_udc: fix alignment issuesHarold Mertzweiller1-7/+4
Three function calls can now be properly formatted inside the 100 characters limit. Signed-off-by: Harold Mertzweiller <harold@mrtz.fr> Link: https://lore.kernel.org/r/20210524152128.20519-1-harold@mrtz.fr Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: remove sd_f0_read8()Bryan Brattlof4-39/+0
The sd_f0_read8() function, which is used by the sdio_f0_read8() function, are not used anywhere in the driver and both can be safely removed. Signed-off-by: Bryan Brattlof <hello@bryanbrattlof.com> Link: https://lore.kernel.org/r/20210524195144.1943280-1-hello@bryanbrattlof.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8188eu: remove ASSERT and ODM_RT_ASSERT macrosPhillip Potter2-14/+1
Remove the ASSERT and ODM_RT_ASSERT macros from include/odm_debug.h as they are unnecessary. ASSERT does nothing, compiling to a single empty statement. ODM_RT_ASSERT is used in only one place, in the ODM_RAStateCheck function with hal/odm.c - it seems to have been intended as an assertion of some kind, but given it is always called with false here, there is little point in it not just being a pr_info() call. Also, the lines relating to the file, function and line number are not needed as the pr_info() with the function name and error message is sufficient should anyone wish to track down this error at a source level, within what is currently a relatively small function. Signed-off-by: Phillip Potter <phil@philpotter.co.uk> Link: https://lore.kernel.org/r/20210524224532.1230-1-phil@philpotter.co.uk Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: fix suspect indentsShreyansh Chouhan1-25/+25
Removed extra spaces and indents from core/rtw_wlan_util.c. Signed-off-by: Shreyansh Chouhan <chouhan.shreyansh630@gmail.com> Link: https://lore.kernel.org/r/20210524135105.5550-4-chouhan.shreyansh630@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: remove unnecessary braces from conditionalsShreyansh Chouhan1-18/+17
Removed the braces from if else statements in core/rtw_wlan_util.c since the previous commit (6a257dd6de516573) caused all conditional blocks to have a single statement in the function check_assoc_AP. Signed-off-by: Shreyansh Chouhan <chouhan.shreyansh630@gmail.com> Link: https://lore.kernel.org/r/20210524135105.5550-3-chouhan.shreyansh630@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: refactor to reduce indentsShreyansh Chouhan1-52/+56
Reduce the number of indents in rtw_wlan_util.c file by refactoring the code. Moved the part of code that rearranged ac paramaters in the function WMMOnAssocResp to a separate function named sort_wmm_ac_params. It takes both the array of ac params and their indexes as arguments and sorts them. Has return type void. Moved the part of code that checked IE for realtek vendor in the function check_assoc_AP to a separate function named get_realtek_assoc_AP_vender. It takes a struct ndis_80211_var_ie * as an argument and returns u32 realtek vendor. Signed-off-by: Shreyansh Chouhan <chouhan.shreyansh630@gmail.com> Link: https://lore.kernel.org/r/20210524135105.5550-2-chouhan.shreyansh630@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: core: rtw_mlme_ext.c: Remove set but unused variableFabio M. De Francesco1-4/+1
Removed set but unused 'reason_code' variable. Issue detected by GCC running with the warning option -Wunused-but-set-variable. Suggested-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com> Link: https://lore.kernel.org/r/20210524113433.25923-1-fmdefrancesco@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: hal: Remove set but unused variablesFabio M. De Francesco1-6/+3
Removed set but unused variables. Issue detected by GCC running with the warning option -Wunused-but-set-variable. Removed the storage of the values returned but left the reads because it is possible that removing them can prevent the hardware from working properly. Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com> Link: https://lore.kernel.org/r/20210523174547.20646-1-fmdefrancesco@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8192e: Fix shadowed variable nameThomas Bracht Laumann Jespersen1-1/+1
Fixes the following sparse warning: drivers/staging/rtl8192e/rtllib_tx.c:884:32: warning: symbol 'tcb_desc' shadows an earlier one drivers/staging/rtl8192e/rtllib_tx.c:569:24: originally declared here Signed-off-by: Thomas Bracht Laumann Jespersen <t@laumann.xyz> Link: https://lore.kernel.org/r/20210521193711.5457-1-t@laumann.xyz Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8712: Removed unnecessary blank linesHriday Hegde4-4/+0
Following lines were fixed as dictated by running checkpatch CHECK: Please don't use multiple blank lines 65: FILE: drivers/staging/rtl8712/xmit_linux.c:65: + CHECK: Blank lines aren't necessary after an open brace '{' 39: FILE: drivers/staging/rtl8712/usb_intf.c:39: +static const struct usb_device_id rtl871x_usb_id_tbl[] = { CHECK: Blank lines aren't necessary after an open brace '{' 849: FILE: drivers/staging/rtl8712/rtl871x_xmit.c:849: +{ CHECK: Please don't use multiple blank lines 260: FILE: drivers/staging/rtl8712/rtl871x_sta_mgt.c:260: + Signed-off-by: Hriday Hegde <hridayhegde1999@gmail.com> Link: https://lore.kernel.org/r/20210521153924.22843-1-hridayhegde1999@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-25staging: rtl8723bs: moved contexts for arc4 encryption in struct security_privFabio Aiuto2-21/+23
moved struct arc4_ctx in struct security_priv to avoid stack allocation inside encryption routines. this has been done to fix the following 0-DAY issues: >> drivers/staging/rtl8723bs/core/rtw_security.c:89:6: warning: stack frame size of 1120 bytes in function 'rtw_wep_encrypt' [-Wframe-$ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe) ^ >> drivers/staging/rtl8723bs/core/rtw_security.c:145:6: warning: stack frame size of 1088 bytes in function 'rtw_wep_decrypt' [-Wframe$ void rtw_wep_decrypt(struct adapter *padapter, u8 *precvframe) ^ >> drivers/staging/rtl8723bs/core/rtw_security.c:514:5: warning: stack frame size of 1136 bytes in function 'rtw_tkip_encrypt' [-Wfram$ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe) ^ >> drivers/staging/rtl8723bs/core/rtw_security.c:586:5: warning: stack frame size of 1104 bytes in function 'rtw_tkip_decrypt' [-Wfram$ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe) ^ Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Fabio Aiuto <fabioaiuto83@gmail.com> Link: https://lore.kernel.org/r/20210521144158.2440-1-fabioaiuto83@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-23media: imx: imx7_mipi_csis: Add i.MX8MM supportLaurent Pinchart1-10/+49
The CSI-2 receiver in the i.MX8MM is a newer version of the one found in the i.MX7. Differences are minimal, support it in the imx7_mipi_csis driver. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Move PHY control to dedicated functionsLaurent Pinchart1-26/+38
Move the PHY regulator and reset handling to dedicated functions. This groups all related code together, and prepares for i.MX8 support that doesn't require control of the PHY regulator and reset. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Reject invalid data-lanes settingsLaurent Pinchart1-0/+9
The CSIS doesn't support data lanes reordering. Reject invalid settings. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Reorganize mipi_csis_probe()Laurent Pinchart1-11/+19
Group the operations performed in mipi_csis_probe() logically to improve readability. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Reorganize csi_state structureLaurent Pinchart1-21/+14
Group the fiels of the csi_state structure logically to improve readability. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Make csi_state num_clocks field unsignedLaurent Pinchart1-1/+1
The num_clocks field of the csi_state only stores positive values, make it unsigned. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Drop csi_state pdev fieldLaurent Pinchart1-17/+13
The pdev field of the csi_state structure is only used to access the device pointer, which is stored in a separate field. Drop the pdev field, as well as a few local dev variables. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Pass csi_state to mipi_csis_subdev_init()Laurent Pinchart1-8/+5
Pass the csi_state pointer to the mipi_csis_subdev_init() function, instead of miscellaneous information scattered in different arguments. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Don't pass pdev to mipi_csis_parse_dt()Laurent Pinchart1-5/+4
The mipi_csis_parse_dt() function is called with a pointer to the csi_state, which contains all the information necessary. Don't pass the platform device pointer as well. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Turn csi_state irq field into local variableLaurent Pinchart1-6/+6
The irq field of the csi_state structure is only used in mipi_csis_probe(). Turn it into a local variable. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Rename csi_state flag field to stateLaurent Pinchart1-13/+13
The flag field of the csi_state structure contains the device state. Rename it accordingly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Rename mipi_sd to sdLaurent Pinchart1-46/+45
The CSIS is modelled as a single subdev, there's thus no ambiguity regarding which subdev the code refers to. Rename mipi_sd to sd. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Drop csi_state phy fieldLaurent Pinchart1-1/+0
The phy field of the csi_state structure is unused. Drop it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Store CSI-2 data type in format structureLaurent Pinchart1-29/+42
Replace the register value stored in the csis_pix_format structure with the CSI-2 data type. The register value is simply computed from the data type using a shift. This prepares for i.MX8MP support that needs the same data type in a different hardware register. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Drop unused csis_hw_reset structureLaurent Pinchart1-7/+0
The csis_hw_reset structure is instantiated as a member of csi_state, but that member is never used. Drop it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Set the CLKSETTLE register fieldLaurent Pinchart1-4/+10
Set the CLKSETTLE field explicitly, with a value hardcoded to 0. This brings no functional change, but prepares for calculation of the CLKSETTLE value. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Reorganize code in sectionsLaurent Pinchart1-252/+279
Improve readability by reorganizing the code in sections. No functional change intended. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Don't set subdev dataLaurent Pinchart1-2/+0
The driver doesn't need to store subdev data, as the subdev is embedded in csi_state and is thus accessed using container_of. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Minimize locking in get/set formatLaurent Pinchart1-16/+20
Reduce the code sections that are run with the lock held in the get/set format handlers: - mipi_csis_get_format() retrieves a pointer to the format, and thus doesn't need locking as long as the arguments passed to the function don't require locking either. - sdformat is a structure passed by the caller, not an internal state, and thus doesn't require locking. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Move static data to top of mipi_csis_dump_regs()Laurent Pinchart1-3/+4
It's customary to declare static variables at the top of the function, with a blank line separating them from the non-static variables. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Update ISP_CONFIG macros for quad pixel modeLaurent Pinchart1-1/+3
The i.MX8MM expands the DOUBLE_CMPNT bit in the ISP_CONFIG register into a two bits field that support quad pixel mode in addition to the single and double modes. Update the ISP_CONFIG register macros to support this. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Count the CSI-2 debug interruptsLaurent Pinchart1-18/+51
In addition to the main interrupts that flag errors and other events, the CSI-2 receiver has debug interrupt sources that flag various events useful for debugging. Add those sources to the event counter mechanism and print them when debugging is enabled. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: imx: imx7_mipi_csis: Fix logging of only error event countersLaurent Pinchart1-2/+4
The mipi_csis_events array ends with 6 non-error events, not 4. Update mipi_csis_log_counters() accordingly. While at it, log event counters in forward order, as there's no reason to log them backward. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-05-23media: uapi: move MPEG-2 stateless controls out of stagingEzequiel Garcia5-15/+15
Until now, the MPEG-2 V4L2 API was not exported as a public API, and only defined in a private media header (media/mpeg2-ctrls.h). After reviewing the MPEG-2 specification in detail, and reworking the controls so they match the MPEG-2 semantics properly, we can consider it ready. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Tested-by: Jernej Skrabec <jernej.skrabec@siol.net> Reviewed-by: Jernej Skrabec <jernej.skrabec@siol.net> Tested-by: Daniel Almeida <daniel.almeida@collabora.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>