13#ifndef ZEPHYR_INCLUDE_DRIVERS_MIPI_DSI_H_
14#define ZEPHYR_INCLUDE_DRIVERS_MIPI_DSI_H_
60#define MIPI_DSI_MODE_VIDEO BIT(0)
62#define MIPI_DSI_MODE_VIDEO_BURST BIT(1)
64#define MIPI_DSI_MODE_VIDEO_SYNC_PULSE BIT(2)
66#define MIPI_DSI_MODE_VIDEO_AUTO_VERT BIT(3)
68#define MIPI_DSI_MODE_VIDEO_HSE BIT(4)
70#define MIPI_DSI_MODE_VIDEO_HFP BIT(5)
72#define MIPI_DSI_MODE_VIDEO_HBP BIT(6)
74#define MIPI_DSI_MODE_VIDEO_HSA BIT(7)
76#define MIPI_DSI_MODE_VSYNC_FLUSH BIT(8)
78#define MIPI_DSI_MODE_EOT_PACKET BIT(9)
80#define MIPI_DSI_CLOCK_NON_CONTINUOUS BIT(10)
82#define MIPI_DSI_MODE_LPM BIT(11)
102#define MIPI_DSI_MSG_USE_LPM BIT(0x0)
149 return api->
attach(dev, channel, mdev);
167 return api->
transfer(dev, channel, msg);
183 const void *params,
size_t nparams,
184 void *buf,
size_t len);
197 const void *buf,
size_t len);
247 return api->
detach(dev, channel, mdev);
static void cmd(uint32_t command)
Execute a display list command by co-processor engine.
Definition ft8xx_reference_api.h:153
ssize_t mipi_dsi_generic_read(const struct device *dev, uint8_t channel, const void *params, size_t nparams, void *buf, size_t len)
MIPI-DSI generic read.
static int mipi_dsi_attach(const struct device *dev, uint8_t channel, const struct mipi_dsi_device *mdev)
Attach a new device to the MIPI-DSI bus.
Definition mipi_dsi.h:143
ssize_t mipi_dsi_generic_write(const struct device *dev, uint8_t channel, const void *buf, size_t len)
MIPI-DSI generic write.
ssize_t mipi_dsi_dcs_read(const struct device *dev, uint8_t channel, uint8_t cmd, void *buf, size_t len)
MIPI-DSI DCS read.
static ssize_t mipi_dsi_transfer(const struct device *dev, uint8_t channel, struct mipi_dsi_msg *msg)
Transfer data to/from a device attached to the MIPI-DSI bus.
Definition mipi_dsi.h:161
static int mipi_dsi_detach(const struct device *dev, uint8_t channel, const struct mipi_dsi_device *mdev)
Detach a device from the MIPI-DSI bus.
Definition mipi_dsi.h:237
ssize_t mipi_dsi_dcs_write(const struct device *dev, uint8_t channel, uint8_t cmd, const void *buf, size_t len)
MIPI-DSI DCS write.
#define ENOSYS
Function not implemented.
Definition errno.h:82
#define NULL
Definition iar_missing_defs.h:20
__SIZE_TYPE__ ssize_t
Definition types.h:28
Display definitions for MIPI devices.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Runtime device structure (in ROM) per driver instance.
Definition device.h:510
const void * api
Address of the API structure exposed by the device instance.
Definition device.h:516
MIPI-DSI device.
Definition mipi_dsi.h:87
uint32_t pixfmt
Pixel format.
Definition mipi_dsi.h:93
uint8_t data_lanes
Number of data lanes.
Definition mipi_dsi.h:89
uint32_t mode_flags
Mode flags.
Definition mipi_dsi.h:95
struct mipi_dsi_timings timings
Display timings.
Definition mipi_dsi.h:91
MIPI-DSI host driver API.
Definition mipi_dsi.h:125
int(* attach)(const struct device *dev, uint8_t channel, const struct mipi_dsi_device *mdev)
Definition mipi_dsi.h:126
int(* detach)(const struct device *dev, uint8_t channel, const struct mipi_dsi_device *mdev)
Definition mipi_dsi.h:130
ssize_t(* transfer)(const struct device *dev, uint8_t channel, struct mipi_dsi_msg *msg)
Definition mipi_dsi.h:128
MIPI-DSI read/write message.
Definition mipi_dsi.h:105
uint8_t cmd
Command (only for DCS)
Definition mipi_dsi.h:111
size_t tx_len
Transmission buffer length.
Definition mipi_dsi.h:113
const void * tx_buf
Transmission buffer.
Definition mipi_dsi.h:115
uint8_t type
Payload data type.
Definition mipi_dsi.h:107
void * user_data
User data.
Definition mipi_dsi.h:121
void * rx_buf
Reception buffer.
Definition mipi_dsi.h:119
size_t rx_len
Reception buffer length.
Definition mipi_dsi.h:117
uint16_t flags
Flags controlling message transmission.
Definition mipi_dsi.h:109
MIPI-DSI display timings.
Definition mipi_dsi.h:35
uint32_t hactive
Horizontal active video.
Definition mipi_dsi.h:37
uint32_t vsync
Vertical sync length.
Definition mipi_dsi.h:51
uint32_t hsync
Horizontal sync length.
Definition mipi_dsi.h:43
uint32_t vfp
Vertical front porch.
Definition mipi_dsi.h:47
uint32_t vactive
Vertical active video.
Definition mipi_dsi.h:45
uint32_t hfp
Horizontal front porch.
Definition mipi_dsi.h:39
uint32_t hbp
Horizontal back porch.
Definition mipi_dsi.h:41
uint32_t vbp
Vertical back porch.
Definition mipi_dsi.h:49