diff mbox series

[v2,3/5] drm/dsi: add missing DSI DCS commands

Message ID 20191028150047.22048-3-jani.nikula@intel.com (mailing list archive)
State New, archived
Headers show
Series [v2,1/5] drm/dsi: clean up DSI data type definitions | expand

Commit Message

Jani Nikula Oct. 28, 2019, 3 p.m. UTC
Update from the DCS specification.

Cc: Vandita Kulkarni <vandita.kulkarni@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
 include/video/mipi_display.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

Comments

Thierry Reding Nov. 4, 2019, 3:29 p.m. UTC | #1
On Mon, Oct 28, 2019 at 05:00:45PM +0200, Jani Nikula wrote:
> Update from the DCS specification.
> 
> Cc: Vandita Kulkarni <vandita.kulkarni@intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  include/video/mipi_display.h | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/include/video/mipi_display.h b/include/video/mipi_display.h
> index 6b6390dfa203..928f8c4b6658 100644
> --- a/include/video/mipi_display.h
> +++ b/include/video/mipi_display.h
> @@ -79,7 +79,9 @@ enum {
>  enum {
>  	MIPI_DCS_NOP			= 0x00,
>  	MIPI_DCS_SOFT_RESET		= 0x01,
> +	MIPI_DCS_GET_COMPRESSION_MODE	= 0x03,
>  	MIPI_DCS_GET_DISPLAY_ID		= 0x04,
> +	MIPI_DCS_GET_ERROR_COUNT_ON_DSI	= 0x05,
>  	MIPI_DCS_GET_RED_CHANNEL	= 0x06,
>  	MIPI_DCS_GET_GREEN_CHANNEL	= 0x07,
>  	MIPI_DCS_GET_BLUE_CHANNEL	= 0x08,
> @@ -94,6 +96,8 @@ enum {
>  	MIPI_DCS_EXIT_SLEEP_MODE	= 0x11,
>  	MIPI_DCS_ENTER_PARTIAL_MODE	= 0x12,
>  	MIPI_DCS_ENTER_NORMAL_MODE	= 0x13,
> +	MIPI_DCS_GET_IMAGE_CHECKSUM_RGB	= 0x14,
> +	MIPI_DCS_GET_IMAGE_CHECKSUM_CT	= 0x15,
>  	MIPI_DCS_EXIT_INVERT_MODE	= 0x20,
>  	MIPI_DCS_ENTER_INVERT_MODE	= 0x21,
>  	MIPI_DCS_SET_GAMMA_CURVE	= 0x26,
> @@ -105,6 +109,7 @@ enum {
>  	MIPI_DCS_WRITE_LUT		= 0x2D,
>  	MIPI_DCS_READ_MEMORY_START	= 0x2E,
>  	MIPI_DCS_SET_PARTIAL_AREA	= 0x30,
> +	MIPI_DCS_SET_PARTIAL_COLUMNS	= 0x31,
>  	MIPI_DCS_SET_SCROLL_AREA	= 0x33,
>  	MIPI_DCS_SET_TEAR_OFF		= 0x34,
>  	MIPI_DCS_SET_TEAR_ON		= 0x35,
> @@ -114,7 +119,10 @@ enum {
>  	MIPI_DCS_ENTER_IDLE_MODE	= 0x39,
>  	MIPI_DCS_SET_PIXEL_FORMAT	= 0x3A,
>  	MIPI_DCS_WRITE_MEMORY_CONTINUE	= 0x3C,
> +	MIPI_DCS_SET_3D_CONTROL		= 0x3D,
>  	MIPI_DCS_READ_MEMORY_CONTINUE	= 0x3E,
> +	MIPI_DCS_GET_3D_CONTROL		= 0x3F,
> +	MIPI_DCS_SET_VSYNC_TIMING	= 0x40,
>  	MIPI_DCS_SET_TEAR_SCANLINE	= 0x44,
>  	MIPI_DCS_GET_SCANLINE		= 0x45,
>  	MIPI_DCS_SET_DISPLAY_BRIGHTNESS = 0x51,		/* MIPI DCS 1.3 */
> @@ -126,7 +134,9 @@ enum {
>  	MIPI_DCS_SET_CABC_MIN_BRIGHTNESS = 0x5E,	/* MIPI DCS 1.3 */
>  	MIPI_DCS_GET_CABC_MIN_BRIGHTNESS = 0x5F,	/* MIPI DCS 1.3 */
>  	MIPI_DCS_READ_DDB_START		= 0xA1,
> +	MIPI_DCS_READ_PPS_START		= 0xA2,
>  	MIPI_DCS_READ_DDB_CONTINUE	= 0xA8,
> +	MIPI_DCS_READ_PPS_CONTINUE	= 0xA9,
>  };
>  
>  /* MIPI DCS pixel formats */
> -- 
> 2.20.1

I only have a copy of DCS 1.2, which doesn't seem to have these values.
Let me see if I can find a more updated version.

Thierry
Thierry Reding Nov. 5, 2019, 9:18 a.m. UTC | #2
On Mon, Oct 28, 2019 at 05:00:45PM +0200, Jani Nikula wrote:
> Update from the DCS specification.
> 
> Cc: Vandita Kulkarni <vandita.kulkarni@intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  include/video/mipi_display.h | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/include/video/mipi_display.h b/include/video/mipi_display.h
> index 6b6390dfa203..928f8c4b6658 100644
> --- a/include/video/mipi_display.h
> +++ b/include/video/mipi_display.h
> @@ -79,7 +79,9 @@ enum {
>  enum {
>  	MIPI_DCS_NOP			= 0x00,
>  	MIPI_DCS_SOFT_RESET		= 0x01,
> +	MIPI_DCS_GET_COMPRESSION_MODE	= 0x03,
>  	MIPI_DCS_GET_DISPLAY_ID		= 0x04,
> +	MIPI_DCS_GET_ERROR_COUNT_ON_DSI	= 0x05,
>  	MIPI_DCS_GET_RED_CHANNEL	= 0x06,
>  	MIPI_DCS_GET_GREEN_CHANNEL	= 0x07,
>  	MIPI_DCS_GET_BLUE_CHANNEL	= 0x08,
> @@ -94,6 +96,8 @@ enum {
>  	MIPI_DCS_EXIT_SLEEP_MODE	= 0x11,
>  	MIPI_DCS_ENTER_PARTIAL_MODE	= 0x12,
>  	MIPI_DCS_ENTER_NORMAL_MODE	= 0x13,
> +	MIPI_DCS_GET_IMAGE_CHECKSUM_RGB	= 0x14,
> +	MIPI_DCS_GET_IMAGE_CHECKSUM_CT	= 0x15,
>  	MIPI_DCS_EXIT_INVERT_MODE	= 0x20,
>  	MIPI_DCS_ENTER_INVERT_MODE	= 0x21,
>  	MIPI_DCS_SET_GAMMA_CURVE	= 0x26,
> @@ -105,6 +109,7 @@ enum {
>  	MIPI_DCS_WRITE_LUT		= 0x2D,
>  	MIPI_DCS_READ_MEMORY_START	= 0x2E,
>  	MIPI_DCS_SET_PARTIAL_AREA	= 0x30,
> +	MIPI_DCS_SET_PARTIAL_COLUMNS	= 0x31,
>  	MIPI_DCS_SET_SCROLL_AREA	= 0x33,
>  	MIPI_DCS_SET_TEAR_OFF		= 0x34,
>  	MIPI_DCS_SET_TEAR_ON		= 0x35,
> @@ -114,7 +119,10 @@ enum {
>  	MIPI_DCS_ENTER_IDLE_MODE	= 0x39,
>  	MIPI_DCS_SET_PIXEL_FORMAT	= 0x3A,
>  	MIPI_DCS_WRITE_MEMORY_CONTINUE	= 0x3C,
> +	MIPI_DCS_SET_3D_CONTROL		= 0x3D,
>  	MIPI_DCS_READ_MEMORY_CONTINUE	= 0x3E,
> +	MIPI_DCS_GET_3D_CONTROL		= 0x3F,
> +	MIPI_DCS_SET_VSYNC_TIMING	= 0x40,
>  	MIPI_DCS_SET_TEAR_SCANLINE	= 0x44,
>  	MIPI_DCS_GET_SCANLINE		= 0x45,
>  	MIPI_DCS_SET_DISPLAY_BRIGHTNESS = 0x51,		/* MIPI DCS 1.3 */
> @@ -126,7 +134,9 @@ enum {
>  	MIPI_DCS_SET_CABC_MIN_BRIGHTNESS = 0x5E,	/* MIPI DCS 1.3 */
>  	MIPI_DCS_GET_CABC_MIN_BRIGHTNESS = 0x5F,	/* MIPI DCS 1.3 */
>  	MIPI_DCS_READ_DDB_START		= 0xA1,
> +	MIPI_DCS_READ_PPS_START		= 0xA2,
>  	MIPI_DCS_READ_DDB_CONTINUE	= 0xA8,
> +	MIPI_DCS_READ_PPS_CONTINUE	= 0xA9,
>  };
>  
>  /* MIPI DCS pixel formats */

Okay, found a copy of DCS v1.4 and the above matches the specification,
so:

Reviewed-by: Thierry Reding <treding@nvidia.com>

Does it perhaps make sense to add comments about the version number that
these were introduced with?

Thierry
Jani Nikula Nov. 5, 2019, 2:06 p.m. UTC | #3
On Tue, 05 Nov 2019, Thierry Reding <thierry.reding@gmail.com> wrote:
> On Mon, Oct 28, 2019 at 05:00:45PM +0200, Jani Nikula wrote:
>> Update from the DCS specification.
>> 
>> Cc: Vandita Kulkarni <vandita.kulkarni@intel.com>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>>  include/video/mipi_display.h | 10 ++++++++++
>>  1 file changed, 10 insertions(+)
>> 
>> diff --git a/include/video/mipi_display.h b/include/video/mipi_display.h
>> index 6b6390dfa203..928f8c4b6658 100644
>> --- a/include/video/mipi_display.h
>> +++ b/include/video/mipi_display.h
>> @@ -79,7 +79,9 @@ enum {
>>  enum {
>>  	MIPI_DCS_NOP			= 0x00,
>>  	MIPI_DCS_SOFT_RESET		= 0x01,
>> +	MIPI_DCS_GET_COMPRESSION_MODE	= 0x03,
>>  	MIPI_DCS_GET_DISPLAY_ID		= 0x04,
>> +	MIPI_DCS_GET_ERROR_COUNT_ON_DSI	= 0x05,
>>  	MIPI_DCS_GET_RED_CHANNEL	= 0x06,
>>  	MIPI_DCS_GET_GREEN_CHANNEL	= 0x07,
>>  	MIPI_DCS_GET_BLUE_CHANNEL	= 0x08,
>> @@ -94,6 +96,8 @@ enum {
>>  	MIPI_DCS_EXIT_SLEEP_MODE	= 0x11,
>>  	MIPI_DCS_ENTER_PARTIAL_MODE	= 0x12,
>>  	MIPI_DCS_ENTER_NORMAL_MODE	= 0x13,
>> +	MIPI_DCS_GET_IMAGE_CHECKSUM_RGB	= 0x14,
>> +	MIPI_DCS_GET_IMAGE_CHECKSUM_CT	= 0x15,
>>  	MIPI_DCS_EXIT_INVERT_MODE	= 0x20,
>>  	MIPI_DCS_ENTER_INVERT_MODE	= 0x21,
>>  	MIPI_DCS_SET_GAMMA_CURVE	= 0x26,
>> @@ -105,6 +109,7 @@ enum {
>>  	MIPI_DCS_WRITE_LUT		= 0x2D,
>>  	MIPI_DCS_READ_MEMORY_START	= 0x2E,
>>  	MIPI_DCS_SET_PARTIAL_AREA	= 0x30,
>> +	MIPI_DCS_SET_PARTIAL_COLUMNS	= 0x31,
>>  	MIPI_DCS_SET_SCROLL_AREA	= 0x33,
>>  	MIPI_DCS_SET_TEAR_OFF		= 0x34,
>>  	MIPI_DCS_SET_TEAR_ON		= 0x35,
>> @@ -114,7 +119,10 @@ enum {
>>  	MIPI_DCS_ENTER_IDLE_MODE	= 0x39,
>>  	MIPI_DCS_SET_PIXEL_FORMAT	= 0x3A,
>>  	MIPI_DCS_WRITE_MEMORY_CONTINUE	= 0x3C,
>> +	MIPI_DCS_SET_3D_CONTROL		= 0x3D,
>>  	MIPI_DCS_READ_MEMORY_CONTINUE	= 0x3E,
>> +	MIPI_DCS_GET_3D_CONTROL		= 0x3F,
>> +	MIPI_DCS_SET_VSYNC_TIMING	= 0x40,
>>  	MIPI_DCS_SET_TEAR_SCANLINE	= 0x44,
>>  	MIPI_DCS_GET_SCANLINE		= 0x45,
>>  	MIPI_DCS_SET_DISPLAY_BRIGHTNESS = 0x51,		/* MIPI DCS 1.3 */
>> @@ -126,7 +134,9 @@ enum {
>>  	MIPI_DCS_SET_CABC_MIN_BRIGHTNESS = 0x5E,	/* MIPI DCS 1.3 */
>>  	MIPI_DCS_GET_CABC_MIN_BRIGHTNESS = 0x5F,	/* MIPI DCS 1.3 */
>>  	MIPI_DCS_READ_DDB_START		= 0xA1,
>> +	MIPI_DCS_READ_PPS_START		= 0xA2,
>>  	MIPI_DCS_READ_DDB_CONTINUE	= 0xA8,
>> +	MIPI_DCS_READ_PPS_CONTINUE	= 0xA9,
>>  };
>>  
>>  /* MIPI DCS pixel formats */
>
> Okay, found a copy of DCS v1.4 and the above matches the specification,
> so:
>
> Reviewed-by: Thierry Reding <treding@nvidia.com>
>
> Does it perhaps make sense to add comments about the version number that
> these were introduced with?

The trouble is, I don't have the complete chronology of the
specifications, so I can't be sure at which point each one was added.

BR,
Jani.
diff mbox series

Patch

diff --git a/include/video/mipi_display.h b/include/video/mipi_display.h
index 6b6390dfa203..928f8c4b6658 100644
--- a/include/video/mipi_display.h
+++ b/include/video/mipi_display.h
@@ -79,7 +79,9 @@  enum {
 enum {
 	MIPI_DCS_NOP			= 0x00,
 	MIPI_DCS_SOFT_RESET		= 0x01,
+	MIPI_DCS_GET_COMPRESSION_MODE	= 0x03,
 	MIPI_DCS_GET_DISPLAY_ID		= 0x04,
+	MIPI_DCS_GET_ERROR_COUNT_ON_DSI	= 0x05,
 	MIPI_DCS_GET_RED_CHANNEL	= 0x06,
 	MIPI_DCS_GET_GREEN_CHANNEL	= 0x07,
 	MIPI_DCS_GET_BLUE_CHANNEL	= 0x08,
@@ -94,6 +96,8 @@  enum {
 	MIPI_DCS_EXIT_SLEEP_MODE	= 0x11,
 	MIPI_DCS_ENTER_PARTIAL_MODE	= 0x12,
 	MIPI_DCS_ENTER_NORMAL_MODE	= 0x13,
+	MIPI_DCS_GET_IMAGE_CHECKSUM_RGB	= 0x14,
+	MIPI_DCS_GET_IMAGE_CHECKSUM_CT	= 0x15,
 	MIPI_DCS_EXIT_INVERT_MODE	= 0x20,
 	MIPI_DCS_ENTER_INVERT_MODE	= 0x21,
 	MIPI_DCS_SET_GAMMA_CURVE	= 0x26,
@@ -105,6 +109,7 @@  enum {
 	MIPI_DCS_WRITE_LUT		= 0x2D,
 	MIPI_DCS_READ_MEMORY_START	= 0x2E,
 	MIPI_DCS_SET_PARTIAL_AREA	= 0x30,
+	MIPI_DCS_SET_PARTIAL_COLUMNS	= 0x31,
 	MIPI_DCS_SET_SCROLL_AREA	= 0x33,
 	MIPI_DCS_SET_TEAR_OFF		= 0x34,
 	MIPI_DCS_SET_TEAR_ON		= 0x35,
@@ -114,7 +119,10 @@  enum {
 	MIPI_DCS_ENTER_IDLE_MODE	= 0x39,
 	MIPI_DCS_SET_PIXEL_FORMAT	= 0x3A,
 	MIPI_DCS_WRITE_MEMORY_CONTINUE	= 0x3C,
+	MIPI_DCS_SET_3D_CONTROL		= 0x3D,
 	MIPI_DCS_READ_MEMORY_CONTINUE	= 0x3E,
+	MIPI_DCS_GET_3D_CONTROL		= 0x3F,
+	MIPI_DCS_SET_VSYNC_TIMING	= 0x40,
 	MIPI_DCS_SET_TEAR_SCANLINE	= 0x44,
 	MIPI_DCS_GET_SCANLINE		= 0x45,
 	MIPI_DCS_SET_DISPLAY_BRIGHTNESS = 0x51,		/* MIPI DCS 1.3 */
@@ -126,7 +134,9 @@  enum {
 	MIPI_DCS_SET_CABC_MIN_BRIGHTNESS = 0x5E,	/* MIPI DCS 1.3 */
 	MIPI_DCS_GET_CABC_MIN_BRIGHTNESS = 0x5F,	/* MIPI DCS 1.3 */
 	MIPI_DCS_READ_DDB_START		= 0xA1,
+	MIPI_DCS_READ_PPS_START		= 0xA2,
 	MIPI_DCS_READ_DDB_CONTINUE	= 0xA8,
+	MIPI_DCS_READ_PPS_CONTINUE	= 0xA9,
 };
 
 /* MIPI DCS pixel formats */