blob: 82ee599cee684b90cf1ce0aed25b4af025580436 [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#pragma once
#define DW_DSI_VERSION (0x00 << 2) /* contains the vers of the DSI host controller */
#define DW_DSI_PWR_UP (0x01 << 2) /* controls the power up of the core */
#define DW_DSI_CLKMGR_CFG (0x02 << 2) /* configs the factor for internal dividers */
#define DW_DSI_DPI_VCID (0x03 << 2) /* configs the Virt Chan ID for DPI traffic */
#define DW_DSI_DPI_COLOR_CODING (0x04 << 2) /* configs DPI color coding */
#define DW_DSI_DPI_CFG_POL (0x05 << 2) /* configs the polarity of DPI signals */
#define DW_DSI_DPI_LP_CMD_TIM (0x06 << 2) /* configs the timing for lp cmds (in vid mode) */
#define DW_DSI_DBI_VCID (0x07 << 2) /* configs Virtual Channel ID for DBI traffic */
#define DW_DSI_DBI_CFG (0x08 << 2) /* configs the bit width of pixels for DBI */
#define DW_DSI_DBI_PARTITIONING_EN (0x09 << 2) /* host partition DBI traffic automatically */
#define DW_DSI_DBI_CMDSIZE (0x0A << 2) /* cmd size for auto partitioning of DBI */
#define DW_DSI_PCKHDL_CFG (0x0B << 2) /* how EoTp, BTA, CRC and ECC are to be used */
#define DW_DSI_GEN_VCID (0x0C << 2) /* Virtual Channel ID of READ responses to store */
#define DW_DSI_MODE_CFG (0x0D << 2) /* mode of op between Video or Command Mode */
#define DW_DSI_VID_MODE_CFG (0x0E << 2) /* Video mode operation config */
#define DW_DSI_VID_PKT_SIZE (0x0F << 2) /* video packet size */
#define DW_DSI_VID_NUM_CHUNKS (0x10 << 2) /* number of chunks to use */
#define DW_DSI_VID_NULL_SIZE (0x11 << 2) /* configs the size of null packets */
#define DW_DSI_VID_HSA_TIME (0x12 << 2) /* configs the video HSA time */
#define DW_DSI_VID_HBP_TIME (0x13 << 2) /* configs the video HBP time */
#define DW_DSI_VID_HLINE_TIME (0x14 << 2) /* configs the overall time for each video line */
#define DW_DSI_VID_VSA_LINES (0x15 << 2) /* configs the VSA period */
#define DW_DSI_VID_VBP_LINES (0x16 << 2) /* configs the VBP period */
#define DW_DSI_VID_VFP_LINES (0x17 << 2) /* configs the VFP period */
#define DW_DSI_VID_VACTIVE_LINES (0x18 << 2) /* configs the vertical resolution of video */
#define DW_DSI_EDPI_CMD_SIZE (0x19 << 2) /* configs the size of eDPI packets */
#define DW_DSI_CMD_MODE_CFG (0x1A << 2) /* command mode operation config */
#define DW_DSI_GEN_HDR (0x1B << 2) /* header for new packets */
#define DW_DSI_GEN_PLD_DATA (0x1C << 2) /* payload for packets sent using the Gen i/f */
#define DW_DSI_CMD_PKT_STATUS (0x1D << 2) /* info about FIFOs related to DBI and Gen i/f */
#define DW_DSI_TO_CNT_CFG (0x1E << 2) /* counters that trig timeout errors */
#define DW_DSI_HS_RD_TO_CNT (0x1F << 2) /* Peri Resp timeout after HS Rd operations */
#define DW_DSI_LP_RD_TO_CNT (0x20 << 2) /* Peri Resp timeout after LP Rd operations */
#define DW_DSI_HS_WR_TO_CNT (0x21 << 2) /* Peri Resp timeout after HS Wr operations */
#define DW_DSI_LP_WR_TO_CNT (0x22 << 2) /* Peri Resp timeout after LP Wr operations */
#define DW_DSI_BTA_TO_CNT (0x23 << 2) /* Peri Resp timeout after Bus Turnaround comp */
#define DW_DSI_SDF_3D (0x24 << 2) /* 3D cntrl info for VSS packets in video mode. */
#define DW_DSI_LPCLK_CTRL (0x25 << 2) /* non continuous clock in the clock lane. */
#define DW_DSI_PHY_TMR_LPCLK_CFG (0x26 << 2) /* time for the clock lane */
#define DW_DSI_PHY_TMR_CFG (0x27 << 2) /* time for the data lanes */
#define DW_DSI_PHY_RSTZ (0x28 << 2) /* controls resets and the PLL of the D-PHY. */
#define DW_DSI_PHY_IF_CFG (0x29 << 2) /* number of active lanes */
#define DW_DSI_PHY_ULPS_CTRL (0x2A << 2) /* entering and leaving ULPS in the D- PHY. */
#define DW_DSI_PHY_TX_TRIGGERS (0x2B << 2) /* pins that activate triggers in the D-PHY */
#define DW_DSI_PHY_STATUS (0x2C << 2) /* contains info about the status of the D- PHY */
#define DW_DSI_PHY_TST_CTRL0 (0x2D << 2) /* controls clock and clear pins of the D-PHY */
#define DW_DSI_PHY_TST_CTRL1 (0x2E << 2) /* controls data and enable pins of the D-PHY */
#define DW_DSI_INT_ST0 (0x3F << 2) /* status of intr from ack and D-PHY */
#define DW_DSI_INT_ST1 (0x30 << 2) /* status of intr related to timeout, ECC, etc */
#define DW_DSI_INT_MSK0 (0x31 << 2) /* masks interrupts that affect the INT_ST0 reg */
#define DW_DSI_INT_MSK1 (0x32 << 2) /* masks interrupts that affect the INT_ST1 reg */