* [PATCH v4 00/33] Media Kconfig menu reorg and improvements
@ 2020-03-31 11:11 Mauro Carvalho Chehab
2020-03-31 11:11 ` [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files Mauro Carvalho Chehab
2020-03-31 11:11 ` [PATCH v4 19/33] media: Kconfig files: use select for V4L2 subdevs and MC Mauro Carvalho Chehab
0 siblings, 2 replies; 9+ messages in thread
From: Mauro Carvalho Chehab @ 2020-03-31 11:11 UTC (permalink / raw)
To: Linux Media Mailing List
Cc: devel, linux-samsung-soc, Mauro Carvalho Chehab, linux-kernel,
linux-renesas-soc, linux-rockchip, linux1394-devel,
linux-arm-kernel
The media Kconfig menu is complex. From time to time, it requires some
improvements.
This series is organized on two parts:
1. Patches 1 to 19: cleanups and improvements;
- Try to be smarter when selecting features. So, auto-select
Cypress firmware support on drivers that use it.
Also, auto-select Media Controller and V4L2 subdevice
API for devices that won't work without such features.
Please notice that some drivers have can work optionally
with those features enabled (or not). For those, users
should still explicitly enable such features.
- Platform and test drivers have now an option at the device
support selection;
- The test drivers are not platform drivers. They deserve
their own directory. When a test driver is selected, the
needed API support will be automatically selected.
- Do some Kconfig reorg, in order to keep the main media
Kconfig as clean as possible.
- The help messafe for media support was outdated;
- The ddbridge driver was abusing at the dvb dummy frontend
driver (meant to be just an example). It will now have its
own internal dummy driver, as the original one will soon receive
more code and become a virtual driver.
- There's a longstanding issue with hybrid TV devices: for
an hybrid device to work, *both* analog and digital TV
would need to be selected. As the Kconfig language
improved, we can now address it. So, selecting either
analog or digital TV support should display all hybrid
devices. When an hybrid driver is selected, both V4L2
and DVB core will be available.
2. Patches 20 to 33: visual changes.
- At the beginning, media had just "technical" options to
enable/disable each feature. However, that leads into
hundreds of different options, being a nightmare for a
mortal to set it up.
So, the Kconfig menu options were re-designed in order
to bring a more user-oriented view:
The initial items select the type of devices (analog TV,
digital TV, cameras, ...). Selecting it would auto-select
the core drivers. The next step would be to select
either PCI or USB, and the needed driver.
While this makes life simpler, now there are many
embedded developers. Most seem to prefer to be
able of seeing everything without filters.
The main focus of this part is to make everybody
happy: it is now possible to unselect the filters, making
all options visible. Also, now, when the filter is enabled,
the media drivers menu will show a message warning
that the filter is active.
Hopefully, this should make both embedded developers
and normal users happy.
- The media menus now have a more modern visual, grouping
options in a way that it is now clearer about what they do.
So, the Media support menu is now:
--- Media support
[ ] Filter media drivers
[ ] Autoselect ancillary drivers
Media device types --->
Media core support --->
Video4Linux options --->
Media controller options --->
Digital TV options --->
HDMI CEC options --->
Media drivers --->
Media ancillary drivers --->
Mauro Carvalho Chehab (33):
media: dvb-usb: auto-select CYPRESS_FIRMWARE
media: Kconfig: add an option to filter in/out platform drivers
media: Kconfig: not all V4L2 platform drivers are for camera
media: pci: move VIDEO_PCI_SKELETON to a different Kconfig
media: Kconfig: update the MEDIA_SUPPORT help message
media: split test drivers from platform directory
media: Kconfig: move comment to siano include
media: Kconfig: move drivers-specific TTPCI_EEPROM Kconfig var
media: Kconfig: mode firewire comment to firewire/Kconfig
media: ddbridge: copy the dvb_dummy_fe driver to ddbridge
media: ddbridge-dummy_fe: do some vars and function renames
media: ddbridge: use the ddbridge's own dummy fe driver
media: Kconfig: mark other drivers as test drivers
media: Kconfig: simplify some dependencies
media: Kconfig: better support hybrid TV devices
media: Kconfig: fix selection for test drivers
media: add SPDX headers on Kconfig and Makefile files
media: dvb-core: Kconfig: default to use dynamic minors
media: Kconfig files: use select for V4L2 subdevs and MC
media: Kconfig: reorganize the drivers menu options
media: Kconfig: use a sub-menu to select supported devices
media: Kconfig: make filtering devices optional
media: Kconfig: warn if drivers are filtered
media: Kconfig: move CEC-specific options to cec/Kconfig
media: Kconfig: move DVB-specific options to dvb-core/Kconfig
media: Kconfig: move V4L2 subdev API to v4l2-core/Kconfig
media: Kconfig: move media controller core select to main Kconfig
media: Kconfig: place all options under a sub-menu
media: Kconfig: move the position of sub-driver autoselection
media: Kconfig: on !EMBEDDED && !EXPERT, enable driver filtering
media: Kconfig: Better organize the per-API options
media: i2c/Kconfig: reorganize items there
media: Kconfig: don't use visible for device type select
drivers/media/Kconfig | 262 ++++++-----
drivers/media/cec/Kconfig | 10 +
drivers/media/common/Kconfig | 2 +-
drivers/media/dvb-core/Kconfig | 27 ++
drivers/media/dvb-frontends/Kconfig | 15 +-
drivers/media/firewire/Kconfig | 5 +-
drivers/media/i2c/Kconfig | 406 +++++++++++-------
drivers/media/i2c/et8ek8/Kconfig | 4 +-
drivers/media/i2c/m5mols/Kconfig | 5 +-
drivers/media/i2c/smiapp/Kconfig | 5 +-
drivers/media/mc/Kconfig | 11 +-
drivers/media/mmc/Kconfig | 1 -
drivers/media/mmc/siano/Kconfig | 2 +
drivers/media/pci/Kconfig | 24 +-
drivers/media/pci/bt8xx/Kconfig | 5 +-
drivers/media/pci/cobalt/Kconfig | 4 +-
drivers/media/pci/cx18/Kconfig | 2 +-
drivers/media/pci/cx23885/Kconfig | 4 +-
drivers/media/pci/cx88/Kconfig | 4 +-
drivers/media/pci/ddbridge/Kconfig | 1 -
drivers/media/pci/ddbridge/Makefile | 2 +-
drivers/media/pci/ddbridge/ddbridge-core.c | 4 +-
.../media/pci/ddbridge/ddbridge-dummy-fe.c | 153 +++++++
.../media/pci/ddbridge/ddbridge-dummy-fe.h | 16 +
drivers/media/pci/intel/ipu3/Kconfig | 4 +-
drivers/media/pci/saa7134/Kconfig | 4 +-
drivers/media/pci/saa7164/Kconfig | 2 +-
drivers/media/pci/sta2x11/Kconfig | 6 +-
drivers/media/platform/Kconfig | 56 +--
drivers/media/platform/Makefile | 5 -
drivers/media/platform/am437x/Kconfig | 4 +-
drivers/media/platform/atmel/Kconfig | 4 +-
drivers/media/platform/cadence/Kconfig | 8 +-
drivers/media/platform/exynos4-is/Kconfig | 5 +-
drivers/media/platform/rcar-vin/Kconfig | 8 +-
drivers/media/platform/sunxi/Kconfig | 2 +
drivers/media/platform/sunxi/Makefile | 2 +
.../media/platform/sunxi/sun4i-csi/Kconfig | 6 +-
.../media/platform/sunxi/sun4i-csi/Makefile | 2 +
.../media/platform/sunxi/sun6i-csi/Kconfig | 4 +-
drivers/media/platform/xilinx/Kconfig | 4 +-
drivers/media/spi/Kconfig | 4 +-
drivers/media/test_drivers/Kconfig | 28 ++
drivers/media/test_drivers/Makefile | 9 +
.../vicodec/Kconfig | 0
.../vicodec/Makefile | 0
.../vicodec/codec-fwht.c | 0
.../vicodec/codec-fwht.h | 0
.../vicodec/codec-v4l2-fwht.c | 0
.../vicodec/codec-v4l2-fwht.h | 0
.../vicodec/vicodec-core.c | 0
.../media/{platform => test_drivers}/vim2m.c | 0
.../{platform => test_drivers}/vimc/Kconfig | 4 +-
.../{platform => test_drivers}/vimc/Makefile | 0
.../vimc/vimc-capture.c | 0
.../vimc/vimc-common.c | 0
.../vimc/vimc-common.h | 0
.../vimc/vimc-core.c | 0
.../vimc/vimc-debayer.c | 0
.../vimc/vimc-scaler.c | 0
.../vimc/vimc-sensor.c | 0
.../vimc/vimc-streamer.c | 0
.../vimc/vimc-streamer.h | 0
.../{platform => test_drivers}/vivid/Kconfig | 0
.../{platform => test_drivers}/vivid/Makefile | 0
.../vivid/vivid-cec.c | 0
.../vivid/vivid-cec.h | 0
.../vivid/vivid-core.c | 0
.../vivid/vivid-core.h | 0
.../vivid/vivid-ctrls.c | 0
.../vivid/vivid-ctrls.h | 0
.../vivid/vivid-kthread-cap.c | 0
.../vivid/vivid-kthread-cap.h | 0
.../vivid/vivid-kthread-out.c | 0
.../vivid/vivid-kthread-out.h | 0
.../vivid/vivid-kthread-touch.c | 0
.../vivid/vivid-kthread-touch.h | 0
.../vivid/vivid-meta-cap.c | 0
.../vivid/vivid-meta-cap.h | 0
.../vivid/vivid-meta-out.c | 0
.../vivid/vivid-meta-out.h | 0
.../vivid/vivid-osd.c | 0
.../vivid/vivid-osd.h | 0
.../vivid/vivid-radio-common.c | 0
.../vivid/vivid-radio-common.h | 0
.../vivid/vivid-radio-rx.c | 0
.../vivid/vivid-radio-rx.h | 0
.../vivid/vivid-radio-tx.c | 0
.../vivid/vivid-radio-tx.h | 0
.../vivid/vivid-rds-gen.c | 0
.../vivid/vivid-rds-gen.h | 0
.../vivid/vivid-sdr-cap.c | 0
.../vivid/vivid-sdr-cap.h | 0
.../vivid/vivid-touch-cap.c | 0
.../vivid/vivid-touch-cap.h | 0
.../vivid/vivid-vbi-cap.c | 0
.../vivid/vivid-vbi-cap.h | 0
.../vivid/vivid-vbi-gen.c | 0
.../vivid/vivid-vbi-gen.h | 0
.../vivid/vivid-vbi-out.c | 0
.../vivid/vivid-vbi-out.h | 0
.../vivid/vivid-vid-cap.c | 0
.../vivid/vivid-vid-cap.h | 0
.../vivid/vivid-vid-common.c | 0
.../vivid/vivid-vid-common.h | 0
.../vivid/vivid-vid-out.c | 0
.../vivid/vivid-vid-out.h | 0
drivers/media/usb/Kconfig | 14 +-
drivers/media/usb/au0828/Kconfig | 6 +-
drivers/media/usb/cx231xx/Kconfig | 4 +-
drivers/media/usb/dvb-usb/Kconfig | 1 +
drivers/media/usb/pvrusb2/Kconfig | 4 +-
drivers/media/usb/tm6000/Kconfig | 4 +-
drivers/media/v4l2-core/Kconfig | 19 +-
drivers/staging/media/hantro/Kconfig | 5 +-
drivers/staging/media/hantro/Makefile | 2 +
drivers/staging/media/imx/Kconfig | 5 +-
drivers/staging/media/ipu3/Kconfig | 3 +-
drivers/staging/media/omap4iss/Kconfig | 4 +-
drivers/staging/media/rkisp1/Kconfig | 4 +-
drivers/staging/media/rkisp1/Makefile | 2 +
drivers/staging/media/sunxi/cedrus/Kconfig | 5 +-
122 files changed, 829 insertions(+), 398 deletions(-)
create mode 100644 drivers/media/pci/ddbridge/ddbridge-dummy-fe.c
create mode 100644 drivers/media/pci/ddbridge/ddbridge-dummy-fe.h
create mode 100644 drivers/media/test_drivers/Kconfig
create mode 100644 drivers/media/test_drivers/Makefile
rename drivers/media/{platform => test_drivers}/vicodec/Kconfig (100%)
rename drivers/media/{platform => test_drivers}/vicodec/Makefile (100%)
rename drivers/media/{platform => test_drivers}/vicodec/codec-fwht.c (100%)
rename drivers/media/{platform => test_drivers}/vicodec/codec-fwht.h (100%)
rename drivers/media/{platform => test_drivers}/vicodec/codec-v4l2-fwht.c (100%)
rename drivers/media/{platform => test_drivers}/vicodec/codec-v4l2-fwht.h (100%)
rename drivers/media/{platform => test_drivers}/vicodec/vicodec-core.c (100%)
rename drivers/media/{platform => test_drivers}/vim2m.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/Kconfig (83%)
rename drivers/media/{platform => test_drivers}/vimc/Makefile (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-capture.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-common.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-common.h (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-core.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-debayer.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-scaler.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-sensor.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-streamer.c (100%)
rename drivers/media/{platform => test_drivers}/vimc/vimc-streamer.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/Kconfig (100%)
rename drivers/media/{platform => test_drivers}/vivid/Makefile (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-cec.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-cec.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-core.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-core.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-ctrls.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-ctrls.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-kthread-cap.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-kthread-cap.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-kthread-out.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-kthread-out.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-kthread-touch.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-kthread-touch.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-meta-cap.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-meta-cap.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-meta-out.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-meta-out.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-osd.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-osd.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-radio-common.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-radio-common.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-radio-rx.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-radio-rx.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-radio-tx.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-radio-tx.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-rds-gen.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-rds-gen.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-sdr-cap.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-sdr-cap.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-touch-cap.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-touch-cap.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vbi-cap.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vbi-cap.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vbi-gen.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vbi-gen.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vbi-out.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vbi-out.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vid-cap.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vid-cap.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vid-common.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vid-common.h (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vid-out.c (100%)
rename drivers/media/{platform => test_drivers}/vivid/vivid-vid-out.h (100%)
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 9+ messages in thread* [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 11:11 [PATCH v4 00/33] Media Kconfig menu reorg and improvements Mauro Carvalho Chehab @ 2020-03-31 11:11 ` Mauro Carvalho Chehab 2020-03-31 12:06 ` Laurent Pinchart 2020-03-31 11:11 ` [PATCH v4 19/33] media: Kconfig files: use select for V4L2 subdevs and MC Mauro Carvalho Chehab 1 sibling, 1 reply; 9+ messages in thread From: Mauro Carvalho Chehab @ 2020-03-31 11:11 UTC (permalink / raw) To: Linux Media Mailing List Cc: devel, Philipp Zabel, Mauro Carvalho Chehab, Greg Kroah-Hartman, Helen Koike, Maxime Ripard, linux-rockchip, Chen-Yu Tsai, Laurent Pinchart, Sakari Ailus, Ezequiel Garcia, linux-arm-kernel Most of media Kconfig/Makefile files already has SPDX, but there are a few ones still missing. Add it to them. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- drivers/media/dvb-frontends/Kconfig | 2 ++ drivers/media/mc/Kconfig | 2 ++ drivers/media/platform/sunxi/Kconfig | 2 ++ drivers/media/platform/sunxi/Makefile | 2 ++ drivers/media/platform/sunxi/sun4i-csi/Kconfig | 2 ++ drivers/media/platform/sunxi/sun4i-csi/Makefile | 2 ++ drivers/staging/media/hantro/Makefile | 2 ++ drivers/staging/media/rkisp1/Makefile | 2 ++ 8 files changed, 16 insertions(+) diff --git a/drivers/media/dvb-frontends/Kconfig b/drivers/media/dvb-frontends/Kconfig index 1f45808d94da..aa24506257b3 100644 --- a/drivers/media/dvb-frontends/Kconfig +++ b/drivers/media/dvb-frontends/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + if MEDIA_DIGITAL_TV_SUPPORT comment "DVB Frontend drivers hidden by 'Autoselect ancillary drivers'" diff --git a/drivers/media/mc/Kconfig b/drivers/media/mc/Kconfig index 3b9795cfcb36..0c5c52f14c64 100644 --- a/drivers/media/mc/Kconfig +++ b/drivers/media/mc/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + # # Media controller # Selectable only for webcam/grabbers, as other drivers don't use it diff --git a/drivers/media/platform/sunxi/Kconfig b/drivers/media/platform/sunxi/Kconfig index 71808e93ac2e..7151cc249afa 100644 --- a/drivers/media/platform/sunxi/Kconfig +++ b/drivers/media/platform/sunxi/Kconfig @@ -1,2 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 + source "drivers/media/platform/sunxi/sun4i-csi/Kconfig" source "drivers/media/platform/sunxi/sun6i-csi/Kconfig" diff --git a/drivers/media/platform/sunxi/Makefile b/drivers/media/platform/sunxi/Makefile index ff0993f70dc3..fc537c9f5ca9 100644 --- a/drivers/media/platform/sunxi/Makefile +++ b/drivers/media/platform/sunxi/Makefile @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + obj-y += sun4i-csi/ obj-y += sun6i-csi/ obj-y += sun8i-di/ diff --git a/drivers/media/platform/sunxi/sun4i-csi/Kconfig b/drivers/media/platform/sunxi/sun4i-csi/Kconfig index e86e29b6a603..93b4e82a2655 100644 --- a/drivers/media/platform/sunxi/sun4i-csi/Kconfig +++ b/drivers/media/platform/sunxi/sun4i-csi/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config VIDEO_SUN4I_CSI tristate "Allwinner A10 CMOS Sensor Interface Support" depends on VIDEO_V4L2 && COMMON_CLK && VIDEO_V4L2_SUBDEV_API && HAS_DMA diff --git a/drivers/media/platform/sunxi/sun4i-csi/Makefile b/drivers/media/platform/sunxi/sun4i-csi/Makefile index 7c790a57f5ee..5062b006d63e 100644 --- a/drivers/media/platform/sunxi/sun4i-csi/Makefile +++ b/drivers/media/platform/sunxi/sun4i-csi/Makefile @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + sun4i-csi-y += sun4i_csi.o sun4i-csi-y += sun4i_dma.o sun4i-csi-y += sun4i_v4l2.o diff --git a/drivers/staging/media/hantro/Makefile b/drivers/staging/media/hantro/Makefile index 68c29a9c4946..743ce08eb184 100644 --- a/drivers/staging/media/hantro/Makefile +++ b/drivers/staging/media/hantro/Makefile @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + obj-$(CONFIG_VIDEO_HANTRO) += hantro-vpu.o hantro-vpu-y += \ diff --git a/drivers/staging/media/rkisp1/Makefile b/drivers/staging/media/rkisp1/Makefile index 69ca59c7ef34..ab32a77db8f7 100644 --- a/drivers/staging/media/rkisp1/Makefile +++ b/drivers/staging/media/rkisp1/Makefile @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + obj-$(CONFIG_VIDEO_ROCKCHIP_ISP1) += rockchip-isp1.o rockchip-isp1-objs += rkisp1-capture.o \ rkisp1-common.o \ -- 2.25.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 11:11 ` [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files Mauro Carvalho Chehab @ 2020-03-31 12:06 ` Laurent Pinchart 2020-03-31 12:22 ` Greg Kroah-Hartman 2020-03-31 15:49 ` SPDX headers - Was: " Mauro Carvalho Chehab 0 siblings, 2 replies; 9+ messages in thread From: Laurent Pinchart @ 2020-03-31 12:06 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: devel, Sakari Ailus, Greg Kroah-Hartman, Helen Koike, Maxime Ripard, linux-rockchip, Chen-Yu Tsai, Philipp Zabel, Ezequiel Garcia, linux-arm-kernel, Linux Media Mailing List Hi Mauro, Thank you for the patch. On Tue, Mar 31, 2020 at 01:11:53PM +0200, Mauro Carvalho Chehab wrote: > Most of media Kconfig/Makefile files already has SPDX, > but there are a few ones still missing. Add it to them. I think it's a good idea to state the license of each source file, the patch looks fine to me. I've however been thinking about licenses for build system files recently, and I'll hijack this thread a bit to ask a question :-) For a project like the Linux kernel, and especially for subsystems that are covered by a single license, the choice is easy, we can apply the same license to the build files. However, for a project that contains components covered by different licenses (such as, for instance, an LGPL library, a GPL application and a BSD plugin), how should the license covering the build system files be selected ? I searched a bit for guidance on this topic, and couldn't find much. > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > --- > drivers/media/dvb-frontends/Kconfig | 2 ++ > drivers/media/mc/Kconfig | 2 ++ > drivers/media/platform/sunxi/Kconfig | 2 ++ > drivers/media/platform/sunxi/Makefile | 2 ++ > drivers/media/platform/sunxi/sun4i-csi/Kconfig | 2 ++ > drivers/media/platform/sunxi/sun4i-csi/Makefile | 2 ++ > drivers/staging/media/hantro/Makefile | 2 ++ > drivers/staging/media/rkisp1/Makefile | 2 ++ > 8 files changed, 16 insertions(+) > > diff --git a/drivers/media/dvb-frontends/Kconfig b/drivers/media/dvb-frontends/Kconfig > index 1f45808d94da..aa24506257b3 100644 > --- a/drivers/media/dvb-frontends/Kconfig > +++ b/drivers/media/dvb-frontends/Kconfig > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > if MEDIA_DIGITAL_TV_SUPPORT > > comment "DVB Frontend drivers hidden by 'Autoselect ancillary drivers'" > diff --git a/drivers/media/mc/Kconfig b/drivers/media/mc/Kconfig > index 3b9795cfcb36..0c5c52f14c64 100644 > --- a/drivers/media/mc/Kconfig > +++ b/drivers/media/mc/Kconfig > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > # > # Media controller > # Selectable only for webcam/grabbers, as other drivers don't use it > diff --git a/drivers/media/platform/sunxi/Kconfig b/drivers/media/platform/sunxi/Kconfig > index 71808e93ac2e..7151cc249afa 100644 > --- a/drivers/media/platform/sunxi/Kconfig > +++ b/drivers/media/platform/sunxi/Kconfig > @@ -1,2 +1,4 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > source "drivers/media/platform/sunxi/sun4i-csi/Kconfig" > source "drivers/media/platform/sunxi/sun6i-csi/Kconfig" > diff --git a/drivers/media/platform/sunxi/Makefile b/drivers/media/platform/sunxi/Makefile > index ff0993f70dc3..fc537c9f5ca9 100644 > --- a/drivers/media/platform/sunxi/Makefile > +++ b/drivers/media/platform/sunxi/Makefile > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > obj-y += sun4i-csi/ > obj-y += sun6i-csi/ > obj-y += sun8i-di/ > diff --git a/drivers/media/platform/sunxi/sun4i-csi/Kconfig b/drivers/media/platform/sunxi/sun4i-csi/Kconfig > index e86e29b6a603..93b4e82a2655 100644 > --- a/drivers/media/platform/sunxi/sun4i-csi/Kconfig > +++ b/drivers/media/platform/sunxi/sun4i-csi/Kconfig > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > config VIDEO_SUN4I_CSI > tristate "Allwinner A10 CMOS Sensor Interface Support" > depends on VIDEO_V4L2 && COMMON_CLK && VIDEO_V4L2_SUBDEV_API && HAS_DMA > diff --git a/drivers/media/platform/sunxi/sun4i-csi/Makefile b/drivers/media/platform/sunxi/sun4i-csi/Makefile > index 7c790a57f5ee..5062b006d63e 100644 > --- a/drivers/media/platform/sunxi/sun4i-csi/Makefile > +++ b/drivers/media/platform/sunxi/sun4i-csi/Makefile > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > sun4i-csi-y += sun4i_csi.o > sun4i-csi-y += sun4i_dma.o > sun4i-csi-y += sun4i_v4l2.o > diff --git a/drivers/staging/media/hantro/Makefile b/drivers/staging/media/hantro/Makefile > index 68c29a9c4946..743ce08eb184 100644 > --- a/drivers/staging/media/hantro/Makefile > +++ b/drivers/staging/media/hantro/Makefile > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > obj-$(CONFIG_VIDEO_HANTRO) += hantro-vpu.o > > hantro-vpu-y += \ > diff --git a/drivers/staging/media/rkisp1/Makefile b/drivers/staging/media/rkisp1/Makefile > index 69ca59c7ef34..ab32a77db8f7 100644 > --- a/drivers/staging/media/rkisp1/Makefile > +++ b/drivers/staging/media/rkisp1/Makefile > @@ -1,3 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > + > obj-$(CONFIG_VIDEO_ROCKCHIP_ISP1) += rockchip-isp1.o > rockchip-isp1-objs += rkisp1-capture.o \ > rkisp1-common.o \ -- Regards, Laurent Pinchart _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 12:06 ` Laurent Pinchart @ 2020-03-31 12:22 ` Greg Kroah-Hartman 2020-03-31 12:39 ` Laurent Pinchart 2020-03-31 15:49 ` SPDX headers - Was: " Mauro Carvalho Chehab 1 sibling, 1 reply; 9+ messages in thread From: Greg Kroah-Hartman @ 2020-03-31 12:22 UTC (permalink / raw) To: Laurent Pinchart Cc: devel, Philipp Zabel, Mauro Carvalho Chehab, Chen-Yu Tsai, Maxime Ripard, linux-rockchip, Helen Koike, Sakari Ailus, Ezequiel Garcia, linux-arm-kernel, Linux Media Mailing List On Tue, Mar 31, 2020 at 03:06:08PM +0300, Laurent Pinchart wrote: > Hi Mauro, > > Thank you for the patch. > > On Tue, Mar 31, 2020 at 01:11:53PM +0200, Mauro Carvalho Chehab wrote: > > Most of media Kconfig/Makefile files already has SPDX, > > but there are a few ones still missing. Add it to them. > > I think it's a good idea to state the license of each source file, the > patch looks fine to me. I've however been thinking about licenses for > build system files recently, and I'll hijack this thread a bit to ask a > question :-) > > For a project like the Linux kernel, and especially for subsystems that > are covered by a single license, the choice is easy, we can apply the > same license to the build files. However, for a project that contains > components covered by different licenses (such as, for instance, an LGPL > library, a GPL application and a BSD plugin), how should the license > covering the build system files be selected ? I searched a bit for > guidance on this topic, and couldn't find much. By "default" if there is no license on a file in the kernel tree, it falls under the GPLv2 license and we should explicity state it, like this patch does. So this is fine, but if you want to license the build files some other way, that's good too, but do so when you add them to the tree, not at some later time when it could cause confusion :) thanks, greg k-h _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 12:22 ` Greg Kroah-Hartman @ 2020-03-31 12:39 ` Laurent Pinchart 2020-03-31 12:47 ` Greg Kroah-Hartman 0 siblings, 1 reply; 9+ messages in thread From: Laurent Pinchart @ 2020-03-31 12:39 UTC (permalink / raw) To: Greg Kroah-Hartman Cc: devel, Philipp Zabel, Mauro Carvalho Chehab, Chen-Yu Tsai, Maxime Ripard, linux-rockchip, Helen Koike, Sakari Ailus, Ezequiel Garcia, linux-arm-kernel, Linux Media Mailing List Hi Greg, On Tue, Mar 31, 2020 at 02:22:09PM +0200, Greg Kroah-Hartman wrote: > On Tue, Mar 31, 2020 at 03:06:08PM +0300, Laurent Pinchart wrote: > > On Tue, Mar 31, 2020 at 01:11:53PM +0200, Mauro Carvalho Chehab wrote: > > > Most of media Kconfig/Makefile files already has SPDX, > > > but there are a few ones still missing. Add it to them. > > > > I think it's a good idea to state the license of each source file, the > > patch looks fine to me. I've however been thinking about licenses for > > build system files recently, and I'll hijack this thread a bit to ask a > > question :-) > > > > For a project like the Linux kernel, and especially for subsystems that > > are covered by a single license, the choice is easy, we can apply the > > same license to the build files. However, for a project that contains > > components covered by different licenses (such as, for instance, an LGPL > > library, a GPL application and a BSD plugin), how should the license > > covering the build system files be selected ? I searched a bit for > > guidance on this topic, and couldn't find much. > > By "default" if there is no license on a file in the kernel tree, it > falls under the GPLv2 license and we should explicity state it, like > this patch does. > > So this is fine, but if you want to license the build files some other > way, that's good too, but do so when you add them to the tree, not at > some later time when it could cause confusion :) Thanks for your answer. I was hijacking the thread a little bit, the question wasn't related to the kernel, but in this case to libcamera. We've been wondering how to pick licenses for build files there, and I thought fellow kernel developers may have valuable input on this topic. -- Regards, Laurent Pinchart _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 12:39 ` Laurent Pinchart @ 2020-03-31 12:47 ` Greg Kroah-Hartman 2020-03-31 12:52 ` Laurent Pinchart 0 siblings, 1 reply; 9+ messages in thread From: Greg Kroah-Hartman @ 2020-03-31 12:47 UTC (permalink / raw) To: Laurent Pinchart Cc: devel, Sakari Ailus, Mauro Carvalho Chehab, Helen Koike, Maxime Ripard, linux-rockchip, Chen-Yu Tsai, Philipp Zabel, Ezequiel Garcia, linux-arm-kernel, Linux Media Mailing List On Tue, Mar 31, 2020 at 03:39:14PM +0300, Laurent Pinchart wrote: > Hi Greg, > > On Tue, Mar 31, 2020 at 02:22:09PM +0200, Greg Kroah-Hartman wrote: > > On Tue, Mar 31, 2020 at 03:06:08PM +0300, Laurent Pinchart wrote: > > > On Tue, Mar 31, 2020 at 01:11:53PM +0200, Mauro Carvalho Chehab wrote: > > > > Most of media Kconfig/Makefile files already has SPDX, > > > > but there are a few ones still missing. Add it to them. > > > > > > I think it's a good idea to state the license of each source file, the > > > patch looks fine to me. I've however been thinking about licenses for > > > build system files recently, and I'll hijack this thread a bit to ask a > > > question :-) > > > > > > For a project like the Linux kernel, and especially for subsystems that > > > are covered by a single license, the choice is easy, we can apply the > > > same license to the build files. However, for a project that contains > > > components covered by different licenses (such as, for instance, an LGPL > > > library, a GPL application and a BSD plugin), how should the license > > > covering the build system files be selected ? I searched a bit for > > > guidance on this topic, and couldn't find much. > > > > By "default" if there is no license on a file in the kernel tree, it > > falls under the GPLv2 license and we should explicity state it, like > > this patch does. > > > > So this is fine, but if you want to license the build files some other > > way, that's good too, but do so when you add them to the tree, not at > > some later time when it could cause confusion :) > > Thanks for your answer. I was hijacking the thread a little bit, the > question wasn't related to the kernel, but in this case to libcamera. > We've been wondering how to pick licenses for build files there, and I > thought fellow kernel developers may have valuable input on this topic. I would make the files the same license as your project overall is to make things simpler for everyone involved :) thanks, greg k-h _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 12:47 ` Greg Kroah-Hartman @ 2020-03-31 12:52 ` Laurent Pinchart 0 siblings, 0 replies; 9+ messages in thread From: Laurent Pinchart @ 2020-03-31 12:52 UTC (permalink / raw) To: Greg Kroah-Hartman Cc: devel, Sakari Ailus, Mauro Carvalho Chehab, Helen Koike, Maxime Ripard, linux-rockchip, Chen-Yu Tsai, Philipp Zabel, Ezequiel Garcia, linux-arm-kernel, Linux Media Mailing List Hi Greg, On Tue, Mar 31, 2020 at 02:47:56PM +0200, Greg Kroah-Hartman wrote: > On Tue, Mar 31, 2020 at 03:39:14PM +0300, Laurent Pinchart wrote: > > On Tue, Mar 31, 2020 at 02:22:09PM +0200, Greg Kroah-Hartman wrote: > > > On Tue, Mar 31, 2020 at 03:06:08PM +0300, Laurent Pinchart wrote: > > > > On Tue, Mar 31, 2020 at 01:11:53PM +0200, Mauro Carvalho Chehab wrote: > > > > > Most of media Kconfig/Makefile files already has SPDX, > > > > > but there are a few ones still missing. Add it to them. > > > > > > > > I think it's a good idea to state the license of each source file, the > > > > patch looks fine to me. I've however been thinking about licenses for > > > > build system files recently, and I'll hijack this thread a bit to ask a > > > > question :-) > > > > > > > > For a project like the Linux kernel, and especially for subsystems that > > > > are covered by a single license, the choice is easy, we can apply the > > > > same license to the build files. However, for a project that contains > > > > components covered by different licenses (such as, for instance, an LGPL > > > > library, a GPL application and a BSD plugin), how should the license > > > > covering the build system files be selected ? I searched a bit for > > > > guidance on this topic, and couldn't find much. > > > > > > By "default" if there is no license on a file in the kernel tree, it > > > falls under the GPLv2 license and we should explicity state it, like > > > this patch does. > > > > > > So this is fine, but if you want to license the build files some other > > > way, that's good too, but do so when you add them to the tree, not at > > > some later time when it could cause confusion :) > > > > Thanks for your answer. I was hijacking the thread a little bit, the > > question wasn't related to the kernel, but in this case to libcamera. > > We've been wondering how to pick licenses for build files there, and I > > thought fellow kernel developers may have valuable input on this topic. > > I would make the files the same license as your project overall is to > make things simpler for everyone involved :) I would if the project had a single license, but we have GPL, LGPL and BSD components :-S -- Regards, Laurent Pinchart _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* SPDX headers - Was: Re: [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files 2020-03-31 12:06 ` Laurent Pinchart 2020-03-31 12:22 ` Greg Kroah-Hartman @ 2020-03-31 15:49 ` Mauro Carvalho Chehab 1 sibling, 0 replies; 9+ messages in thread From: Mauro Carvalho Chehab @ 2020-03-31 15:49 UTC (permalink / raw) To: Laurent Pinchart Cc: devel, Sakari Ailus, Greg Kroah-Hartman, Helen Koike, Maxime Ripard, linux-rockchip, Chen-Yu Tsai, Philipp Zabel, Ezequiel Garcia, linux-arm-kernel, Linux Media Mailing List Em Tue, 31 Mar 2020 15:06:08 +0300 Laurent Pinchart <laurent.pinchart@ideasonboard.com> escreveu: > I've however been thinking about licenses for > build system files recently, and I'll hijack this thread a bit to ask a > question :-) Ok, I'll change the subject, as the answers won't be related to the Kernel :-) > For a project like the Linux kernel, and especially for subsystems that > are covered by a single license, the choice is easy, we can apply the > same license to the build files. However, for a project that contains > components covered by different licenses (such as, for instance, an LGPL > library, a GPL application and a BSD plugin), how should the license > covering the build system files be selected ? I searched a bit for > guidance on this topic, and couldn't find much. Then everything becomes a way more complex :-) I guess nobody has a clear answer for that. Also, IANAL. What I can tell is what it would makes sense for me. The big impact of a complex licenses model would be for the ones packaging it on some distro, and for the users of such distros. The distros need to know if they have the rights to redistribute, and need to notify their usages about each package's license. Let's assume a project "foo-utils" that has such complexity. Assuming a project that started on a green field (like libcamera), and such project doesn't use stuff from external libraries, what one could do would be to design it in a way that different licenses would be packaged differently. For instance: foo-libs # everything here is under LGPL foo-bsd-plugin # everything here is under BSD foo-utils # everything here is under GPLv3 Then, on each of them, a COPYING.foo file (or whatever other way distros would use to identify the per-package license) would contain the license with applied to it. Btw, if you want to take a look on a real-case scenario, see, for example: https://build.opensuse.org/package/view_file/devel:libraries:c_c++/v4l-utils/v4l-utils.spec?rev=a250bff0f849e8c2fa7e476a1f2849a8 %package -n libv4l-devel License: LGPLv2+ ... %package -n qv4l2 License: GPLv2+ Btw, GStreamer actually follows a similar approach, but they even split those into different git trees (core, good, bad and ugly plugins). Thanks, Mauro _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v4 19/33] media: Kconfig files: use select for V4L2 subdevs and MC 2020-03-31 11:11 [PATCH v4 00/33] Media Kconfig menu reorg and improvements Mauro Carvalho Chehab 2020-03-31 11:11 ` [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files Mauro Carvalho Chehab @ 2020-03-31 11:11 ` Mauro Carvalho Chehab 1 sibling, 0 replies; 9+ messages in thread From: Mauro Carvalho Chehab @ 2020-03-31 11:11 UTC (permalink / raw) To: Linux Media Mailing List Cc: Alexandre Belloni, Sylwester Nawrocki, Michal Simek, Lad, Prabhakar, Laurent Pinchart, Pavel Machek, Fabio Estevam, devel, linux-renesas-soc, linux-samsung-soc, Mauro Carvalho Chehab, Chen-Yu Tsai, Krzysztof Kozlowski, linux-rockchip, Ludovic Desroches, Kukjin Kim, NXP Linux Team, Steve Longerbeam, Bingbu Cao, Tian Shu Qiu, Yong Zhi, Philipp Zabel, Sascha Hauer, Maxime Ripard, Hans Verkuil, Helen Koike, Yong Deng, Ezequiel Garcia, Pengutronix Kernel Team, linux-arm-kernel, Hyun Kwon, Heungjun Kim, Paul Kocialkowski, Kyungmin Park, Sakari Ailus, Greg Kroah-Hartman, Niklas Söderlund, Shawn Guo There are lots of drivers that only work when the media controller and/or the V4L2 subdev APIs are present. Right now, someone need to first enable those APIs before using those drivers. Well, ideally, drivers, should, instead *optionally* depend on it, in order for PC camera drivers to be able to use them, but nowadays most drivers are UVC cameras, with don't require a sensor driver. So, be it. Let's instead make them select the MEDIA_CONTROLLER and the SUBDEV API, in order to make easier for people to be able of enabling them. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- drivers/media/i2c/Kconfig | 210 ++++++++++++------ drivers/media/i2c/et8ek8/Kconfig | 4 +- drivers/media/i2c/m5mols/Kconfig | 5 +- drivers/media/i2c/smiapp/Kconfig | 5 +- drivers/media/mc/Kconfig | 2 +- drivers/media/pci/cobalt/Kconfig | 4 +- drivers/media/pci/intel/ipu3/Kconfig | 4 +- drivers/media/pci/sta2x11/Kconfig | 6 +- drivers/media/platform/Kconfig | 28 ++- drivers/media/platform/am437x/Kconfig | 4 +- drivers/media/platform/atmel/Kconfig | 4 +- drivers/media/platform/cadence/Kconfig | 8 +- drivers/media/platform/exynos4-is/Kconfig | 5 +- drivers/media/platform/rcar-vin/Kconfig | 8 +- .../media/platform/sunxi/sun4i-csi/Kconfig | 4 +- .../media/platform/sunxi/sun6i-csi/Kconfig | 4 +- drivers/media/platform/xilinx/Kconfig | 4 +- drivers/media/spi/Kconfig | 4 +- drivers/media/test_drivers/vimc/Kconfig | 4 +- drivers/staging/media/hantro/Kconfig | 5 +- drivers/staging/media/imx/Kconfig | 5 +- drivers/staging/media/ipu3/Kconfig | 3 +- drivers/staging/media/omap4iss/Kconfig | 4 +- drivers/staging/media/rkisp1/Kconfig | 4 +- drivers/staging/media/sunxi/cedrus/Kconfig | 5 +- 25 files changed, 237 insertions(+), 106 deletions(-) diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig index 125d596c13dd..4bc4cfea2f20 100644 --- a/drivers/media/i2c/Kconfig +++ b/drivers/media/i2c/Kconfig @@ -19,7 +19,7 @@ config VIDEO_IR_I2C In doubt, say Y. # -# Encoder / Decoder module configuration +# V4L2 I2C drivers that aren't related with Camera support # comment "I2C drivers hidden by 'Autoselect ancillary drivers'" @@ -28,6 +28,10 @@ comment "I2C drivers hidden by 'Autoselect ancillary drivers'" menu "I2C Encoders, decoders, sensors and other helper chips" visible if !MEDIA_HIDE_ANCILLARY_SUBDRV +# +# Encoder / Decoder module configuration +# + comment "Audio decoders, processors and mixers" config VIDEO_TVAUDIO @@ -62,11 +66,13 @@ config VIDEO_TDA9840 config VIDEO_TDA1997X tristate "NXP TDA1997x HDMI receiver" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C depends on SND_SOC select HDMI select SND_PCM select V4L2_FWNODE + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help V4L2 subdevice driver for the NXP TDA1997x HDMI receivers. @@ -204,7 +210,9 @@ comment "Video decoders" config VIDEO_ADV7180 tristate "Analog Devices ADV7180 decoder" - depends on GPIOLIB && VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on GPIOLIB && VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help Support for the Analog Devices ADV7180 video decoder. @@ -223,8 +231,10 @@ config VIDEO_ADV7183 config VIDEO_ADV748X tristate "Analog Devices ADV748x decoder" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C depends on OF + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C select V4L2_FWNODE help @@ -236,8 +246,10 @@ config VIDEO_ADV748X config VIDEO_ADV7604 tristate "Analog Devices ADV7604 decoder" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C depends on GPIOLIB || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C select HDMI select V4L2_FWNODE @@ -260,7 +272,9 @@ config VIDEO_ADV7604_CEC config VIDEO_ADV7842 tristate "Analog Devices ADV7842 decoder" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select HDMI help Support for the Analog Devices ADV7842 video decoder. @@ -347,7 +361,9 @@ config VIDEO_SAA711X config VIDEO_TC358743 tristate "Toshiba TC358743 decoder" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select HDMI select V4L2_FWNODE help @@ -515,8 +531,10 @@ config VIDEO_ADV7393 config VIDEO_ADV7511 tristate "Analog Devices ADV7511 encoder" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C depends on DRM_I2C_ADV7511=n || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select HDMI help Support for the Analog Devices ADV7511 video encoder. @@ -536,7 +554,10 @@ config VIDEO_ADV7511_CEC config VIDEO_AD9389B tristate "Analog Devices AD9389B encoder" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API + help Support for the Analog Devices AD9389B video encoder. @@ -568,12 +589,17 @@ config VIDEO_APTINA_PLL config VIDEO_SMIAPP_PLL tristate +# +# All drivers that are related to Media Camera Support should be here +# + if MEDIA_CAMERA_SUPPORT config VIDEO_HI556 tristate "Hynix Hi-556 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API - depends on MEDIA_CONTROLLER + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the Hynix @@ -584,8 +610,10 @@ config VIDEO_HI556 config VIDEO_IMX214 tristate "Sony IMX214 sensor support" - depends on GPIOLIB && I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on GPIOLIB && I2C && VIDEO_V4L2 depends on V4L2_FWNODE + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C help This is a Video4Linux2 sensor driver for the Sony @@ -596,7 +624,9 @@ config VIDEO_IMX214 config VIDEO_IMX219 tristate "Sony IMX219 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the Sony @@ -607,7 +637,9 @@ config VIDEO_IMX219 config VIDEO_IMX258 tristate "Sony IMX258 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a Video4Linux2 sensor driver for the Sony IMX258 camera. @@ -617,7 +649,9 @@ config VIDEO_IMX258 config VIDEO_IMX274 tristate "Sony IMX274 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C help This is a V4L2 sensor driver for the Sony IMX274 @@ -625,7 +659,9 @@ config VIDEO_IMX274 config VIDEO_IMX290 tristate "Sony IMX290 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C select V4L2_FWNODE help @@ -637,7 +673,9 @@ config VIDEO_IMX290 config VIDEO_IMX319 tristate "Sony IMX319 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a Video4Linux2 sensor driver for the Sony IMX319 camera. @@ -647,7 +685,9 @@ config VIDEO_IMX319 config VIDEO_IMX355 tristate "Sony IMX355 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a Video4Linux2 sensor driver for the Sony IMX355 camera. @@ -678,7 +718,8 @@ config VIDEO_OV2659 config VIDEO_OV2680 tristate "OmniVision OV2680 sensor support" - depends on VIDEO_V4L2 && I2C && MEDIA_CONTROLLER + depends on VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -689,7 +730,8 @@ config VIDEO_OV2680 config VIDEO_OV2685 tristate "OmniVision OV2685 sensor support" - depends on VIDEO_V4L2 && I2C && MEDIA_CONTROLLER + depends on VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -701,7 +743,9 @@ config VIDEO_OV2685 config VIDEO_OV5640 tristate "OmniVision OV5640 sensor support" depends on OF - depends on GPIOLIB && VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on GPIOLIB && VIDEO_V4L2 && I2C + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the Omnivision @@ -710,7 +754,9 @@ config VIDEO_OV5640 config VIDEO_OV5645 tristate "OmniVision OV5645 sensor support" depends on OF - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -721,7 +767,9 @@ config VIDEO_OV5645 config VIDEO_OV5647 tristate "OmniVision OV5647 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -742,8 +790,9 @@ config VIDEO_OV6650 config VIDEO_OV5670 tristate "OmniVision OV5670 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API - depends on MEDIA_CONTROLLER + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -754,8 +803,9 @@ config VIDEO_OV5670 config VIDEO_OV5675 tristate "OmniVision OV5675 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API - depends on MEDIA_CONTROLLER + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -777,7 +827,9 @@ config VIDEO_OV5695 config VIDEO_OV7251 tristate "OmniVision OV7251 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -826,7 +878,9 @@ config VIDEO_OV7740 config VIDEO_OV8856 tristate "OmniVision OV8856 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -844,7 +898,9 @@ config VIDEO_OV9640 config VIDEO_OV9650 tristate "OmniVision OV9650/OV9652 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_SCCB help This is a V4L2 sensor driver for the Omnivision @@ -852,7 +908,9 @@ config VIDEO_OV9650 config VIDEO_OV13858 tristate "OmniVision OV13858 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a Video4Linux2 sensor driver for the OmniVision @@ -870,14 +928,18 @@ config VIDEO_VS6624 config VIDEO_MT9M001 tristate "mt9m001 support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This driver supports MT9M001 cameras from Micron, monochrome and colour models. config VIDEO_MT9M032 tristate "MT9M032 camera sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEO_APTINA_PLL help This driver supports MT9M032 camera sensors from Aptina, monochrome @@ -893,7 +955,9 @@ config VIDEO_MT9M111 config VIDEO_MT9P031 tristate "Aptina MT9P031 support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEO_APTINA_PLL help This is a Video4Linux2 sensor driver for the Aptina @@ -901,7 +965,9 @@ config VIDEO_MT9P031 config VIDEO_MT9T001 tristate "Aptina MT9T001 support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a Video4Linux2 sensor driver for the Aptina (Micron) mt0t001 3 Mpixel camera. @@ -926,7 +992,9 @@ config VIDEO_MT9V011 config VIDEO_MT9V032 tristate "Micron MT9V032 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP_I2C select V4L2_FWNODE help @@ -951,7 +1019,9 @@ config VIDEO_SR030PC30 config VIDEO_NOON010PC30 tristate "Siliconfile NOON010PC30 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This driver supports NOON010PC30 CIF camera from Siliconfile @@ -969,21 +1039,27 @@ config VIDEO_RJ54N1 config VIDEO_S5K6AA tristate "Samsung S5K6AAFX sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a V4L2 sensor driver for Samsung S5K6AA(FX) 1.3M camera sensor with an embedded SoC image signal processor. config VIDEO_S5K6A3 tristate "Samsung S5K6A3 sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a V4L2 sensor driver for Samsung S5K6A3 raw camera sensor. config VIDEO_S5K4ECGX tristate "Samsung S5K4ECGX sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select CRC32 help This is a V4L2 sensor driver for Samsung S5K4ECGX 5M @@ -991,7 +1067,9 @@ config VIDEO_S5K4ECGX config VIDEO_S5K5BAF tristate "Samsung S5K5BAF sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a V4L2 sensor driver for Samsung S5K5BAF 2M @@ -1002,28 +1080,29 @@ source "drivers/media/i2c/et8ek8/Kconfig" config VIDEO_S5C73M3 tristate "Samsung S5C73M3 sensor support" - depends on I2C && SPI && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && SPI && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a V4L2 sensor driver for Samsung S5C73M3 8 Mpixel camera. -endif comment "Lens drivers" -if MEDIA_CAMERA_SUPPORT - config VIDEO_AD5820 tristate "AD5820 lens voice coil support" - depends on GPIOLIB && I2C && VIDEO_V4L2 && MEDIA_CONTROLLER + depends on GPIOLIB && I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER help This is a driver for the AD5820 camera lens voice coil. It is used for example in Nokia N900 (RX-51). config VIDEO_AK7375 tristate "AK7375 lens voice coil support" - depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER - depends on VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a driver for the AK7375 camera lens voice coil. AK7375 is a 12 bit DAC with 120mA output current sink @@ -1032,8 +1111,9 @@ config VIDEO_AK7375 config VIDEO_DW9714 tristate "DW9714 lens voice coil support" - depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER - depends on VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a driver for the DW9714 camera lens voice coil. DW9714 is a 10 bit DAC with 120mA output current sink @@ -1042,30 +1122,30 @@ config VIDEO_DW9714 config VIDEO_DW9807_VCM tristate "DW9807 lens voice coil support" - depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER - depends on VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This is a driver for the DW9807 camera lens voice coil. DW9807 is a 10 bit DAC with 100mA output current sink capability. This is designed for linear control of voice coil motors, controlled via I2C serial interface. -endif comment "Flash devices" -if MEDIA_CAMERA_SUPPORT - config VIDEO_ADP1653 tristate "ADP1653 flash support" - depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER help This is a driver for the ADP1653 flash controller. It is used for example in Nokia N900. config VIDEO_LM3560 tristate "LM3560 dual flash driver support" - depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER select REGMAP_I2C help This is a driver for the lm3560 dual flash controllers. It controls @@ -1073,13 +1153,18 @@ config VIDEO_LM3560 config VIDEO_LM3646 tristate "LM3646 dual flash driver support" - depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER select REGMAP_I2C help This is a driver for the lm3646 dual flash controllers. It controls flash, torch LEDs. -endif +endif # MEDIA_CAMERA_SUPPORT + +# +# Other V4L2 drivers that aren't related with Camera support +# comment "Video improvement chips" @@ -1168,8 +1253,9 @@ config VIDEO_I2C config VIDEO_ST_MIPID02 tristate "STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API - depends on MEDIA_CAMERA_SUPPORT + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help Support for STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge. @@ -1181,4 +1267,4 @@ config VIDEO_ST_MIPID02 endmenu -endif +endif # VIDEO_V4L2 diff --git a/drivers/media/i2c/et8ek8/Kconfig b/drivers/media/i2c/et8ek8/Kconfig index 1c6909874d56..afcc4ea764f6 100644 --- a/drivers/media/i2c/et8ek8/Kconfig +++ b/drivers/media/i2c/et8ek8/Kconfig @@ -1,7 +1,9 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_ET8EK8 tristate "ET8EK8 camera sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help This is a driver for the Toshiba ET8EK8 5 MP camera sensor. diff --git a/drivers/media/i2c/m5mols/Kconfig b/drivers/media/i2c/m5mols/Kconfig index e573482f269f..6f0ef33b7ee1 100644 --- a/drivers/media/i2c/m5mols/Kconfig +++ b/drivers/media/i2c/m5mols/Kconfig @@ -1,7 +1,8 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_M5MOLS tristate "Fujitsu M-5MOLS 8MP sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API - depends on MEDIA_CAMERA_SUPPORT + depends on I2C && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help This driver supports Fujitsu M-5MOLS camera sensor with ISP diff --git a/drivers/media/i2c/smiapp/Kconfig b/drivers/media/i2c/smiapp/Kconfig index fcaa7f9494a8..6893b532824f 100644 --- a/drivers/media/i2c/smiapp/Kconfig +++ b/drivers/media/i2c/smiapp/Kconfig @@ -1,8 +1,9 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_SMIAPP tristate "SMIA++/SMIA sensor support" - depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAVE_CLK - depends on MEDIA_CAMERA_SUPPORT + depends on I2C && VIDEO_V4L2 && HAVE_CLK + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEO_SMIAPP_PLL select V4L2_FWNODE help diff --git a/drivers/media/mc/Kconfig b/drivers/media/mc/Kconfig index 0c5c52f14c64..e740ace54d7f 100644 --- a/drivers/media/mc/Kconfig +++ b/drivers/media/mc/Kconfig @@ -7,7 +7,7 @@ config MEDIA_CONTROLLER bool "Media Controller API" - depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT + default MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_PLATFORM_SUPPORT help Enable the media controller API used to query media devices internal topology and configure it dynamically. diff --git a/drivers/media/pci/cobalt/Kconfig b/drivers/media/pci/cobalt/Kconfig index e0e7df460a92..d8d9ea6b09bc 100644 --- a/drivers/media/pci/cobalt/Kconfig +++ b/drivers/media/pci/cobalt/Kconfig @@ -1,11 +1,13 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_COBALT tristate "Cisco Cobalt support" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C depends on PCI_MSI && MTD_COMPLEX_MAPPINGS depends on (GPIOLIB && DRM_I2C_ADV7511=n) || COMPILE_TEST depends on SND depends on MTD + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select I2C_ALGOBIT select SND_PCM select VIDEO_ADV7604 diff --git a/drivers/media/pci/intel/ipu3/Kconfig b/drivers/media/pci/intel/ipu3/Kconfig index f35bba16b60e..82d7f17e6a02 100644 --- a/drivers/media/pci/intel/ipu3/Kconfig +++ b/drivers/media/pci/intel/ipu3/Kconfig @@ -2,9 +2,9 @@ config VIDEO_IPU3_CIO2 tristate "Intel ipu3-cio2 driver" depends on VIDEO_V4L2 && PCI - depends on VIDEO_V4L2_SUBDEV_API depends on (X86 && ACPI) || COMPILE_TEST - depends on MEDIA_CONTROLLER + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE select VIDEOBUF2_DMA_SG diff --git a/drivers/media/pci/sta2x11/Kconfig b/drivers/media/pci/sta2x11/Kconfig index 011b766f0bff..4dd98f94a91e 100644 --- a/drivers/media/pci/sta2x11/Kconfig +++ b/drivers/media/pci/sta2x11/Kconfig @@ -1,12 +1,12 @@ # SPDX-License-Identifier: GPL-2.0-only config STA2X11_VIP tristate "STA2X11 VIP Video For Linux" + depends on PCI && VIDEO_V4L2 && VIRT_TO_BUS && I2C depends on STA2X11 || COMPILE_TEST select VIDEO_ADV7180 if MEDIA_SUBDRV_AUTOSELECT select VIDEOBUF2_DMA_CONTIG - depends on PCI && VIDEO_V4L2 && VIRT_TO_BUS - depends on VIDEO_V4L2_SUBDEV_API - depends on I2C + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help Say Y for support for STA2X11 VIP (Video Input Port) capture device. diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig index 6b693cd0576e..b8b2de5f1541 100644 --- a/drivers/media/platform/Kconfig +++ b/drivers/media/platform/Kconfig @@ -63,7 +63,9 @@ config VIDEO_VIU config VIDEO_MUX tristate "Video Multiplexer" select MULTIPLEXER - depends on VIDEO_V4L2 && OF && VIDEO_V4L2_SUBDEV_API && MEDIA_CONTROLLER + depends on VIDEO_V4L2 && OF + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select REGMAP select V4L2_FWNODE help @@ -71,10 +73,12 @@ config VIDEO_MUX config VIDEO_OMAP3 tristate "OMAP 3 Camera support" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && I2C depends on (ARCH_OMAP3 && OMAP_IOMMU) || COMPILE_TEST depends on COMMON_CLK && OF select ARM_DMA_USE_IOMMU if OMAP_IOMMU + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select MFD_SYSCON select V4L2_FWNODE @@ -99,16 +103,19 @@ config VIDEO_PXA27x config VIDEO_QCOM_CAMSS tristate "Qualcomm V4L2 Camera Subsystem driver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_SG select V4L2_FWNODE config VIDEO_S3C_CAMIF tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver" - depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API - depends on PM + depends on VIDEO_V4L2 && I2C && PM depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG help This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera @@ -119,9 +126,10 @@ config VIDEO_S3C_CAMIF config VIDEO_STM32_DCMI tristate "STM32 Digital Camera Memory Interface (DCMI) support" - depends on VIDEO_V4L2 && OF && MEDIA_CONTROLLER + depends on VIDEO_V4L2 && OF depends on ARCH_STM32 || COMPILE_TEST select VIDEOBUF2_DMA_CONTIG + select MEDIA_CONTROLLER select V4L2_FWNODE help This module makes the STM32 Digital Camera Memory Interface (DCMI) @@ -148,7 +156,9 @@ source "drivers/media/platform/sunxi/Kconfig" config VIDEO_TI_CAL tristate "TI CAL (Camera Adaptation Layer) driver" - depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_DEV && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API depends on SOC_DRA7XX || ARCH_K3 || COMPILE_TEST select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE @@ -432,9 +442,11 @@ config VIDEO_RENESAS_FCP config VIDEO_RENESAS_VSP1 tristate "Renesas VSP1 Video Processing Engine" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 depends on ARCH_RENESAS || COMPILE_TEST depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select VIDEOBUF2_VMALLOC help diff --git a/drivers/media/platform/am437x/Kconfig b/drivers/media/platform/am437x/Kconfig index d6f2e3d0cbef..9ef898f512de 100644 --- a/drivers/media/platform/am437x/Kconfig +++ b/drivers/media/platform/am437x/Kconfig @@ -1,8 +1,10 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_AM437X_VPFE tristate "TI AM437x VPFE video capture driver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 depends on SOC_AM43XX || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE help diff --git a/drivers/media/platform/atmel/Kconfig b/drivers/media/platform/atmel/Kconfig index 5ae3f60b81b1..1850fe7f9360 100644 --- a/drivers/media/platform/atmel/Kconfig +++ b/drivers/media/platform/atmel/Kconfig @@ -1,8 +1,10 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_ATMEL_ISC tristate "ATMEL Image Sensor Controller (ISC) support" - depends on VIDEO_V4L2 && COMMON_CLK && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && COMMON_CLK depends on ARCH_AT91 || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select REGMAP_MMIO select V4L2_FWNODE diff --git a/drivers/media/platform/cadence/Kconfig b/drivers/media/platform/cadence/Kconfig index c154e368d701..80cf601323ce 100644 --- a/drivers/media/platform/cadence/Kconfig +++ b/drivers/media/platform/cadence/Kconfig @@ -13,8 +13,8 @@ if VIDEO_CADENCE config VIDEO_CADENCE_CSI2RX tristate "Cadence MIPI-CSI2 RX Controller" depends on VIDEO_V4L2 - depends on MEDIA_CONTROLLER - depends on VIDEO_V4L2_SUBDEV_API + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help Support for the Cadence MIPI CSI2 Receiver controller. @@ -25,8 +25,8 @@ config VIDEO_CADENCE_CSI2RX config VIDEO_CADENCE_CSI2TX tristate "Cadence MIPI-CSI2 TX Controller" depends on VIDEO_V4L2 - depends on MEDIA_CONTROLLER - depends on VIDEO_V4L2_SUBDEV_API + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help Support for the Cadence MIPI CSI2 Transceiver controller. diff --git a/drivers/media/platform/exynos4-is/Kconfig b/drivers/media/platform/exynos4-is/Kconfig index be4effcbfe7b..136d3b2a0fbb 100644 --- a/drivers/media/platform/exynos4-is/Kconfig +++ b/drivers/media/platform/exynos4-is/Kconfig @@ -2,9 +2,10 @@ config VIDEO_SAMSUNG_EXYNOS4_IS tristate "Samsung S5P/EXYNOS4 SoC series Camera Subsystem driver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && OF && COMMON_CLK depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST - depends on OF && COMMON_CLK + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select V4L2_FWNODE help Say Y here to enable camera host interface devices for diff --git a/drivers/media/platform/rcar-vin/Kconfig b/drivers/media/platform/rcar-vin/Kconfig index 240ac3f3c941..ca0d906dce2f 100644 --- a/drivers/media/platform/rcar-vin/Kconfig +++ b/drivers/media/platform/rcar-vin/Kconfig @@ -1,8 +1,10 @@ # SPDX-License-Identifier: GPL-2.0 config VIDEO_RCAR_CSI2 tristate "R-Car MIPI CSI-2 Receiver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && OF + depends on VIDEO_V4L2 && OF depends on ARCH_RENESAS || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select RESET_CONTROLLER select V4L2_FWNODE help @@ -14,8 +16,10 @@ config VIDEO_RCAR_CSI2 config VIDEO_RCAR_VIN tristate "R-Car Video Input (VIN) Driver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && OF && MEDIA_CONTROLLER + depends on VIDEO_V4L2 && OF depends on ARCH_RENESAS || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE help diff --git a/drivers/media/platform/sunxi/sun4i-csi/Kconfig b/drivers/media/platform/sunxi/sun4i-csi/Kconfig index 93b4e82a2655..903c6152f6e8 100644 --- a/drivers/media/platform/sunxi/sun4i-csi/Kconfig +++ b/drivers/media/platform/sunxi/sun4i-csi/Kconfig @@ -2,8 +2,10 @@ config VIDEO_SUN4I_CSI tristate "Allwinner A10 CMOS Sensor Interface Support" - depends on VIDEO_V4L2 && COMMON_CLK && VIDEO_V4L2_SUBDEV_API && HAS_DMA + depends on VIDEO_V4L2 && COMMON_CLK && HAS_DMA depends on ARCH_SUNXI || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE help diff --git a/drivers/media/platform/sunxi/sun6i-csi/Kconfig b/drivers/media/platform/sunxi/sun6i-csi/Kconfig index 269b3ebf4f52..586e3fb3a80d 100644 --- a/drivers/media/platform/sunxi/sun6i-csi/Kconfig +++ b/drivers/media/platform/sunxi/sun6i-csi/Kconfig @@ -1,8 +1,10 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_SUN6I_CSI tristate "Allwinner V3s Camera Sensor Interface driver" - depends on VIDEO_V4L2 && COMMON_CLK && VIDEO_V4L2_SUBDEV_API && HAS_DMA + depends on VIDEO_V4L2 && COMMON_CLK && HAS_DMA depends on ARCH_SUNXI || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select REGMAP_MMIO select V4L2_FWNODE diff --git a/drivers/media/platform/xilinx/Kconfig b/drivers/media/platform/xilinx/Kconfig index a2773ad7c185..01c96fb66414 100644 --- a/drivers/media/platform/xilinx/Kconfig +++ b/drivers/media/platform/xilinx/Kconfig @@ -2,7 +2,9 @@ config VIDEO_XILINX tristate "Xilinx Video IP (EXPERIMENTAL)" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && OF && HAS_DMA + depends on VIDEO_V4L2 && OF && HAS_DMA + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE help diff --git a/drivers/media/spi/Kconfig b/drivers/media/spi/Kconfig index bcc49cb47de6..bf385d503cab 100644 --- a/drivers/media/spi/Kconfig +++ b/drivers/media/spi/Kconfig @@ -9,7 +9,9 @@ menu "SPI helper chips" config VIDEO_GS1662 tristate "Gennum Serializers video" - depends on SPI && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on SPI && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API help Enable the GS1662 driver which serializes video streams. diff --git a/drivers/media/test_drivers/vimc/Kconfig b/drivers/media/test_drivers/vimc/Kconfig index bd221d3e1a4a..4068a67585f9 100644 --- a/drivers/media/test_drivers/vimc/Kconfig +++ b/drivers/media/test_drivers/vimc/Kconfig @@ -1,7 +1,9 @@ # SPDX-License-Identifier: GPL-2.0-only config VIDEO_VIMC tristate "Virtual Media Controller Driver (VIMC)" - depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_DEV && VIDEO_V4L2 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_VMALLOC select VIDEO_V4L2_TPG help diff --git a/drivers/staging/media/hantro/Kconfig b/drivers/staging/media/hantro/Kconfig index 99aed9a5b0b9..68e5b06cdab7 100644 --- a/drivers/staging/media/hantro/Kconfig +++ b/drivers/staging/media/hantro/Kconfig @@ -2,8 +2,9 @@ config VIDEO_HANTRO tristate "Hantro VPU driver" depends on ARCH_MXC || ARCH_ROCKCHIP || COMPILE_TEST - depends on VIDEO_DEV && VIDEO_V4L2 && MEDIA_CONTROLLER - depends on MEDIA_CONTROLLER_REQUEST_API + depends on VIDEO_DEV && VIDEO_V4L2 + select MEDIA_CONTROLLER + select MEDIA_CONTROLLER_REQUEST_API select VIDEOBUF2_DMA_CONTIG select VIDEOBUF2_VMALLOC select V4L2_MEM2MEM_DEV diff --git a/drivers/staging/media/imx/Kconfig b/drivers/staging/media/imx/Kconfig index 8f1ae50a4abd..f555aac8a9d5 100644 --- a/drivers/staging/media/imx/Kconfig +++ b/drivers/staging/media/imx/Kconfig @@ -2,8 +2,9 @@ config VIDEO_IMX_MEDIA tristate "i.MX5/6 V4L2 media core driver" depends on ARCH_MXC || COMPILE_TEST - depends on MEDIA_CONTROLLER && VIDEO_V4L2 && IMX_IPUV3_CORE - depends on VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 && IMX_IPUV3_CORE + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API depends on HAS_DMA select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE diff --git a/drivers/staging/media/ipu3/Kconfig b/drivers/staging/media/ipu3/Kconfig index 4b51c67eac88..3e9640523e50 100644 --- a/drivers/staging/media/ipu3/Kconfig +++ b/drivers/staging/media/ipu3/Kconfig @@ -2,8 +2,9 @@ config VIDEO_IPU3_IMGU tristate "Intel ipu3-imgu driver" depends on PCI && VIDEO_V4L2 - depends on MEDIA_CONTROLLER && VIDEO_V4L2_SUBDEV_API depends on X86 + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select IOMMU_IOVA select VIDEOBUF2_DMA_SG help diff --git a/drivers/staging/media/omap4iss/Kconfig b/drivers/staging/media/omap4iss/Kconfig index 4dcbc5065821..6c254907a27b 100644 --- a/drivers/staging/media/omap4iss/Kconfig +++ b/drivers/staging/media/omap4iss/Kconfig @@ -2,8 +2,10 @@ config VIDEO_OMAP4 tristate "OMAP 4 Camera support" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && I2C + depends on VIDEO_V4L2 && I2C depends on ARCH_OMAP4 || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select MFD_SYSCON select VIDEOBUF2_DMA_CONTIG help diff --git a/drivers/staging/media/rkisp1/Kconfig b/drivers/staging/media/rkisp1/Kconfig index b859a493caba..5ecbefa0f5ec 100644 --- a/drivers/staging/media/rkisp1/Kconfig +++ b/drivers/staging/media/rkisp1/Kconfig @@ -2,8 +2,10 @@ config VIDEO_ROCKCHIP_ISP1 tristate "Rockchip Image Signal Processing v1 Unit driver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on VIDEO_V4L2 depends on ARCH_ROCKCHIP || COMPILE_TEST + select MEDIA_CONTROLLER + select VIDEO_V4L2_SUBDEV_API select VIDEOBUF2_DMA_CONTIG select VIDEOBUF2_VMALLOC select V4L2_FWNODE diff --git a/drivers/staging/media/sunxi/cedrus/Kconfig b/drivers/staging/media/sunxi/cedrus/Kconfig index 17733e9a088f..da369950bbf2 100644 --- a/drivers/staging/media/sunxi/cedrus/Kconfig +++ b/drivers/staging/media/sunxi/cedrus/Kconfig @@ -1,10 +1,11 @@ # SPDX-License-Identifier: GPL-2.0 config VIDEO_SUNXI_CEDRUS tristate "Allwinner Cedrus VPU driver" - depends on VIDEO_DEV && VIDEO_V4L2 && MEDIA_CONTROLLER + depends on VIDEO_DEV && VIDEO_V4L2 depends on HAS_DMA depends on OF - depends on MEDIA_CONTROLLER_REQUEST_API + select MEDIA_CONTROLLER + select MEDIA_CONTROLLER_REQUEST_API select SUNXI_SRAM select VIDEOBUF2_DMA_CONTIG select V4L2_MEM2MEM_DEV -- 2.25.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-03-31 16:32 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-03-31 11:11 [PATCH v4 00/33] Media Kconfig menu reorg and improvements Mauro Carvalho Chehab 2020-03-31 11:11 ` [PATCH v4 17/33] media: add SPDX headers on Kconfig and Makefile files Mauro Carvalho Chehab 2020-03-31 12:06 ` Laurent Pinchart 2020-03-31 12:22 ` Greg Kroah-Hartman 2020-03-31 12:39 ` Laurent Pinchart 2020-03-31 12:47 ` Greg Kroah-Hartman 2020-03-31 12:52 ` Laurent Pinchart 2020-03-31 15:49 ` SPDX headers - Was: " Mauro Carvalho Chehab 2020-03-31 11:11 ` [PATCH v4 19/33] media: Kconfig files: use select for V4L2 subdevs and MC Mauro Carvalho Chehab
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).