Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec26d9e9 authored by Liu Ying's avatar Liu Ying Committed by Thierry Reding
Browse files

drm/dsi: Add a helper to get bits per pixel of MIPI DSI pixel format



Add a helper that can be used to obtain the number of bits per pixel
corresponding to a given MIPI DSI pixel format. This is useful in
bandwidth calculations, for example.

Signed-off-by: default avatarLiu Ying <Ying.Liu@freescale.com>
Acked-by: default avatarThierry Reding <treding@nvidia.com>
Signed-off-by: default avatarChris Zhong <zyw@rock-chips.com>
[treding@nvidia.com: add kerneldoc comment and commit message]
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent 8005c49d
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -163,6 +163,31 @@ static inline struct mipi_dsi_device *to_mipi_dsi_device(struct device *dev)
	return container_of(dev, struct mipi_dsi_device, dev);
}

/**
 * mipi_dsi_pixel_format_to_bpp - obtain the number of bits per pixel for any
 *                                given pixel format defined by the MIPI DSI
 *                                specification
 * @fmt: MIPI DSI pixel format
 *
 * Returns: The number of bits per pixel of the given pixel format.
 */
static inline int mipi_dsi_pixel_format_to_bpp(enum mipi_dsi_pixel_format fmt)
{
	switch (fmt) {
	case MIPI_DSI_FMT_RGB888:
	case MIPI_DSI_FMT_RGB666:
		return 24;

	case MIPI_DSI_FMT_RGB666_PACKED:
		return 18;

	case MIPI_DSI_FMT_RGB565:
		return 16;
	}

	return -EINVAL;
}

struct mipi_dsi_device *of_find_mipi_dsi_device_by_node(struct device_node *np);
int mipi_dsi_attach(struct mipi_dsi_device *dsi);
int mipi_dsi_detach(struct mipi_dsi_device *dsi);