On 10/04/17 15:02, Sakari Ailus wrote: > Hello everyone, > > This patchset adds support for fwnode to V4L2. Besides OF, also ACPI based > systems can be supported this way. By using V4L2 fwnode, the individual > drivers do not need to be aware of the underlying firmware implementation. > The patchset also removes specific V4L2 OF support and converts the > affected drivers to use V4L2 fwnode. Successfully tested with my Atmel sama5d3 board + ov2640 sensor. Tested-by: Hans Verkuil <hans.verkuil@xxxxxxxxx> Regards, Hans > > The patchset depends on another patchset here: > > <URL:http://www.spinics.net/lists/linux-acpi/msg72973.html> > > A git tree with the dependencies can be found here: > > <URL:https://git.linuxtv.org/sailus/media_tree.git/log/?h=v4l2-acpi-merge> > > v1 of the set can be found here: > > <URL:http://www.spinics.net/lists/linux-media/msg111073.html> > > and v2 here: > > <URL:http://www.spinics.net/lists/linux-media/msg114110.html> > > changes since v2: > > - Use EXPORT_SYMBOL_GPL() instead of EXPORT_SYMBOL(). > > - Alphabetically order the topics under V4L2 core kAPI documentation. > > - Prefer "fwnode" variable name for struct fwnode_handle pointers instead > of "fwn". Similarly, use "vep" for struct v4l2_fwnode_endpoint instead > of "vfwn". > > - Convert existing users of OF matching to fwnode matching. > > - Remove OF matching support as well as compatibility between OF and > fwnode matching. > > - Use of_node_cmp() to determine whether two nodes match in case both of > them are OF nodes. There is thus no functional difference between > existing OF matching in v1. > > - Continue to use struct device_node.full_name on fwnodes that are known > to be OF nodes instead of omitting such debug information. Drivers that > can actually use fwnode need a new interface to provide this in fwnode > framework. This is out of scope of the patchset. > > - Remove linux/of.h header inclusion in > drivers/media/v4l2-core/v4l2-flash-led-class.c. > > - Improved line wrapping primarily in > drivers/media/v4l2-core/v4l2-fwnode.c. > > - Rewrap KernelDoc documentation for V4L2 fwnode API up to 80 characters > per line (new patch). > > - Fix KernelDoc documentation, there were a few locations where the > argument had been changed but the documentation was not updated > accordingly. > > - Fix punctuation and wording in V4L2 fwnode documentation. > > - Drop patch "v4l: media/drv-intf/soc_mediabus.h: include dependent header > file". It is no longer needed. > > - Fix obtaining port parent in v4l2_fwnode_parse_link() on ACPI. > > - Include newly OF-supported atmel-isi to V4L2 OF -> fwnode conversion. > > - Add that the v4l2-fwnode.c has origins in v4l2-of.c to the commit > message and the file header. > > changes since v1: > > - Use existing dev_fwnode() instead of device_fwnode_handle() added by the > ACPI graph patchset, > > - Fix too long line of ^'s in ReST documentation and > > - Drop the patch rearranging the header files. It'd better go in > separately, if at all. > > Sakari Ailus (7): > v4l: fwnode: Support generic fwnode for parsing standardised > properties > v4l: async: Add fwnode match support > v4l: flash led class: Use fwnode_handle instead of device_node in init > v4l: Switch from V4L2 OF not V4L2 fwnode API > docs-rst: media: Sort topic list alphabetically > docs-rst: media: Switch documentation to V4L2 fwnode API > v4l: Remove V4L2 OF framework in favour of V4L2 fwnode framework > > Documentation/media/kapi/v4l2-core.rst | 20 +- > Documentation/media/kapi/v4l2-fwnode.rst | 3 + > Documentation/media/kapi/v4l2-of.rst | 3 - > drivers/leds/leds-aat1290.c | 5 +- > drivers/leds/leds-max77693.c | 5 +- > drivers/media/i2c/Kconfig | 9 + > drivers/media/i2c/adv7604.c | 7 +- > drivers/media/i2c/mt9v032.c | 7 +- > drivers/media/i2c/ov2659.c | 8 +- > drivers/media/i2c/s5c73m3/s5c73m3-core.c | 7 +- > drivers/media/i2c/s5k5baf.c | 6 +- > drivers/media/i2c/smiapp/Kconfig | 1 + > drivers/media/i2c/smiapp/smiapp-core.c | 29 ++- > drivers/media/i2c/tc358743.c | 11 +- > drivers/media/i2c/tvp514x.c | 6 +- > drivers/media/i2c/tvp5150.c | 7 +- > drivers/media/i2c/tvp7002.c | 6 +- > drivers/media/platform/Kconfig | 3 + > drivers/media/platform/am437x/Kconfig | 1 + > drivers/media/platform/am437x/am437x-vpfe.c | 15 +- > drivers/media/platform/atmel/Kconfig | 1 + > drivers/media/platform/atmel/atmel-isc.c | 13 +- > drivers/media/platform/exynos4-is/Kconfig | 2 + > drivers/media/platform/exynos4-is/media-dev.c | 13 +- > drivers/media/platform/exynos4-is/mipi-csis.c | 6 +- > drivers/media/platform/omap3isp/isp.c | 49 ++-- > drivers/media/platform/pxa_camera.c | 11 +- > drivers/media/platform/rcar-vin/Kconfig | 1 + > drivers/media/platform/rcar-vin/rcar-core.c | 23 +- > drivers/media/platform/soc_camera/Kconfig | 1 + > drivers/media/platform/soc_camera/atmel-isi.c | 7 +- > drivers/media/platform/soc_camera/soc_camera.c | 7 +- > drivers/media/platform/ti-vpe/cal.c | 15 +- > drivers/media/platform/xilinx/Kconfig | 1 + > drivers/media/platform/xilinx/xilinx-vipp.c | 63 +++-- > drivers/media/v4l2-core/Kconfig | 3 + > drivers/media/v4l2-core/Makefile | 4 +- > drivers/media/v4l2-core/v4l2-async.c | 21 +- > drivers/media/v4l2-core/v4l2-flash-led-class.c | 12 +- > drivers/media/v4l2-core/v4l2-fwnode.c | 342 +++++++++++++++++++++++++ > drivers/media/v4l2-core/v4l2-of.c | 327 ----------------------- > include/media/v4l2-async.h | 8 +- > include/media/v4l2-flash-led-class.h | 4 +- > include/media/v4l2-fwnode.h | 104 ++++++++ > include/media/v4l2-of.h | 128 --------- > include/media/v4l2-subdev.h | 3 + > 46 files changed, 690 insertions(+), 638 deletions(-) > create mode 100644 Documentation/media/kapi/v4l2-fwnode.rst > delete mode 100644 Documentation/media/kapi/v4l2-of.rst > create mode 100644 drivers/media/v4l2-core/v4l2-fwnode.c > delete mode 100644 drivers/media/v4l2-core/v4l2-of.c > create mode 100644 include/media/v4l2-fwnode.h > delete mode 100644 include/media/v4l2-of.h >