Skip to content

Commit

Permalink
drivers: video: add a macro to generate an endpoint ID
Browse files Browse the repository at this point in the history
This allows referring to one particular interface more easily from
the application or drivers definitions.

The generated endpoint ID is extracted from the address: the reg
property from the devicetree.

Signed-off-by: Josuah Demangeon <[email protected]>
  • Loading branch information
josuah committed May 20, 2024
1 parent 5514880 commit 83dab24
Showing 1 changed file with 0 additions and 36 deletions.
36 changes: 0 additions & 36 deletions include/zephyr/drivers/video.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,42 +33,6 @@
extern "C" {
#endif

/**
* @brief Video Device Tree endpoint identifier
*
* Identify a particular port and particular endpoint of a video device,
* providing all the context necessary to act upon a video device, via one of
* its endpoint.
*/
struct video_dt_spec {
/** Device instance of the remote video device to communicate with. */
const struct device *dev;
/** Devicetree address for this endpoint. */
uint32_t endpoint;
};

/**
* @brief Get a device reference for an endpoint of a video controller.
*
* @code
* mipi0: mipi-controller@... {
* mipi0out: endpoint@0 {
* remote-endpoint = <&mjpeg0in>;
* };
* };
* @endcode
*
* Here, the devicetree spec for mipi0out can be obtaine with:
*
* @code
* struct video_dt_spec spec = VIDEO_DT_SPEC_GET(DT_NODELABEL(mipi0out));
* @endcode
*
* @param node_id node identifier of an endpoint phandle property
*/
#define VIDEO_DT_SPEC_GET(node_id) \
{.dev = DEVICE_DT_GET(DT_BUS(node_id)), .endpoint = VIDEO_ENDPOINT_ID(node_id)}

/**
* Obtain the endpoint ID out of an devicetree endpoint node.
*
Expand Down

0 comments on commit 83dab24

Please sign in to comment.