summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-03-22media: atomisp: Fix use after free in atomisp_alloc_css_stat_bufs()Dan Carpenter
The "s3a_buf" is freed along with all the other items on the "asd->s3a_stats" list. It leads to a double free and a use after free. Link: https://lore.kernel.org/linux-media/X9dSO3RGf7r0pq2k@mwanda Fixes: ad85094b293e ("Revert "media: staging: atomisp: Remove driver"") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Write function decleration in one linePhilipp Gerlesberger
CHECK:OPEN_ENDED_LINE: Lines should not end with a '(' WARNING:LEADING_SPACE: please, no spaces at the start of a line Avoid these errors by writing the function decleration in one line. Link: https://lore.kernel.org/linux-media/20201214110358.7102-12-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix BLOCK_COMMENT_STYLEPhilipp Gerlesberger
Block comments should align the * on each line Link: https://lore.kernel.org/linux-media/20201214110156.6152-11-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix PARENTHESIS_ALIGNMENTPhilipp Gerlesberger
You can sum up the two lines, because the maximum line length of 100 columns is not exceeded. Link: https://lore.kernel.org/linux-media/20201214110156.6152-10-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Delete bracesPhilipp Gerlesberger
WARNING:BRACES: braces {} are not necessary for single statement blocks Link: https://lore.kernel.org/linux-media/20201214110156.6152-9-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix funciton declerationPhilipp Gerlesberger
Write return_type, function_name and parameters in one line because lines should not end with a '(' [OPEN_ENDED_LINE] Write open brace ’{’ on the next line to fix OPEN_BRACE Error Link: https://lore.kernel.org/linux-media/20201214110156.6152-8-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix overlong linePhilipp Gerlesberger
Line length of 105 exceeds 100 columns. Link: https://lore.kernel.org/linux-media/20201214110156.6152-6-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix OPEN_ENDED_LINEPhilipp Gerlesberger
Lines should not end with a '(' Link: https://lore.kernel.org/linux-media/20201214110156.6152-5-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix EMBEDDED_FUNCTION_NAME warningPhilipp Gerlesberger
Use the automatically defined __func__ macro instead of the function name, so it stays correct when the function is renamed. Link: https://lore.kernel.org/linux-media/20201214110156.6152-4-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fix Block CommentsPhilipp Gerlesberger
Block comments should use * on subsequent lines and should use a trailing */ on a separate line. Link: https://lore.kernel.org/linux-media/20201214110156.6152-3-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Convert comments to C99 initializersPhilipp Gerlesberger
The struct initalizers have been changed as recommended on https://kernelnewbies.org/KernelJanitors/Todo Also remove all the false, 0, and NULL members. Link: https://lore.kernel.org/linux-media/20201214110156.6152-2-Philipp.Gerlesberger@fau.de Co-developed-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Andrey Khlopkov <ij72uhux@stud.informatik.uni-erlangen.de> Signed-off-by: Philipp Gerlesberger <Philipp.Gerlesberger@fau.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: remove redundant NULL check of "params"Ding Xiang
The check result of (!A || (A && B)) is equivalent to (!A || B), so remove redundant NULL check of "params" Link: https://lore.kernel.org/linux-media/20201117081058.673291-1-dingxiang@cmss.chinamobile.com Signed-off-by: Ding Xiang <dingxiang@cmss.chinamobile.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: do not select COMMON_CLK to fix buildsKrzysztof Kozlowski
COMMON_CLK is a user-selectable option with its own dependencies. The most important dependency is !HAVE_LEGACY_CLK. User-selectable drivers should not select COMMON_CLK because they will create a dependency cycle and build failures. Link: https://lore.kernel.org/linux-media/20210316075625.10382-1-krzysztof.kozlowski@canonical.com Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Stephen Boyd <sboyd@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: make atomisp_css_continuous_set_num_raw_frames() voidKaixu Xia
The return value of atomisp_css_continuous_set_num_raw_frames() function is always 0, so there's no reason for a return value. In addition, the __enable_continuous_mode() checked the return value for possible error which is unnecessary. Convert atomisp_css_continuous_set_num_raw_frames() to a void function. Link: https://lore.kernel.org/linux-media/1605362150-11401-1-git-send-email-kaixuxia@tencent.com Reported-by: Tosk Robot <tencent_os_robot@tencent.com> Signed-off-by: Kaixu Xia <kaixuxia@tencent.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: make atomisp_css_stop() voidKaixu Xia
The return value of atomisp_css_stop() function is always 0 and there are no callers check the return value, so there's no reason for a return value. Convert atomisp_css_stop() to a void function. Link: https://lore.kernel.org/linux-media/1605359976-11254-1-git-send-email-kaixuxia@tencent.com Reported-by: Tosk Robot <tencent_os_robot@tencent.com> Signed-off-by: Kaixu Xia <kaixuxia@tencent.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: media: atomisp: Remove unnecessary if statementAlex Dewar
The bodies of the if and else sections are the same, so just remove the check. Link: https://lore.kernel.org/linux-media/20201017142810.26967-2-alex.dewar90@gmail.com Signed-off-by: Alex Dewar <alex.dewar90@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: media: atomisp: Remove unused functionAlex Dewar
The function ia_css_mipi_frame_specify() is not called from anywhere and the comment above its declaration states that it should be removed when there are no more users. So remove it. Link: https://lore.kernel.org/linux-media/20201017142810.26967-1-alex.dewar90@gmail.com Signed-off-by: Alex Dewar <alex.dewar90@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: m88rs6000t: avoid potential out-of-bounds reads on arraysColin Ian King
There a 3 array for-loops that don't check the upper bounds of the index into arrays and this may lead to potential out-of-bounds reads. Fix this by adding array size upper bounds checks to be full safe. Addresses-Coverity: ("Out-of-bounds read") Link: https://lore.kernel.org/linux-media/20201007121628.20676-1-colin.king@canonical.com Fixes: 333829110f1d ("[media] m88rs6000t: add new dvb-s/s2 tuner for integrated chip M88RS6000") Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: atomisp: Corrected error handling in functionLeonid Kushnir
This patch fixes check of a result of 'power_up()' function call in function 'gc0310_s_power()' to do "error handling" instead of "success handling" as Dan Carpenter noted in his comment on the previous patch. Lines 'return gc0310_init(sd)' and 'return ret' are swapped, and direct value of 'ret' is checked in IF statement now. Link: https://lore.kernel.org/linux-media/20201006202903.GA8346@linux Signed-off-by: Leonid Kushnir <leonf008@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: atomisp: Removed else branch in functionLeonid Kushnir
This patch fixes the checkpatch.pl warning : WARNING: else is not generally useful after a break or return Expressions under 'else' branch in function 'gc0310_s_power' are executed whenever the exppression in 'if' is False. Otherwise, return from function occurs. Therefore, there is no need in 'else', and it has been removed. Link: https://lore.kernel.org/linux-media/20201006081721.GA35979@linux Signed-off-by: Leonid Kushnir <leonf008@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: atomisp: Fixed allignment to match open parenthesisLeonid Kushnir
Moved the parameters of the function '__gc0310_write_reg_is_consecutive' to the right under open parenthesis to fix warning message from checkpatch.pl: 'CHECK: Alignment should match open parenthesis'. Link: https://lore.kernel.org/linux-media/20201005094107.GA44033@linux Signed-off-by: Leonid Kushnir <leonf008@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: atomisp: Fixed error handling pathSouptick Joarder
Inside alloc_user_pages() based on flag value either pin_user_pages() or get_user_pages_fast() will be called. However, these API might fail. But free_user_pages() called in error handling path doesn't bother about return value and will try to unpin bo->pgnr pages, which is incorrect. Fix this by passing the page_nr to free_user_pages(). If page_nr > 0 pages will be unpinned based on bo->mem_type. This will also take care of non error handling path. allocation") Link: https://lore.kernel.org/linux-media/1601219284-13275-1-git-send-email-jrdr.linux@gmail.com Fixes: 14a638ab96c5 ("media: atomisp: use pin_user_pages() for memory Signed-off-by: Souptick Joarder <jrdr.linux@gmail.com> Cc: John Hubbard <jhubbard@nvidia.com> Cc: Ira Weiny <ira.weiny@intel.com> Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: media: atomisp: clean up block comment style issuesGary Yao
Clean up block comment style issues to follow kernel coding style and clear checkpatch warnings. WARNING: Block comments use * on subsequent lines WARNING: Block comments use a trailing */ on a separate line Link: https://lore.kernel.org/linux-media/20200926205103.189041-1-gary@apache.org Signed-off-by: Gary Yao <gary@apache.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: mantis: remove orphan mantis_core.cNecip Fazil Yildiran
There is no Makefile rule to have drivers/media/pci/mantis/mantis_core.o in build since the code overhaul with commit b3b961448f70 ("V4L/DVB (13795): [Mantis/Hopper] Code overhaul, add Hopper devices into the PCI ID list"). It looks like drivers/media/pci/mantis/mantis_core.c is a leftover. Remove the orphan code. Link: https://lore.kernel.org/linux-media/20200922132221.2051769-1-fazilyildiran@gmail.com Fixes: b3b961448f70 ("V4L/DVB (13795): [Mantis/Hopper] Code overhaul, add Hopper devices into the PCI ID list"). Signed-off-by: Necip Fazil Yildiran <fazilyildiran@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: media: atomisp: Remove unhelpful info messageAlex Dewar
We don't really need to know that the LED pin reset successfully. Link: https://lore.kernel.org/linux-media/20200921215359.45003-3-alex.dewar90@gmail.com Signed-off-by: Alex Dewar <alex.dewar90@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22atomisp: remove a now unused varMauro Carvalho Chehab
A previous cleanup patch removed the usage of the ret var. So, drop it. Link: https://lore.kernel.org/linux-media/a03a4a3e9aad2b8154018c323cf7766266990724.1616430113.git.mchehab+huawei@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: mantis: switch from 'pci_' to 'dma_' APIChristophe JAILLET
The wrappers in include/linux/pci-dma-compat.h should go away. The patch has been generated with the coccinelle script below and has been hand modified to replace GFP_ with a correct flag. It has been compile tested. When memory is allocated in 'mantis_alloc_buffers()' (mantis_dma.c) GFP_KERNEL can be used because it is called from 'mantis_dma_init()' which is only called from probe functions and no lock is taken in the between. @@ @@ - PCI_DMA_BIDIRECTIONAL + DMA_BIDIRECTIONAL @@ @@ - PCI_DMA_TODEVICE + DMA_TO_DEVICE @@ @@ - PCI_DMA_FROMDEVICE + DMA_FROM_DEVICE @@ @@ - PCI_DMA_NONE + DMA_NONE @@ expression e1, e2, e3; @@ - pci_alloc_consistent(e1, e2, e3) + dma_alloc_coherent(&e1->dev, e2, e3, GFP_) @@ expression e1, e2, e3; @@ - pci_zalloc_consistent(e1, e2, e3) + dma_alloc_coherent(&e1->dev, e2, e3, GFP_) @@ expression e1, e2, e3, e4; @@ - pci_free_consistent(e1, e2, e3, e4) + dma_free_coherent(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_map_single(e1, e2, e3, e4) + dma_map_single(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_unmap_single(e1, e2, e3, e4) + dma_unmap_single(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4, e5; @@ - pci_map_page(e1, e2, e3, e4, e5) + dma_map_page(&e1->dev, e2, e3, e4, e5) @@ expression e1, e2, e3, e4; @@ - pci_unmap_page(e1, e2, e3, e4) + dma_unmap_page(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_map_sg(e1, e2, e3, e4) + dma_map_sg(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_unmap_sg(e1, e2, e3, e4) + dma_unmap_sg(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_single_for_cpu(e1, e2, e3, e4) + dma_sync_single_for_cpu(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_single_for_device(e1, e2, e3, e4) + dma_sync_single_for_device(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_sg_for_cpu(e1, e2, e3, e4) + dma_sync_sg_for_cpu(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_sg_for_device(e1, e2, e3, e4) + dma_sync_sg_for_device(&e1->dev, e2, e3, e4) @@ expression e1, e2; @@ - pci_dma_mapping_error(e1, e2) + dma_mapping_error(&e1->dev, e2) @@ expression e1, e2; @@ - pci_set_dma_mask(e1, e2) + dma_set_mask(&e1->dev, e2) @@ expression e1, e2; @@ - pci_set_consistent_dma_mask(e1, e2) + dma_set_coherent_mask(&e1->dev, e2) Link: https://lore.kernel.org/linux-media/20200913145716.361507-1-christophe.jaillet@wanadoo.fr Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: camera-sensor.rst: fix a doc build warningMauro Carvalho Chehab
Documentation/driver-api/media/camera-sensor.rst:123: WARNING: Inline literal start-string without end-string. There's a missing blank line over there. Link: https://lore.kernel.org/linux-media/c326774ad841b905c3b2925e5f8f509d29fb4c6f.1599656828.git.mchehab+huawei@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: media: atomisp: Don't abort on error in module exit pathAlex Dewar
The function lm3554_remove() checks for the return code for lm3554_gpio_uninit() even though this is on the exit path and exits the function, leaving the variable flash unfreed. Print a warning instead and free flash unconditionally. Link: https://lore.kernel.org/linux-media/20200903183145.720727-1-alex.dewar90@gmail.com Signed-off-by: Alex Dewar <alex.dewar90@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: dvb-frontends: lgdt3306a.c: remove dead codeDaniel W. S. Almeida
Fix the following coccinelle report: drivers/media/dvb-frontends/lgdt3306a.c:718:5-8: Unneeded variable: "ret". Return "0" on line 744 Code was enclosed with #if 0 and thus this variable was not needed. Remove that function altogether. The lgdt3306a_spectral_inversion function was dropped completely since the function doesn't do anything. A comment was left at its calling site to let others know that spectral_inversion defaults already set for VSB and QAM Found using - Coccinelle (http://coccinelle.lip6.fr) Link: https://lore.kernel.org/linux-media/20200903131311.442255-1-dwlsalmeida@gmail.com Signed-off-by: Daniel W. S. Almeida <dwlsalmeida@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: [next] staging: media: atomisp: fix memory leak of object flashColin Ian King
In the case where the call to lm3554_platform_data_func returns an error there is a memory leak on the error return path of object flash. Fix this by adding an error return path that will free flash and rename labels fail2 to fail3 and fail1 to fail2. Link: https://lore.kernel.org/linux-media/20200902165852.201155-1-colin.king@canonical.com Fixes: 9289cdf39992 ("staging: media: atomisp: Convert to GPIO descriptors") Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: dvb_frontend: warn if frontend driver has API issuesMauro Carvalho Chehab
the kAPI for a frontend can use 3 different tuning methods: 1. The hardware tracks internally frequency shifts via its own internal zigzag logic; 2. The hardware has a custom zigzag method, implemented via fe search() ops; 3. The hardware doesn't have any internal zigzag logic. So, the Kernel needs to implement it. Drivers that use the in-kernel software zigzag are required to provide some parameters for the zigzag code to work. Failing to do that will just make the Kernel to tune several times to the very same frequency, delaying the tuning time for no good reason. This is actually a kAPI violation (and an uAPI one, as the frequency shift is exported to the uAPI). Emit a warning on such case, as the driver needs to be fixed. Link: https://lore.kernel.org/linux-media/6d5941e3ba77439bbc401207cd87d9b8748d5cb8.1616427172.git.mchehab+huawei@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: dvb_frontend: don't call dvb_frontend_get_stepsize() twiceMauro Carvalho Chehab
Avoid calling the function twice, as it was just called at the previous line. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: dvb_frontend: move algo-specific settings to a functionMauro Carvalho Chehab
As we're planning to call this code from somewhere else, let's first move it to its own function. Link: https://lore.kernel.org/linux-media/daa69edd80e7fcf979062273f3067cb7b5573d52.1592419750.git.mchehab+huawei@kernel.org Reviewed-by: Marc Gonzalez <marc.w.gonzalez@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: cx25821: switch from 'pci_' to 'dma_' APIChristophe JAILLET
The wrappers in include/linux/pci-dma-compat.h should go away. The patch has been generated with the coccinelle script below and has been hand modified to replace GFP_ with a correct flag. It has been compile tested. When memory is allocated in 'cx25821_riscmem_alloc()' GFP_KERNEL can be used because either this flag is already used in the call chain, or it is called from a 'buf_prepare' function. The call chains are: vb2_ops.buf_prepare (in cx25821-video.c) cx25821_buffer_prepare (in cx25821-video.c) cx25821_risc_buffer cx25821_riscmem_alloc snd_cx25821_hw_params (in cx25821-alsa.c) <-- use GFP_KERNEL cx25821_risc_databuffer_audio cx25821_riscmem_alloc @@ @@ - PCI_DMA_BIDIRECTIONAL + DMA_BIDIRECTIONAL @@ @@ - PCI_DMA_TODEVICE + DMA_TO_DEVICE @@ @@ - PCI_DMA_FROMDEVICE + DMA_FROM_DEVICE @@ @@ - PCI_DMA_NONE + DMA_NONE @@ expression e1, e2, e3; @@ - pci_alloc_consistent(e1, e2, e3) + dma_alloc_coherent(&e1->dev, e2, e3, GFP_) @@ expression e1, e2, e3; @@ - pci_zalloc_consistent(e1, e2, e3) + dma_alloc_coherent(&e1->dev, e2, e3, GFP_) @@ expression e1, e2, e3, e4; @@ - pci_free_consistent(e1, e2, e3, e4) + dma_free_coherent(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_map_single(e1, e2, e3, e4) + dma_map_single(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_unmap_single(e1, e2, e3, e4) + dma_unmap_single(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4, e5; @@ - pci_map_page(e1, e2, e3, e4, e5) + dma_map_page(&e1->dev, e2, e3, e4, e5) @@ expression e1, e2, e3, e4; @@ - pci_unmap_page(e1, e2, e3, e4) + dma_unmap_page(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_map_sg(e1, e2, e3, e4) + dma_map_sg(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_unmap_sg(e1, e2, e3, e4) + dma_unmap_sg(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_single_for_cpu(e1, e2, e3, e4) + dma_sync_single_for_cpu(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_single_for_device(e1, e2, e3, e4) + dma_sync_single_for_device(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_sg_for_cpu(e1, e2, e3, e4) + dma_sync_sg_for_cpu(&e1->dev, e2, e3, e4) @@ expression e1, e2, e3, e4; @@ - pci_dma_sync_sg_for_device(e1, e2, e3, e4) + dma_sync_sg_for_device(&e1->dev, e2, e3, e4) @@ expression e1, e2; @@ - pci_dma_mapping_error(e1, e2) + dma_mapping_error(&e1->dev, e2) @@ expression e1, e2; @@ - pci_set_dma_mask(e1, e2) + dma_set_mask(&e1->dev, e2) @@ expression e1, e2; @@ - pci_set_consistent_dma_mask(e1, e2) + dma_set_coherent_mask(&e1->dev, e2) Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: v4l2-mc: fix a warning messageAntti Keränen
The message erroneously told that the pad wasn't found from a tuner when in reality it wasn't found from a decoder. Signed-off-by: Antti Keränen <detegr@rbx.email> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: rkvdec: Remove of_match_ptr()Fabio Estevam
When building with CONFIG_OF not set, the following clang build warning is seen: >> drivers/staging/media/rkvdec/rkvdec.c:967:34: warning: unused variable 'of_rkvdec_match' [-Wunused-const-variable] Fix the warning by removing the unnecessary of_match_ptr(). Reported-by: kernel test robot <lkp@intel.com> Fixes: cd33c830448b ("media: rkvdec: Add the rkvdec driver") Signed-off-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: adv7604: writing a one-block EDID failedHans Verkuil
The adv7604 refused to accept an one-block EDID, it required two blocks. Fix this. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: buffer.rst: fix incorrect :c:typeHans Verkuil
:c:type:`struct v4l2_requestbuffers` should be struct :c:type:`v4l2_requestbuffers`. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: vidioc-g-ext-ctrls.rst: reformat tables and clarify which vs ctrl_classHans Verkuil
The VIDIOC_G/S/TRY_EXT_CTRLS documentation has large explanatory texts for some of the fields in a table. This makes it hard to read. Move those text to a new cell spanning the whole width of the table, similar to what was done for struct v4l2_pix_format. This makes it much more readable. Also move the 'ctrl_class' description to below the 'which' description and just mention that it is deprecated and that 'which' should be used instead. Finally remove 'note::' for the V4L2_CTRL_WHICH_DEF_VAL description. It doesn't have to be marked as a note, it's just a simple paragraph. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: media/pci/pt1: Assign value when defining variableszuoqilin
When defining variables and assigning values can be done at the same time. Signed-off-by: zuoqilin <zuoqilin@yulong.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: coda: Remove unneeded of_match_ptr()Fabio Estevam
The coda driver only runs on i.MX, which is a DT-only platform, so remove the unneeded of_match_ptr(). Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: videobuf2: Exit promptly if size = 0Ricardo Ribalda
Exit as soon as possible if a driver wants to allocate a buffer of size 0, and print a warning to help fixing the issue. Signed-off-by: Ricardo Ribalda <ribalda@chromium.org> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: v4l2-ctrls: Fix h264 hierarchical coding type menu ctrlStanimir Varbanov
Add a name of the menu and fill control type. Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: i2c: adv7842: remove open coded version of SMBus block writeWolfram Sang
The version here is identical to the one in the I2C core, so use the latter version directly. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: mtk-vpu/mtk_vpu.h: fix kernel-doc warningsHans Verkuil
A top-level documentation block was missing 'DOC:'. Fix typos in vpu_wdt_reg_handler() and vpu_mapping_dm_addr(). Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Cc: Irui Wang <irui.wang@mediatek.com> Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: mtk-vcodec: fix kernel-doc warningsHans Verkuil
mtk_vcodec_drv.h: It's '@var:', not '@var - '. In two places 'struct' was used instead of 'enum'. vdec_drv_if.h: It's '@var:', not '@var :'. In one place 'struct' was used instead of 'enum'. venc_ipi_msg.h: It's '@data:', not '@data[8]:', i.e. arrays do not include the size in kernel-doc. It's '@var:', not 'var:'. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Cc: Alexandre Courbot <acourbot@chromium.org> Cc: Tiffany Lin <tiffany.lin@mediatek.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: mtk-mdp: fix kernel-doc warningsHans Verkuil
mtk_mdp_comp.h: MTK_MDP_COMP_TYPE_MAX was undocumented, but it is also unused, so just remove it. mtk_mdp_core.h: add missing '*' inside comment blocks, add a missing : after '@ctrls' and add a missing struct keyword. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Cc: Eizan Miyamoto <eizan@chromium.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: mtk-jpeg/mtk_jpeg_core.h: fix kernel-doc warningsHans Verkuil
Add missing 'struct' keywords and fix typos in two struct member names. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Cc: Xia Jiang <xia.jiang@mediatek.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-03-22media: staging: media: meson: vdec: fix kernel-doc warningHans Verkuil
One comment used /** instead of /*, so it caused kernel-doc warnings. Just turn it into a regular comment. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Cc: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>