|
Revision tags: v6.15, v6.15-rc7, v6.15-rc6, v6.15-rc5, v6.15-rc4, v6.15-rc3, v6.15-rc2, v6.15-rc1, v6.14, v6.14-rc7, v6.14-rc6, v6.14-rc5, v6.14-rc4, v6.14-rc3, v6.14-rc2, v6.14-rc1, v6.13, v6.13-rc7, v6.13-rc6, v6.13-rc5, v6.13-rc4 |
|
| #
91d6a99a |
| 16-Dec-2024 |
Sakari Ailus <[email protected]> |
media: v4l: Memset argument to 0 before calling get_mbus_config pad op
Memset the config argument to get_mbus_config V4L2 sub-device pad operation to zero before calling the operation. This ensures
media: v4l: Memset argument to 0 before calling get_mbus_config pad op
Memset the config argument to get_mbus_config V4L2 sub-device pad operation to zero before calling the operation. This ensures the callers don't need to bother with it nor the implementations need to set all fields that may not be relevant to them.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
|
Revision tags: v6.13-rc3, v6.13-rc2, v6.13-rc1, v6.12, v6.12-rc7, v6.12-rc6, v6.12-rc5, v6.12-rc4, v6.12-rc3, v6.12-rc2, v6.12-rc1 |
|
| #
fd0e579b |
| 17-Sep-2024 |
Sakari Ailus <[email protected]> |
media: Documentation: Improve v4l2_subdev_{en,dis}able_streams documentation
Document that callers of v4l2_subdev_{en,dis}able_streams() need to set the mask to BIT_ULL(0).
Signed-off-by: Sakari Ai
media: Documentation: Improve v4l2_subdev_{en,dis}able_streams documentation
Document that callers of v4l2_subdev_{en,dis}able_streams() need to set the mask to BIT_ULL(0).
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
| #
646aed96 |
| 17-Sep-2024 |
Sakari Ailus <[email protected]> |
media: Documentation: Update {enable,disable}_streams documentation
Document the expected {enable,disable}_streams callback behaviour for drivers that are stream-unaware i.e. don't specify the V4L2_
media: Documentation: Update {enable,disable}_streams documentation
Document the expected {enable,disable}_streams callback behaviour for drivers that are stream-unaware i.e. don't specify the V4L2_SUBDEV_CAP_STREAMS sub-device capability flag. In this specific case, the mask argument can be ignored.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
| #
30fe661e |
| 17-Sep-2024 |
Sakari Ailus <[email protected]> |
media: Documentation: Deprecate s_stream video op, update docs
The scope of the s_stream video operation is now fully supported by {enable,disable}_streams. Explicitly document the s_stream() op as
media: Documentation: Deprecate s_stream video op, update docs
The scope of the s_stream video operation is now fully supported by {enable,disable}_streams. Explicitly document the s_stream() op as deprecated and update the related documentation.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
|
Revision tags: v6.11, v6.11-rc7, v6.11-rc6, v6.11-rc5, v6.11-rc4, v6.11-rc3, v6.11-rc2, v6.11-rc1, v6.10, v6.10-rc7, v6.10-rc6, v6.10-rc5 |
|
| #
5fd3e241 |
| 19-Jun-2024 |
Laurent Pinchart <[email protected]> |
media: v4l2-subdev: Support hybrid links in v4l2_subdev_link_validate()
The v4l2_subdev_link_validate() helper function is meant to be used as a drop-in implementation of a V4L2 subdev entity .link_
media: v4l2-subdev: Support hybrid links in v4l2_subdev_link_validate()
The v4l2_subdev_link_validate() helper function is meant to be used as a drop-in implementation of a V4L2 subdev entity .link_validate() handler. It supports subdev-to-subdev links only, and complains if one end of the link is not a subdev. This forces drivers that have video output devices connected to subdevs to implement a custom .link_validate() handler, calling v4l2_subdev_link_validate() for the subdev-to-subdev links, and performing manual link validation for the video-to-subdev links.
Video devices embed a media entity, and therefore also have a .link_validate() operation. For video capture devices, the operation should be manually implemented by drivers for validate the subdev-to-video links. For video output devices, on the other hand, that operation is never called, as link validation is performed in the context of the sink entity.
As a result, we end up forcing drivers to implement a custom .link_validate() handler for subdevs connected to video output devices, when the video devices provide an operation that could be used for that purpose.
To improve that situation, make v4l2_subdev_link_validate() delegate link validation to the source's .link_validate() operation when the link source is a video device and the link sink is a subdev. This allows broader usage of v4l2_subdev_link_validate(), and simplifies drivers by making video device link validation easy to implement in the video device .link_validate(), regardless of whether the video device is an output device or a capture device.
Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Acked-by: Sakari Ailus <[email protected]>
show more ...
|
| #
a047b66c |
| 19-Jun-2024 |
Laurent Pinchart <[email protected]> |
media: v4l: subdev: Fix typo in documentation
Replace the incorrect reference to the v4l2_subdev_enable_stream() function with the correct v4l2_subdev_enable_streams() spelling.
Fixes: d0749adb3070
media: v4l: subdev: Fix typo in documentation
Replace the incorrect reference to the v4l2_subdev_enable_stream() function with the correct v4l2_subdev_enable_streams() spelling.
Fixes: d0749adb3070 ("media: v4l2-subdev: Add subdev .(enable|disable)_streams() operations") Reviewed-by: Tomi Valkeinen <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Laurent Pinchart <[email protected]>
show more ...
|
|
Revision tags: v6.10-rc4, v6.10-rc3, v6.10-rc2, v6.10-rc1, v6.9 |
|
| #
85af8485 |
| 08-May-2024 |
Laurent Pinchart <[email protected]> |
media: v4l2-subdev: Provide const-aware subdev state accessors
It would be useful to mark instances of v4l2_subdev_state structures as const when code needs to access them read-only. This isn't curr
media: v4l2-subdev: Provide const-aware subdev state accessors
It would be useful to mark instances of v4l2_subdev_state structures as const when code needs to access them read-only. This isn't currently possible, as the v4l2_subdev_state_get_*() accessor functions take a non-const pointer to the state.
Use _Generic() to provide two different versions of the accessors, for const and non-const states respectively. The former returns a const pointer to the requested format, rectangle or interval, implementing const-correctness. The latter returns a non-const pointer, preserving the current behaviour for drivers.
Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Sakari Ailus <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> [Sakari Ailus: Drop the word "below" from the text.] Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
e73412fd |
| 08-May-2024 |
Laurent Pinchart <[email protected]> |
media: v4l2-subdev: Fix v4l2_subdev_state_get_format() documentation
The documentation of the v4l2_subdev_state_get_format() macro incorrectly references __v4l2_subdev_state_get_format() instead of
media: v4l2-subdev: Fix v4l2_subdev_state_get_format() documentation
The documentation of the v4l2_subdev_state_get_format() macro incorrectly references __v4l2_subdev_state_get_format() instead of __v4l2_subdev_state_gen_call(). Fix it, and also update the list of similar macros to add the missing v4l2_subdev_state_get_interval().
Suggested-by: Sakari Ailus <[email protected]> Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Sakari Ailus <[email protected]> Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
|
Revision tags: v6.9-rc7, v6.9-rc6 |
|
| #
f8e9662e |
| 24-Apr-2024 |
Tomi Valkeinen <[email protected]> |
media: subdev: Improve s_stream documentation
Now that enable/disable_streams operations are available for single-stream subdevices too, there's no reason to use the old s_stream operation on new dr
media: subdev: Improve s_stream documentation
Now that enable/disable_streams operations are available for single-stream subdevices too, there's no reason to use the old s_stream operation on new drivers. Extend the documentation reflecting this.
Signed-off-by: Tomi Valkeinen <[email protected]> Reviewed-by: Umang Jain<[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
5f3ce14f |
| 24-Apr-2024 |
Tomi Valkeinen <[email protected]> |
media: subdev: Add v4l2_subdev_is_streaming()
Add a helper function which returns whether the subdevice is streaming, i.e. if .s_stream or .enable_streams has been called successfully.
Reviewed-by:
media: subdev: Add v4l2_subdev_is_streaming()
Add a helper function which returns whether the subdevice is streaming, i.e. if .s_stream or .enable_streams has been called successfully.
Reviewed-by: Umang Jain <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Tested-by: Umang Jain <[email protected]> Signed-off-by: Tomi Valkeinen <[email protected]> Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
61d6c8c8 |
| 24-Apr-2024 |
Tomi Valkeinen <[email protected]> |
media: subdev: Improve v4l2_subdev_enable/disable_streams_fallback
v4l2_subdev_enable/disable_streams_fallback() supports falling back to .s_stream() for subdevs with a single source pad. It also tr
media: subdev: Improve v4l2_subdev_enable/disable_streams_fallback
v4l2_subdev_enable/disable_streams_fallback() supports falling back to .s_stream() for subdevs with a single source pad. It also tracks the enabled streams for that one pad in the sd->enabled_streams field.
Tracking the enabled streams with sd->enabled_streams does not make sense, as with .s_stream() there can only be a single stream per pad. Thus, as the v4l2_subdev_enable/disable_streams_fallback() only supports a single source pad, all we really need is a boolean which tells whether streaming has been enabled on this pad or not.
However, as we only need a true/false state for a pad (instead of tracking which streams have been enabled for a pad), we can easily extend the fallback mechanism to support multiple source pads as we only need to keep track of which pads have been enabled.
Change the sd->enabled_streams field to sd->enabled_pads, which is a 64-bit bitmask tracking the enabled source pads. With this change we can remove the restriction that v4l2_subdev_enable/disable_streams_fallback() only supports a single source pad.
Reviewed-by: Laurent Pinchart <[email protected]> Tested-by: Umang Jain <[email protected]> Signed-off-by: Tomi Valkeinen <[email protected]> Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
1d780428 |
| 24-Apr-2024 |
Tomi Valkeinen <[email protected]> |
media: subdev: Fix use of sd->enabled_streams in call_s_stream()
call_s_stream() uses sd->enabled_streams to track whether streaming has already been enabled. However, v4l2_subdev_enable/disable_str
media: subdev: Fix use of sd->enabled_streams in call_s_stream()
call_s_stream() uses sd->enabled_streams to track whether streaming has already been enabled. However, v4l2_subdev_enable/disable_streams_fallback(), which was the original user of this field, already uses it, and v4l2_subdev_enable/disable_streams_fallback() will call call_s_stream().
This leads to a conflict as both functions set the field. Afaics, both functions set the field to the same value, so it won't cause a runtime bug, but it's still wrong and if we, e.g., change how v4l2_subdev_enable/disable_streams_fallback() operates we might easily cause bugs.
Fix this by adding a new field, 's_stream_enabled', for call_s_stream().
Reviewed-by: Umang Jain <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Tested-by: Umang Jain <[email protected]> Signed-off-by: Tomi Valkeinen <[email protected]> Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
|
Revision tags: v6.9-rc5, v6.9-rc4, v6.9-rc3, v6.9-rc2, v6.9-rc1, v6.8, v6.8-rc7, v6.8-rc6, v6.8-rc5, v6.8-rc4, v6.8-rc3, v6.8-rc2, v6.8-rc1, v6.7, v6.7-rc8, v6.7-rc7, v6.7-rc6, v6.7-rc5, v6.7-rc4, v6.7-rc3, v6.7-rc2, v6.7-rc1, v6.6, v6.6-rc7, v6.6-rc6, v6.6-rc5, v6.6-rc4, v6.6-rc3, v6.6-rc2, v6.6-rc1 |
|
| #
83a22a07 |
| 31-Aug-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Add len_routes field to struct v4l2_subdev_routing
The len_routes field is used to tell the size of the routes array in struct v4l2_subdev_routing. This way the number of routes
media: v4l: subdev: Add len_routes field to struct v4l2_subdev_routing
The len_routes field is used to tell the size of the routes array in struct v4l2_subdev_routing. This way the number of routes returned from S_ROUTING IOCTL may be larger than the number of routes provided, in case there are more routes returned by the driver.
Note that this uAPI is still disabled in the code, so this change can safely be done. Anyone who manually patched the code to enable this uAPI must update their code.
The patch also increases the number of reserved fields in struct v4l2_subdev_routing.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
72364b91 |
| 06-Sep-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Add a function to lock two sub-device states, use it
Add two new functions, v4l2_subdev_lock_states() and v4l2_subdev_unclock_states(), to acquire and release the state of two su
media: v4l: subdev: Add a function to lock two sub-device states, use it
Add two new functions, v4l2_subdev_lock_states() and v4l2_subdev_unclock_states(), to acquire and release the state of two sub-devices. They differ from calling v4l2_subdev_{un,}lock_state() so that if the two states share the same lock, the lock is acquired only once.
Also use the new functions in v4l2_subdev_link_validate().
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Julien Massot <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
d8c9a6e2 |
| 05-Apr-2024 |
Paweł Anikiel <[email protected]> |
media: v4l2-subdev: Remove non-pad dv timing callbacks
After the conversion of dv timing calls to use a pad argument is done, remove the old callbacks. Update the subdev ioctl handlers to use the ne
media: v4l2-subdev: Remove non-pad dv timing callbacks
After the conversion of dv timing calls to use a pad argument is done, remove the old callbacks. Update the subdev ioctl handlers to use the new callbacks.
Signed-off-by: Paweł Anikiel <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
009e1256 |
| 05-Apr-2024 |
Paweł Anikiel <[email protected]> |
media: v4l2-subdev: Add pad versions of dv timing subdev calls
Currently, subdev dv timing calls (i.e. g/s/query_dv_timings) are video ops without a pad argument. This is a problem if the subdevice
media: v4l2-subdev: Add pad versions of dv timing subdev calls
Currently, subdev dv timing calls (i.e. g/s/query_dv_timings) are video ops without a pad argument. This is a problem if the subdevice can have different dv timings for each pad (e.g. a DisplayPort receiver with multiple virtual channels).
To solve this, change these calls to include a pad argument, and put them into pad ops. Keep the old ones temporarily to make the switch easier.
Signed-off-by: Paweł Anikiel <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
6b456240 |
| 13-Dec-2023 |
Laurent Pinchart <[email protected]> |
media: v4l2-subdev: Store frame interval in subdev state
Subdev states store all standard pad configuration data, except for frame intervals. Fix it by adding interval fields in the v4l2_subdev_pad_
media: v4l2-subdev: Store frame interval in subdev state
Subdev states store all standard pad configuration data, except for frame intervals. Fix it by adding interval fields in the v4l2_subdev_pad_config and v4l2_subdev_stream_config structures, with corresponding accessor functions and a helper function to implement the .get_frame_interval() operation.
Signed-off-by: Laurent Pinchart <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
287fe160 |
| 13-Dec-2023 |
Laurent Pinchart <[email protected]> |
media: v4l2-subdev: Turn .[gs]_frame_interval into pad operations
The subdev .[gs]_frame_interval are video operations, but they operate on pads (and even on streams). Not only is this confusing, it
media: v4l2-subdev: Turn .[gs]_frame_interval into pad operations
The subdev .[gs]_frame_interval are video operations, but they operate on pads (and even on streams). Not only is this confusing, it causes practical issues for drivers as the operations don't receive a subdev state pointer, requiring manual state handling.
To improve the situation, turn the operations into pad operations, and extend them to receive a state pointer like other pad operations.
While at it, rename the operations to .[gs]et_frame_interval at the same time to match the naming scheme of other pad operations. This isn't strictly necessary, but given that all drivers using those operations need to be modified, handling the rename separately would generate more churn for very little gain (if at all).
Signed-off-by: Laurent Pinchart <[email protected]> Reviewed-by: Hans Verkuil <[email protected]> Reviewed-by: Philipp Zabel <[email protected]> # for imx-media Reviewed-by: Luca Ceresoli <[email protected]> # for tegra-video Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
08e5c364 |
| 13-Dec-2023 |
Tomi Valkeinen <[email protected]> |
media: v4l: subdev: Move out subdev state lock macros outside CONFIG_MEDIA_CONTROLLER
The subdev state locking macros and macros to get the active state are currently behind CONFIG_MEDIA_CONTROLLER.
media: v4l: subdev: Move out subdev state lock macros outside CONFIG_MEDIA_CONTROLLER
The subdev state locking macros and macros to get the active state are currently behind CONFIG_MEDIA_CONTROLLER. This makes sense, as there can be no subdev state without MC.
However, we have code paths common to MC and non-MC cases which call subdev operations that have subdev state as a parameter. In the non-MC case the state parameter would always be NULL.
Thus it makes sense to allow, e.g.:
v4l2_subdev_call_state_active(sd, pad, get_fmt, fmt)
which for non-MC case would call the subdev passing NULL as the state.
This currently fails: https://lore.kernel.org/oe-kbuild-all/[email protected]/
Fix the issue by moving the related macros to be outside CONFIG_MEDIA_CONTROLLER. The v4l2_subdev_lock_state() and v4l2_subdev_unlock_state() macros will crash if given NULL as the state, but the other macros behave correctly even when there's no active state, and they will only call the lock/unlock macros if there is a state.
An alternative fix would be to make another version of v4l2_subdev_call_state_try() with ifdefs, which would not use any state macros and would always pass NULL as the state. But having two version of a macro/function is always more confusing than having just one, so I went this way.
So, this fixes the v4l2_subdev_call_state_active() macro. But we also have v4l2_subdev_call_state_try(). It would be possible to fix that macro by additionally creating "no-op" variants of the state alloc and free functions. However, v4l2_subdev_call_state_try() is only used by a single driver (stm32-dcmi), which selects MC, and the macro is supposed to be removed as soon as the users have been converted away from the macro. Thus I have not touched the state alloc/free functions, and I think it makes sense to keep alloc/free functions available only if there's actually something that can be allocated or freed.
Signed-off-by: Tomi Valkeinen <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Hans Verkuil <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Laurent Pinchart <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
5755be5f |
| 27-Nov-2023 |
Laurent Pinchart <[email protected]> |
media: v4l2-subdev: Rename .init_cfg() operation to .init_state()
The subdev .init_cfg() operation is affected by two issues:
- It has long been extended to initialize a whole v4l2_subdev_state i
media: v4l2-subdev: Rename .init_cfg() operation to .init_state()
The subdev .init_cfg() operation is affected by two issues:
- It has long been extended to initialize a whole v4l2_subdev_state instead of just a v4l2_subdev_pad_config, but its name has stuck around.
- Despite operating on a whole subdev state and not being directly exposed to the subdev users (either in-kernel or through the userspace API), .init_cfg() is categorized as a subdev pad operation.
This participates in making the subdev API confusing for new developers. Fix it by renaming the operation to .init_state(), and make it a subdev internal operation.
Signed-off-by: Laurent Pinchart <[email protected]> Acked-by: Michael Riesch <[email protected]> # for imx415 Acked-by: Shuah Khan <[email protected]> # for vimc Reviewed-by: Philipp Zabel <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> [Sakari Ailus: Resolved a conflict in Renesas vsp1 driver.] Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]>
show more ...
|
| #
34dfd1dd |
| 13-Oct-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Remove stream-unaware sub-device state access
Remove stream-unaware sub-device state access functions and macros. These are no longer used.
[Sakari Ailus: Resolve a minor confli
media: v4l: subdev: Remove stream-unaware sub-device state access
Remove stream-unaware sub-device state access functions and macros. These are no longer used.
[Sakari Ailus: Resolve a minor conflict in removed code.]
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
| #
981e0d4c |
| 10-Nov-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Always compile sub-device state access functions
Compile sub-device state information access functions v4l2_subdev_state_get_{format,crop,compose} unconditionally as they are now
media: v4l: subdev: Always compile sub-device state access functions
Compile sub-device state information access functions v4l2_subdev_state_get_{format,crop,compose} unconditionally as they are now also used by plain V4L2 drivers.
Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
| #
791765b4 |
| 23-Oct-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Make stream argument optional in state access functions
The sub-device state access functions take three arguments: sub-device state, pad and stream. The stream is not relevant f
media: v4l: subdev: Make stream argument optional in state access functions
The sub-device state access functions take three arguments: sub-device state, pad and stream. The stream is not relevant for the majority of drivers and having to specify 0 for the stream is considered a nuisance.
Provide a two-argument macros for these state access functions to cover the needs of stream-unaware users.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
| #
d0fde6aa |
| 13-Oct-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Rename sub-device state information access functions
Rename the sub-devices state information access functions, removing "_stream" from them and replacing "format" by "ffmt". Thi
media: v4l: subdev: Rename sub-device state information access functions
Rename the sub-devices state information access functions, removing "_stream" from them and replacing "format" by "ffmt". This makes them shorter and so more convenient to use. No other sets of functions will be needed to access this information.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|
| #
049fa16b |
| 13-Oct-2023 |
Sakari Ailus <[email protected]> |
media: v4l: subdev: Also return pads array information on stream functions
There are two sets of functions that return information from sub-device state, one for stream-unaware users and another for
media: v4l: subdev: Also return pads array information on stream functions
There are two sets of functions that return information from sub-device state, one for stream-unaware users and another for stream-aware users. Add support for stream-aware functions to return format, crop and compose information from pad-based array that are functionally equivalent to the old, stream-unaware ones.
Also check state is non-NULL, in order to guard against old drivers potentially calling this with NULL state for active formats or selection rectangles.
Signed-off-by: Sakari Ailus <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
show more ...
|