Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

staging: fbtft: Use standard MIPI DCS command defines for st7735r

This patch makes use of the standard MIPI Display Command Set to remove
some of the magic constants found in source code.

Signed-off-by: Priit Laes <plaes@plaes.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Priit Laes and committed by
Greg Kroah-Hartman
79f5da7d 3d6924dd

+20 -22
+20 -22
drivers/staging/fbtft/fb_st7735r.c
··· 17 17 #include <linux/module.h> 18 18 #include <linux/kernel.h> 19 19 #include <linux/init.h> 20 + #include <video/mipi_display.h> 20 21 21 22 #include "fbtft.h" 22 23 ··· 26 25 "0F 1B 0F 17 33 2C 29 2E 30 30 39 3F 00 07 03 10" 27 26 28 27 static int default_init_sequence[] = { 29 - /* SWRESET - Software reset */ 30 - -1, 0x01, 28 + -1, MIPI_DCS_SOFT_RESET, 31 29 -2, 150, /* delay */ 32 30 33 - /* SLPOUT - Sleep out & booster on */ 34 - -1, 0x11, 31 + -1, MIPI_DCS_EXIT_SLEEP_MODE, 35 32 -2, 500, /* delay */ 36 33 37 34 /* FRMCTR1 - frame rate control: normal mode ··· 70 71 /* VMCTR1 - Power Control */ 71 72 -1, 0xC5, 0x0E, 72 73 73 - /* INVOFF - Display inversion off */ 74 - -1, 0x20, 74 + -1, MIPI_DCS_EXIT_INVERT_MODE, 75 75 76 - /* COLMOD - Interface pixel format */ 77 - -1, 0x3A, 0x05, 76 + -1, MIPI_DCS_SET_PIXEL_FORMAT, MIPI_DCS_PIXEL_FMT_16BIT, 78 77 79 - /* DISPON - Display On */ 80 - -1, 0x29, 78 + -1, MIPI_DCS_SET_DISPLAY_ON, 81 79 -2, 100, /* delay */ 82 80 83 - /* NORON - Partial off (Normal) */ 84 - -1, 0x13, 81 + -1, MIPI_DCS_ENTER_NORMAL_MODE, 85 82 -2, 10, /* delay */ 86 83 87 84 /* end marker */ ··· 86 91 87 92 static void set_addr_win(struct fbtft_par *par, int xs, int ys, int xe, int ye) 88 93 { 89 - /* Column address */ 90 - write_reg(par, 0x2A, xs >> 8, xs & 0xFF, xe >> 8, xe & 0xFF); 94 + write_reg(par, MIPI_DCS_SET_COLUMN_ADDRESS, 95 + xs >> 8, xs & 0xFF, xe >> 8, xe & 0xFF); 91 96 92 - /* Row address */ 93 - write_reg(par, 0x2B, ys >> 8, ys & 0xFF, ye >> 8, ye & 0xFF); 97 + write_reg(par, MIPI_DCS_SET_PAGE_ADDRESS, 98 + ys >> 8, ys & 0xFF, ye >> 8, ye & 0xFF); 94 99 95 - /* Memory write */ 96 - write_reg(par, 0x2C); 100 + write_reg(par, MIPI_DCS_WRITE_MEMORY_START); 97 101 } 98 102 99 103 #define MY BIT(7) ··· 108 114 RGB-BGR ORDER color filter panel: 0=RGB, 1=BGR */ 109 115 switch (par->info->var.rotate) { 110 116 case 0: 111 - write_reg(par, 0x36, MX | MY | (par->bgr << 3)); 117 + write_reg(par, MIPI_DCS_SET_ADDRESS_MODE, 118 + MX | MY | (par->bgr << 3)); 112 119 break; 113 120 case 270: 114 - write_reg(par, 0x36, MY | MV | (par->bgr << 3)); 121 + write_reg(par, MIPI_DCS_SET_ADDRESS_MODE, 122 + MY | MV | (par->bgr << 3)); 115 123 break; 116 124 case 180: 117 - write_reg(par, 0x36, par->bgr << 3); 125 + write_reg(par, MIPI_DCS_SET_ADDRESS_MODE, 126 + par->bgr << 3); 118 127 break; 119 128 case 90: 120 - write_reg(par, 0x36, MX | MV | (par->bgr << 3)); 129 + write_reg(par, MIPI_DCS_SET_ADDRESS_MODE, 130 + MX | MV | (par->bgr << 3)); 121 131 break; 122 132 } 123 133