Google is committed to advancing racial equity for Black communities. See how.

fuchsia.hardware.dsiimpl

PROTOCOLS

DsiImpl

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

Config

This function is used to configure all the DSI parameters needed to operated in both Command and Video Mode

Request

NameType
dsi_config DsiConfig

Response

NameType
s zx/status

EnableBist

This function enable BIST pattern generation. This is useful during development stages

Request

NameType
pattern uint32

Response

NameType
s zx/status

IsPoweredUp

This function return true if the DSI block is powered on and not in reset

Request

NameType

Response

NameType
on bool

PhyConfig

This function configures the PHY IP (inf within the DSI block)

Request

NameType
dsi_config DsiConfig

Response

NameType
s zx/status

PhyPowerDown

This function is used to power up the MIPI D-PHY block

Request

NameType

Response

NameType

PhyPowerUp

This function is used to power up the MIPI D-PHY block

Request

NameType

Response

NameType

PhySendCode

This function is used to communicate the MIPI D-PHY

Request

NameType
code uint32
parameter uint32

Response

NameType

PhyWaitForReady

This function checks two things in order to decide whether the PHY is ready or not. LOCK Bit and StopStateClk bit. According to spec, once these are set, PHY has completed initialization

Request

NameType

Response

NameType
s zx/status

PowerDown

This function is called to power down the DSI interface

Request

NameType

Response

NameType

PowerUp

This function is called to power up the DSI interface

Request

NameType

Response

NameType

PrintDsiRegisters

This function prints the value of all DSI registers

Request

NameType

Response

NameType

ReadReg

This function returns the value of any register within the DSI IP block

Request

NameType
reg uint32

Response

NameType
s zx/status
val uint32

Reset

This function resets the DSI IP block

Request

NameType

Response

NameType

SendCmd

This function is used to send a MIPI-DSI command through the DSI block

Request

NameType
cmd vector<MipiDsiCmd>

Response

NameType
s zx/status

SetMode

This function is used to change modes between Video and Command.

Request

NameType
mode DsiMode

Response

NameType

WriteReg

This function allows writing to any register within the DSI block. This could be used for debug purposes during development stages without needing to modify the DSI IMPL protocol or to write to registers that don't really belong in the DSI IP block.

Request

NameType
reg uint32
val uint32

Response

NameType
s zx/status

STRUCTS

DesignwareConfig

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

This structure contains designware specific data

NameTypeDescriptionDefault
lp_escape_time uint32 No default
lp_cmd_pkt_size uint32 No default
phy_timer_clkhs_to_lp uint32 No default
phy_timer_clklp_to_hs uint32 No default
phy_timer_hs_to_lp uint32 No default
phy_timer_lp_to_hs uint32 No default
auto_clklane uint8 No default

DisplaySetting

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

This structure is populated based on hardware/lcd type. Its values come from vendor. This table is the top level structure used to populated all DSI configuration registers

NameTypeDescriptionDefault
lane_num uint32 No default
bit_rate_max uint32 No default
clock_factor uint32 No default
lcd_clock uint32 No default
h_active uint32 No default
v_active uint32 No default
h_period uint32 No default
v_period uint32 No default
hsync_width uint32 No default
hsync_bp uint32 No default
hsync_pol uint32 No default
vsync_width uint32 No default
vsync_bp uint32 No default
vsync_pol uint32 No default

DsiConfig

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

This structure contains information that the DSI block needs from the MIPI D-PHY

NameTypeDescriptionDefault
display_setting DisplaySetting No default
video_mode_type VideoMode No default
color_coding ColorCode No default
vendor_config vector<uint8> No default

MipiDsiCmd

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

This is the generic MIPI-DSI command structure

NameTypeDescriptionDefault
virt_chn_id uint8 No default
dsi_data_type uint8 No default
pld_data vector<uint8> No default
rsp_data vector<uint8> No default
flags uint32 No default

ENUMS

ColorCode strict

Type: uint8

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

NameValueDescription
PACKED_16BIT_565 0
PACKED_18BIT_666 1
LOOSE_24BIT_666 2
PACKED_24BIT_888 3

DsiMode strict

Type: uint8

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

This enum is used to configure DSI interface in either Video or Command mode

NameValueDescription
VIDEO 0
COMMAND 1

VideoMode strict

Type: uint8

Defined in fuchsia.hardware.dsiimpl/dsiimpl.fidl

NameValueDescription
NON_BURST_PULSE 0
NON_BURST_EVENT 1
BURST 2