static void lcdc_himax_sleep(void) { gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(40); gpio_lcd_emuspi_write_one_para(0x24, 0x28); mdelay(40); gpio_lcd_emuspi_write_one_para(0x24, 0x00); gpio_lcd_emuspi_write_one_para(0x1E, 0x14); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x02); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); mdelay(10); gpio_lcd_emuspi_write_one_para(0x1B, 0x40); mdelay(10); gpio_lcd_emuspi_write_one_para(0x3C, 0x00); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x0B); mdelay(10); gpio_lcd_emuspi_write_one_para(0x17, 0x90); mdelay(10); }
static void lcdc_himax_sleep(void) { /*Display off */ gpio_lcd_emuspi_write_one_para(0x0102, 0x180);/*PON=0;PSON=1 */ mdelay(40); gpio_lcd_emuspi_write_one_para(0x0007, 0x0000); mdelay(40); gpio_lcd_emuspi_write_one_para(0x0100, 0x0004);/*DSTB=1 */ /*Power off */ gpio_lcd_emuspi_write_one_para(0x1F, 0x02);/*GASENB=0;PON=0;DK=0;XDK=0;VLCD_TRI=1;STB=0 */ mdelay(10); gpio_lcd_emuspi_write_one_para(0x1F, 0x0A);/*GASENB=0;PON=0;DK=1;XDK=0;VLCD_TRI=1;STB=0 */ mdelay(10); gpio_lcd_emuspi_write_one_para(0x1C, 0x40);/*AP=000 */ mdelay(10); /*Into Sleep mode */ gpio_lcd_emuspi_write_one_para(0x1F, 0x0B);/*GASENB=0;PON=0;DK=0;XDK=0;VLCD_TRI=1;STB=1 */ mdelay(10); /*Stop OSC CPU interface */ gpio_lcd_emuspi_write_one_para(0x19, 0x90);/*RADJ=1001,OSC_EN=0 */ mdelay(10); }
/*#if 0*/ static void lcdc_himax_sleep(void) { //Display off gpio_lcd_emuspi_write_one_para(0x24, 0x38);//GON=1;DTE=1;D=10 msleep(40); gpio_lcd_emuspi_write_one_para(0x24, 0x28);//GON=1;DTE=0;D=10 msleep(40); gpio_lcd_emuspi_write_one_para(0x24, 0x00);//GON=0;DTE=0;D=00 //Power off gpio_lcd_emuspi_write_one_para(0x1E, 0x14);//VCOMG=0;VDV=1_0100 msleep(10); gpio_lcd_emuspi_write_one_para(0x19, 0x02);//GASENB=0;PON=0;DK=0;XDK=0;VLCD_TRI=1;STB=0 msleep(10); gpio_lcd_emuspi_write_one_para(0x19, 0x0A);//GASENB=0;PON=0;DK=1;XDK=0;VLCD_TRI=1;STB=0 msleep(10); gpio_lcd_emuspi_write_one_para(0x1B, 0x40);//AP=000 msleep(10); gpio_lcd_emuspi_write_one_para(0x3C, 0x00);//N_SAP=1100,0000 msleep(10); //Into Sleep mode gpio_lcd_emuspi_write_one_para(0x19, 0x0B);//GASENB=0;PON=0;DK=0;XDK=0;VLCD_TRI=1;STB=1 msleep(10); //Stop OSC CPU interface gpio_lcd_emuspi_write_one_para(0x17, 0x90);//RADJ=1001,OSC_EN=0 msleep(10); }
static void lcdc_himax_n_sleep(void) { gpio_lcd_emuspi_write_one_para(0x28,0x3c); msleep(10); gpio_lcd_emuspi_write_one_para(0x28,0x38); msleep(40); gpio_lcd_emuspi_write_one_para(0x28,0x20); msleep(10); // Power off gpio_lcd_emuspi_write_one_para(0x1f,0x94); msleep(10); gpio_lcd_emuspi_write_one_para(0x1F,0x84); msleep(10); gpio_lcd_emuspi_write_one_para(0x1F,0x8c); //into STB mode msleep(10); gpio_lcd_emuspi_write_one_para(0x1F,0x8d); msleep(10); //stop oscillation gpio_lcd_emuspi_write_one_para(0x19,0x00); msleep(50); }
static void lcdc_himax_wakeup(void) { gpio_lcd_emuspi_write_one_para(0x17, 0x91); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); gpio_lcd_emuspi_write_one_para(0x17, 0x91); mdelay(10); gpio_lcd_emuspi_write_one_para(0x1B, 0x13); gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x0A); gpio_lcd_emuspi_write_one_para(0x1F, 0x58); mdelay(20); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x1A); mdelay(40); gpio_lcd_emuspi_write_one_para(0x19, 0x12); gpio_lcd_emuspi_write_one_para(0x1E, 0x2E); mdelay(100); gpio_lcd_emuspi_write_one_para(0x3C, 0xC0); gpio_lcd_emuspi_write_one_para(0x3D, 0x1C); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(40); gpio_lcd_emuspi_write_one_para(0x24, 0x3C); }
static void lcdc_himax_init(void) { gpio_direction_output(himax_reset, 1); udelay(10); gpio_direction_output(himax_reset, 0); udelay(50); gpio_direction_output(himax_reset, 1); gpio_direction_output(spi_cs, 1); gpio_direction_output(spi_sdo, 1); gpio_direction_output(spi_sclk, 1); mdelay(150); gpio_lcd_emuspi_write_one_para(0x83, 0x02); gpio_lcd_emuspi_write_one_para(0x85, 0x03); gpio_lcd_emuspi_write_one_para(0x8b, 0x00); gpio_lcd_emuspi_write_one_para(0x8c, 0x93); gpio_lcd_emuspi_write_one_para(0x91, 0x01); gpio_lcd_emuspi_write_one_para(0x83, 0x00); gpio_lcd_emuspi_write_one_para(0x3e, 0xb0); gpio_lcd_emuspi_write_one_para(0x3f, 0x03); gpio_lcd_emuspi_write_one_para(0x40, 0x10); gpio_lcd_emuspi_write_one_para(0x41, 0x56); gpio_lcd_emuspi_write_one_para(0x42, 0x13); gpio_lcd_emuspi_write_one_para(0x43, 0x46); gpio_lcd_emuspi_write_one_para(0x44, 0x23); gpio_lcd_emuspi_write_one_para(0x45, 0x76); gpio_lcd_emuspi_write_one_para(0x46, 0x00); gpio_lcd_emuspi_write_one_para(0x47, 0x5e); gpio_lcd_emuspi_write_one_para(0x48, 0x4f); gpio_lcd_emuspi_write_one_para(0x49, 0x40); gpio_lcd_emuspi_write_one_para(0x2b, 0xf9); mdelay(10); gpio_lcd_emuspi_write_one_para(0x1b, 0x14); gpio_lcd_emuspi_write_one_para(0x1a, 0x11); gpio_lcd_emuspi_write_one_para(0x1c, 0x0d); gpio_lcd_emuspi_write_one_para(0x1f, 0x42); mdelay(20); gpio_lcd_emuspi_write_one_para(0x19, 0x0a); gpio_lcd_emuspi_write_one_para(0x19, 0x1a); mdelay(40); gpio_lcd_emuspi_write_one_para(0x19, 0x12); mdelay(40); gpio_lcd_emuspi_write_one_para(0x1e, 0x2c); mdelay(100); gpio_lcd_emuspi_write_one_para(0x3c, 0x60); gpio_lcd_emuspi_write_one_para(0x3d, 0x1c); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(40); gpio_lcd_emuspi_write_one_para(0x24, 0x3c); gpio_lcd_emuspi_write_one_para(0x16, 0x1c); gpio_lcd_emuspi_write_one_para(0x3a, 0xae); gpio_lcd_emuspi_write_one_para(0x01, 0x02); gpio_lcd_emuspi_write_one_para(0x55, 0x00); }
static void lcdc_himax_wakeup(void) { gpio_lcd_emuspi_write_one_para(0x19, 0x0A); gpio_lcd_emuspi_write_one_para(0x1B, 0x14); gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x0D); gpio_lcd_emuspi_write_one_para(0x1F, 0x42); mdelay(20); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); gpio_lcd_emuspi_write_one_para(0x19, 0x1A); mdelay(40); gpio_lcd_emuspi_write_one_para(0x19, 0x12); mdelay(40); gpio_lcd_emuspi_write_one_para(0X1E, 0x2C); mdelay(100); gpio_lcd_emuspi_write_one_para(0x3C, 0x60); gpio_lcd_emuspi_write_one_para(0x3D, 0x1C); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(40); gpio_lcd_emuspi_write_one_para(0x24, 0x3C); }
static void lcdc_himax_init(void) { gpio_direction_output(himax_reset, 1); mdelay(5); gpio_direction_output(himax_reset, 0); mdelay(10); gpio_direction_output(himax_reset, 1); mdelay(20); gpio_direction_output(spi_cs, 1); gpio_direction_output(spi_sdo, 1); gpio_direction_output(spi_sclk, 1); mdelay(20); gpio_lcd_emuspi_write_one_para(0x83, 0x02); gpio_lcd_emuspi_write_one_para(0x85, 0x03); gpio_lcd_emuspi_write_one_para(0x8B, 0x00); gpio_lcd_emuspi_write_one_para(0x8C, 0x13); gpio_lcd_emuspi_write_one_para(0x91, 0x01); gpio_lcd_emuspi_write_one_para(0x83, 0x00); mdelay(5); gpio_lcd_emuspi_write_one_para(0x3E, 0xe2);//0xc4 gpio_lcd_emuspi_write_one_para(0x3F, 0x26);//0x44 gpio_lcd_emuspi_write_one_para(0x40, 0x00);//0x22 gpio_lcd_emuspi_write_one_para(0x41, 0x55);//0x57 gpio_lcd_emuspi_write_one_para(0x42, 0x06);//0x03 gpio_lcd_emuspi_write_one_para(0x43, 0x17);//0x47 gpio_lcd_emuspi_write_one_para(0x44, 0x21);//0x02 gpio_lcd_emuspi_write_one_para(0x45, 0x77);//0x55 gpio_lcd_emuspi_write_one_para(0x46, 0x01);//0x06 gpio_lcd_emuspi_write_one_para(0x47, 0x0a);//0x4c gpio_lcd_emuspi_write_one_para(0x48, 0x05);//0x06 gpio_lcd_emuspi_write_one_para(0x49, 0x02);//0x8c gpio_lcd_emuspi_write_one_para(0x2B, 0xF9); mdelay(20); gpio_lcd_emuspi_write_one_para(0x17, 0x90); gpio_lcd_emuspi_write_one_para(0x18, 0x3A); //0x3a gpio_lcd_emuspi_write_one_para(0x1B, 0x11);//0x14 gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x06); //0x0a gpio_lcd_emuspi_write_one_para(0x1F, 0x57); mdelay(30); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); gpio_lcd_emuspi_write_one_para(0x19, 0x1A); mdelay(50); gpio_lcd_emuspi_write_one_para(0x19, 0x12); mdelay(50); gpio_lcd_emuspi_write_one_para(0x1E, 0x2e);//0x35 mdelay(100); gpio_lcd_emuspi_write_one_para(0x3C, 0xC0); gpio_lcd_emuspi_write_one_para(0x3D, 0x1C); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(50); gpio_lcd_emuspi_write_one_para(0x24, 0x3C); gpio_lcd_emuspi_write_one_para(0x16, 0x1C); gpio_lcd_emuspi_write_one_para(0x3A, 0xce); gpio_lcd_emuspi_write_one_para(0x01, 0x06); gpio_lcd_emuspi_write_one_para(0x55, 0x00); }
static void lcdc_himax_init(void) { gpio_direction_output(himax_reset, 1); mdelay(5); gpio_direction_output(himax_reset, 0); mdelay(10); gpio_direction_output(himax_reset, 1); mdelay(50); /***********************Start initial squence****************** */ gpio_lcd_emuspi_write_one_para(0xEA, 0x00); gpio_lcd_emuspi_write_one_para(0xEB, 0x20); gpio_lcd_emuspi_write_one_para(0xEC, 0x0C); gpio_lcd_emuspi_write_one_para(0xED, 0xC4); gpio_lcd_emuspi_write_one_para(0xE8, 0x38); gpio_lcd_emuspi_write_one_para(0xE9, 0x38); gpio_lcd_emuspi_write_one_para(0xF1, 0x01); gpio_lcd_emuspi_write_one_para(0xF2, 0x10); gpio_lcd_emuspi_write_one_para(0x27, 0xA3); mdelay(5); /*------------ Gamma Setting ------------------------------- */ gpio_lcd_emuspi_write_one_para(0x40, 0x00); gpio_lcd_emuspi_write_one_para(0x41, 0x00); gpio_lcd_emuspi_write_one_para(0x42, 0x01); gpio_lcd_emuspi_write_one_para(0x43, 0x12); gpio_lcd_emuspi_write_one_para(0x44, 0x10); gpio_lcd_emuspi_write_one_para(0x45, 0x26); gpio_lcd_emuspi_write_one_para(0x46, 0x08); gpio_lcd_emuspi_write_one_para(0x47, 0x54); gpio_lcd_emuspi_write_one_para(0x48, 0x02); gpio_lcd_emuspi_write_one_para(0x49, 0x15); gpio_lcd_emuspi_write_one_para(0x4A, 0x19); gpio_lcd_emuspi_write_one_para(0x4B, 0x19); gpio_lcd_emuspi_write_one_para(0x4C, 0x16); gpio_lcd_emuspi_write_one_para(0x50, 0x19); gpio_lcd_emuspi_write_one_para(0x51, 0x2F); gpio_lcd_emuspi_write_one_para(0x52, 0x2D); gpio_lcd_emuspi_write_one_para(0x53, 0x3E); gpio_lcd_emuspi_write_one_para(0x54, 0x3F); gpio_lcd_emuspi_write_one_para(0x55, 0x3F); gpio_lcd_emuspi_write_one_para(0x56, 0x2B); gpio_lcd_emuspi_write_one_para(0x57, 0x77); gpio_lcd_emuspi_write_one_para(0x58, 0x09); gpio_lcd_emuspi_write_one_para(0x59, 0x06); gpio_lcd_emuspi_write_one_para(0x5A, 0x06); gpio_lcd_emuspi_write_one_para(0x5B, 0x0A); gpio_lcd_emuspi_write_one_para(0x5C, 0x1D); gpio_lcd_emuspi_write_one_para(0x5D, 0xCC); /*----------- Power Supply Setting -------------------------- */ gpio_lcd_emuspi_write_one_para(0x1B, 0x1B); gpio_lcd_emuspi_write_one_para(0x1A, 0x01); gpio_lcd_emuspi_write_one_para(0x24, 0x39); gpio_lcd_emuspi_write_one_para(0x25, 0x7C); gpio_lcd_emuspi_write_one_para(0x23, 0x79); /*power on setting */ gpio_lcd_emuspi_write_one_para(0x18, 0x36); gpio_lcd_emuspi_write_one_para(0x19, 0x01); gpio_lcd_emuspi_write_one_para(0x01, 0x00); gpio_lcd_emuspi_write_one_para(0x1F, 0x88); mdelay(5); gpio_lcd_emuspi_write_one_para(0x1F, 0x80); mdelay(5); gpio_lcd_emuspi_write_one_para(0x1F, 0x90); mdelay(5); gpio_lcd_emuspi_write_one_para(0x1F, 0xD0); mdelay(5); /*26k/65k color selection */ gpio_lcd_emuspi_write_one_para(0x17,0x60); gpio_lcd_emuspi_write_one_para(0x36,0x00); /*Display On setting */ gpio_lcd_emuspi_write_one_para(0x28,0x38); mdelay(40); gpio_lcd_emuspi_write_one_para(0x28,0x3C); /*240*320 window setting */ gpio_lcd_emuspi_write_one_para(0x02,0x00); gpio_lcd_emuspi_write_one_para(0x03,0x00); gpio_lcd_emuspi_write_one_para(0x04,0x00); gpio_lcd_emuspi_write_one_para(0x05,0xEF); gpio_lcd_emuspi_write_one_para(0x06,0x00); gpio_lcd_emuspi_write_one_para(0x07,0x00); gpio_lcd_emuspi_write_one_para(0x08,0x01); gpio_lcd_emuspi_write_one_para(0x09,0x3F); /*CABC control */ /* gpio_lcd_emuspi_write_one_para(0x22,0x00); */ gpio_lcd_emuspi_write_one_para(0x3C,0xF0); gpio_lcd_emuspi_write_one_para(0x3D,0x2C); gpio_lcd_emuspi_write_one_para(0x3E,0x01); gpio_lcd_emuspi_write_one_para(0x3F,0x00); gpio_lcd_emuspi_write_one_para(0x31, 0x03); /* RGB interface control */ gpio_lcd_emuspi_write_one_para(0x32, 0xCE); msleep(150); pr_debug("lcd module himax init exit\n!"); }
static void lcdc_himax_n_init(void) { unsigned int id; gpio_direction_output(himax_reset, 1); msleep(5); gpio_direction_output(himax_reset, 0); msleep(10); gpio_direction_output(himax_reset, 1); msleep(20); gpio_direction_output(spi_cs, 1); gpio_direction_output(spi_sdo, 1); gpio_direction_output(spi_sclk, 1); msleep(20); //**********************Start initial squence****************** gpio_lcd_emuspi_read_one_para(0x00,&id); //Start initial Sequence msleep(10); // Function setting gpio_lcd_emuspi_write_one_para(0xE2,0x15); gpio_lcd_emuspi_write_one_para(0xE5,0x18); gpio_lcd_emuspi_write_one_para(0xE7,0x18); gpio_lcd_emuspi_write_one_para(0xE8,0x64); gpio_lcd_emuspi_write_one_para(0xEC,0x08); gpio_lcd_emuspi_write_one_para(0xED,0x47); gpio_lcd_emuspi_write_one_para(0xEE,0x20); gpio_lcd_emuspi_write_one_para(0xEF,0x50); // Power on Setting gpio_lcd_emuspi_write_one_para(0x23,0x83); gpio_lcd_emuspi_write_one_para(0x24,0x79); gpio_lcd_emuspi_write_one_para(0x25,0x4F); gpio_lcd_emuspi_write_one_para(0x29,0x00); gpio_lcd_emuspi_write_one_para(0x2B,0x03); gpio_lcd_emuspi_write_one_para(0x1B,0x1E); // Power on sequence gpio_lcd_emuspi_write_one_para(0x01,0x00); gpio_lcd_emuspi_write_one_para(0x1C,0x03); gpio_lcd_emuspi_write_one_para(0x19,0x01); msleep(5); gpio_lcd_emuspi_write_one_para(0x1F,0x90); msleep(10); gpio_lcd_emuspi_write_one_para(0x1F,0xd4); msleep(10); msleep(5); // Gamma Setting gpio_lcd_emuspi_write_one_para(0x40,0x00); gpio_lcd_emuspi_write_one_para(0x41,0x29); gpio_lcd_emuspi_write_one_para(0x42,0x26); gpio_lcd_emuspi_write_one_para(0x43,0x3E); gpio_lcd_emuspi_write_one_para(0x44,0x3D); gpio_lcd_emuspi_write_one_para(0x45,0x3F); gpio_lcd_emuspi_write_one_para(0x46,0x1b); gpio_lcd_emuspi_write_one_para(0x47,0x68); gpio_lcd_emuspi_write_one_para(0x48,0x04); gpio_lcd_emuspi_write_one_para(0x49,0x05); gpio_lcd_emuspi_write_one_para(0x4A,0x06); gpio_lcd_emuspi_write_one_para(0x4B,0x0c); gpio_lcd_emuspi_write_one_para(0x4C,0x17); gpio_lcd_emuspi_write_one_para(0x50,0x00); gpio_lcd_emuspi_write_one_para(0x51,0x02); gpio_lcd_emuspi_write_one_para(0x52,0x01); gpio_lcd_emuspi_write_one_para(0x53,0x19); gpio_lcd_emuspi_write_one_para(0x54,0x16); gpio_lcd_emuspi_write_one_para(0x55,0x3F); gpio_lcd_emuspi_write_one_para(0x56,0x17); gpio_lcd_emuspi_write_one_para(0x57,0x64); gpio_lcd_emuspi_write_one_para(0x58,0x08); gpio_lcd_emuspi_write_one_para(0x59,0x13); gpio_lcd_emuspi_write_one_para(0x5A,0x19); gpio_lcd_emuspi_write_one_para(0x5B,0x1a); gpio_lcd_emuspi_write_one_para(0x5C,0x1b); gpio_lcd_emuspi_write_one_para(0x5D,0xFF); gpio_lcd_emuspi_write_one_para(0x28,0x20); msleep(40); gpio_lcd_emuspi_write_one_para(0x28,0x38); msleep(40); gpio_lcd_emuspi_write_one_para(0x28,0x3C); gpio_lcd_emuspi_write_one_para(0x17,0x05); //05 gpio_lcd_emuspi_write_one_para(0x16,0x49); gpio_lcd_emuspi_write_one_para(0x31,0x02); gpio_lcd_emuspi_write_one_para(0x32,0x0e); gpio_lcd_emuspi_write_cmd(0x22,0x83); msleep(200); }
static void lcdc_himax_init(void) { gpio_direction_output(himax_reset, 1); msleep(5); gpio_direction_output(himax_reset, 0); msleep(10); gpio_direction_output(himax_reset, 1); msleep(20); gpio_direction_output(spi_cs, 1); gpio_direction_output(spi_sdo, 1); gpio_direction_output(spi_sclk, 1); msleep(20); //**********************Start initial squence****************** gpio_lcd_emuspi_write_one_para(0x83, 0x02); gpio_lcd_emuspi_write_one_para(0x85, 0x03); gpio_lcd_emuspi_write_one_para(0x8B, 0x00); gpio_lcd_emuspi_write_one_para(0x8C, 0x13); gpio_lcd_emuspi_write_one_para(0x91, 0x01); gpio_lcd_emuspi_write_one_para(0x83, 0x00); mdelay(5); //------------ Gamma Setting ------------------------------- gpio_lcd_emuspi_write_one_para(0x3E, 0xe2);//0xc4 gpio_lcd_emuspi_write_one_para(0x3F, 0x26);//0x44 gpio_lcd_emuspi_write_one_para(0x40, 0x00);//0x22 gpio_lcd_emuspi_write_one_para(0x41, 0x55);//0x57 gpio_lcd_emuspi_write_one_para(0x42, 0x06);//0x03 gpio_lcd_emuspi_write_one_para(0x43, 0x17);//0x47 gpio_lcd_emuspi_write_one_para(0x44, 0x21);//0x02 gpio_lcd_emuspi_write_one_para(0x45, 0x77);//0x55 gpio_lcd_emuspi_write_one_para(0x46, 0x01);//0x06 gpio_lcd_emuspi_write_one_para(0x47, 0x0a);//0x4c gpio_lcd_emuspi_write_one_para(0x48, 0x05);//0x06 gpio_lcd_emuspi_write_one_para(0x49, 0x02);//0x8c //----------- Power Supply Setting -------------------------- gpio_lcd_emuspi_write_one_para(0x2B, 0xF9); msleep(20); gpio_lcd_emuspi_write_one_para(0x17, 0x91); gpio_lcd_emuspi_write_one_para(0x18, 0x3A); //0x3a gpio_lcd_emuspi_write_one_para(0x1B, 0x13);//0x14 gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x0a); //0x0a gpio_lcd_emuspi_write_one_para(0x1F, 0x58); /* gpio_lcd_emuspi_write_one_para(0x17, 0x90); gpio_lcd_emuspi_write_one_para(0x18, 0x3A); //0x3a gpio_lcd_emuspi_write_one_para(0x1B, 0x11);//0x14 gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x06); //0x0a gpio_lcd_emuspi_write_one_para(0x1F, 0x57); */ // ZTE_LCD_LHT_20100319_001 END msleep(30); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); gpio_lcd_emuspi_write_one_para(0x19, 0x1A); msleep(50); gpio_lcd_emuspi_write_one_para(0x19, 0x12); msleep(50); gpio_lcd_emuspi_write_one_para(0x1E, 0x2e);//0x35 msleep(100); //Display ON Setting gpio_lcd_emuspi_write_one_para(0x3C, 0xC0); gpio_lcd_emuspi_write_one_para(0x3D, 0x1C); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); msleep(50); gpio_lcd_emuspi_write_one_para(0x24, 0x3C); gpio_lcd_emuspi_write_one_para(0x16, 0x1C); /*gpio_lcd_emuspi_write_one_para(0x3A, 0xC0); // RGB interface control*/ gpio_lcd_emuspi_write_one_para(0x3A, 0xce); // RGB interface control gpio_lcd_emuspi_write_one_para(0x01, 0x06); gpio_lcd_emuspi_write_one_para(0x55, 0x00); }
static void lcdc_himax_init(void) { gpio_direction_output(himax_reset, 1); mdelay(5); gpio_direction_output(himax_reset, 0); mdelay(10); gpio_direction_output(himax_reset, 1); mdelay(20); gpio_direction_output(spi_cs, 1); gpio_direction_output(spi_sdo, 1); gpio_direction_output(spi_sclk, 1); mdelay(20); //**********************Start initial squence****************** gpio_lcd_emuspi_write_one_para(0x83, 0x02); gpio_lcd_emuspi_write_one_para(0x85, 0x03); gpio_lcd_emuspi_write_one_para(0x8B, 0x00); gpio_lcd_emuspi_write_one_para(0x8C, 0x13); gpio_lcd_emuspi_write_one_para(0x91, 0x01); gpio_lcd_emuspi_write_one_para(0x83, 0x00); mdelay(5); //------------ Gamma Setting ------------------------------- gpio_lcd_emuspi_write_one_para(0x3E, 0xe2);//0xc4 gpio_lcd_emuspi_write_one_para(0x3F, 0x26);//0x44 gpio_lcd_emuspi_write_one_para(0x40, 0x00);//0x22 gpio_lcd_emuspi_write_one_para(0x41, 0x55);//0x57 gpio_lcd_emuspi_write_one_para(0x42, 0x06);//0x03 gpio_lcd_emuspi_write_one_para(0x43, 0x17);//0x47 gpio_lcd_emuspi_write_one_para(0x44, 0x21);//0x02 gpio_lcd_emuspi_write_one_para(0x45, 0x77);//0x55 gpio_lcd_emuspi_write_one_para(0x46, 0x01);//0x06 gpio_lcd_emuspi_write_one_para(0x47, 0x0a);//0x4c gpio_lcd_emuspi_write_one_para(0x48, 0x05);//0x06 gpio_lcd_emuspi_write_one_para(0x49, 0x02);//0x8c //----------- Power Supply Setting -------------------------- gpio_lcd_emuspi_write_one_para(0x2B, 0xF9); mdelay(20); gpio_lcd_emuspi_write_one_para(0x17, 0x90); gpio_lcd_emuspi_write_one_para(0x18, 0x3A); //0x3a gpio_lcd_emuspi_write_one_para(0x1B, 0x11);//0x14 gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x06); //0x0a gpio_lcd_emuspi_write_one_para(0x1F, 0x57); mdelay(30); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); gpio_lcd_emuspi_write_one_para(0x19, 0x1A); mdelay(50); gpio_lcd_emuspi_write_one_para(0x19, 0x12); mdelay(50); gpio_lcd_emuspi_write_one_para(0x1E, 0x2e);//0x35 mdelay(100); //**************************************************************/ //DUG FUNCTION ON /*gpio_lcd_emuspi_write_one_para(0x5A, 0x01);*/ //LUT /*gpio_lcd_emuspi_write_one_para(0x5C);*/ /*//Red LUT*/ /*WriteData(0x00);//-----------0*/ /*WriteData(0x03);*/ /*WriteData(0x0A);*/ /*WriteData(0x0F);*/ /*WriteData(0x13);*/ /*WriteData(0x16);//-----------5*/ /*WriteData(0x19);*/ /*WriteData(0x1C);*/ /*WriteData(0x1E);*/ /*WriteData(0x1F);*/ /*WriteData(0x25);//-----------10*/ /*WriteData(0x2A);*/ /*WriteData(0x30);*/ /*WriteData(0x35);*/ /*WriteData(0x39);*/ /*WriteData(0x3D);//-----------15*/ /*WriteData(0x41);*/ /*WriteData(0x45);*/ /*WriteData(0x48);*/ /*WriteData(0x4C);*/ /*WriteData(0x4F);//-----------20*/ /*WriteData(0x53);*/ /*WriteData(0x58);*/ /*WriteData(0x5D);*/ /*WriteData(0x61);*/ /*WriteData(0x66);//-----------25*/ /*WriteData(0x6A);*/ /*WriteData(0x6E);*/ /*WriteData(0x72);*/ /*WriteData(0x76);*/ /*WriteData(0x7A);//-----------30*/ /*WriteData(0x7E);*/ /*WriteData(0x82);*/ /*WriteData(0x85);*/ /*WriteData(0x89);*/ /*WriteData(0x8D);//-----------35*/ /*WriteData(0x90);*/ /*WriteData(0x94); */ /*WriteData(0x96);*/ /*WriteData(0x9A); */ /*WriteData(0x9D);//-----------40*/ /*WriteData(0xA1);*/ /*WriteData(0xA4);*/ /*WriteData(0xA8);*/ /*WriteData(0xAB); */ /*WriteData(0xAF);//-----------45*/ /*WriteData(0xB3);*/ /*WriteData(0xB7);*/ /*WriteData(0xBB);*/ /*WriteData(0xBF);*/ /*WriteData(0xC3);//-----------50*/ /*WriteData(0xC8);*/ /*WriteData(0xCC);*/ /*WriteData(0xD1);*/ /*WriteData(0xD6);*/ /*WriteData(0xDB);//-----------55 */ /*WriteData(0xDE);*/ /*WriteData(0xE1);*/ /*WriteData(0xE5);*/ /*WriteData(0xE7); */ /*WriteData(0xEC);//-----------60*/ /*WriteData(0xEF);*/ /*WriteData(0xF4);*/ /*WriteData(0xFF);//-----------63*/ /*//G LUT*/ /*WriteData(0x00);//-----------0*/ /*WriteData(0x03);*/ /*WriteData(0x0A);*/ /*WriteData(0x0F);*/ /*WriteData(0x13);*/ /*WriteData(0x16);//-----------5*/ /*WriteData(0x19);*/ /*WriteData(0x1C);*/ /*WriteData(0x1E);*/ /*WriteData(0x1F);*/ /*WriteData(0x25);//-----------10*/ /*WriteData(0x2A);*/ /*WriteData(0x30);*/ /*WriteData(0x35);*/ /*WriteData(0x39);*/ /*WriteData(0x3D);//-----------15*/ /*WriteData(0x41);*/ /*WriteData(0x45);*/ /*WriteData(0x48);*/ /*WriteData(0x4C);*/ /*WriteData(0x4F);//-----------20*/ /*WriteData(0x53);*/ /*WriteData(0x58);*/ /*WriteData(0x5D);*/ /*WriteData(0x61);*/ /*WriteData(0x66);//-----------25*/ /*WriteData(0x6A);*/ /*WriteData(0x6E);*/ /*WriteData(0x72);*/ /*WriteData(0x76);*/ /*WriteData(0x7A);//-----------30*/ /*WriteData(0x7E);*/ /*WriteData(0x82);*/ /*WriteData(0x85);*/ /*WriteData(0x89);*/ /*WriteData(0x8D);//-----------35*/ /*WriteData(0x90);*/ /*WriteData(0x94); */ /*WriteData(0x96);*/ /*WriteData(0x9A); */ /*WriteData(0x9D);//-----------40*/ /*WriteData(0xA1);*/ /*WriteData(0xA4);*/ /*WriteData(0xA8);*/ /*WriteData(0xAB); */ /*WriteData(0xAF);//-----------45*/ /*WriteData(0xB3);*/ /*WriteData(0xB7);*/ /*WriteData(0xBB);*/ /*WriteData(0xBF);*/ /*WriteData(0xC3);//-----------50*/ /*WriteData(0xC8);*/ /*WriteData(0xCC);*/ /*WriteData(0xD1);*/ /*WriteData(0xD6);*/ /*WriteData(0xDB);//-----------55 */ /*WriteData(0xDE);*/ /*WriteData(0xE1);*/ /*WriteData(0xE5);*/ /*WriteData(0xE7); */ /*WriteData(0xEC);//-----------60*/ /*WriteData(0xEF);*/ /*WriteData(0xF4);*/ /*WriteData(0xFF);//-----------63*/ /*//B LUT */ /*WriteData(0x00);//-----------0*/ /*WriteData(0x03);*/ /*WriteData(0x0A);*/ /*WriteData(0x0F);*/ /*WriteData(0x13);*/ /*WriteData(0x16);//-----------5*/ /*WriteData(0x19);*/ /*WriteData(0x1C);*/ /*WriteData(0x1E);*/ /*WriteData(0x1F);*/ /*WriteData(0x25);//-----------10*/ /*WriteData(0x2A);*/ /*WriteData(0x30);*/ /*WriteData(0x35);*/ /*WriteData(0x39);*/ /*WriteData(0x3D);//-----------15*/ /*WriteData(0x41);*/ /*WriteData(0x45);*/ /*WriteData(0x48);*/ /*WriteData(0x4C);*/ /*WriteData(0x4F);//-----------20*/ /*WriteData(0x53);*/ /*WriteData(0x58);*/ /*WriteData(0x5D);*/ /*WriteData(0x61);*/ /*WriteData(0x66);//-----------25*/ /*WriteData(0x6A);*/ /*WriteData(0x6E);*/ /*WriteData(0x72);*/ /*WriteData(0x76);*/ /*WriteData(0x7A);//-----------30*/ /*WriteData(0x7E);*/ /*WriteData(0x82);*/ /*WriteData(0x85);*/ /*WriteData(0x89);*/ /*WriteData(0x8D);//-----------35*/ /*WriteData(0x90);*/ /*WriteData(0x94); */ /*WriteData(0x96);*/ /*WriteData(0x9A); */ /*WriteData(0x9D);//-----------40*/ /*WriteData(0xA1);*/ /*WriteData(0xA4);*/ /*WriteData(0xA8);*/ /*WriteData(0xAB); */ /*WriteData(0xAF);//-----------45*/ /*WriteData(0xB3);*/ /*WriteData(0xB7);*/ /*WriteData(0xBB);*/ /*WriteData(0xBF);*/ /*WriteData(0xC3);//-----------50*/ /*WriteData(0xC8);*/ /*WriteData(0xCC);*/ /*WriteData(0xD1);*/ /*WriteData(0xD6);*/ /*WriteData(0xDB);//-----------55 */ /*WriteData(0xDE);*/ /*WriteData(0xE1);*/ /*WriteData(0xE5);*/ /*WriteData(0xE7); */ /*WriteData(0xEC);//-----------60*/ /*WriteData(0xEF);*/ /*WriteData(0xF4);*/ /*WriteData(0xFF);//-----------63*/ /***********************************************************************/ //Display ON Setting gpio_lcd_emuspi_write_one_para(0x3C, 0xC0); gpio_lcd_emuspi_write_one_para(0x3D, 0x1C); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(50); gpio_lcd_emuspi_write_one_para(0x24, 0x3C); gpio_lcd_emuspi_write_one_para(0x16, 0x1C); /*gpio_lcd_emuspi_write_one_para(0x3A, 0xC0); // RGB interface control*/ gpio_lcd_emuspi_write_one_para(0x3A, 0xce); // RGB interface control gpio_lcd_emuspi_write_one_para(0x01, 0x06); gpio_lcd_emuspi_write_one_para(0x55, 0x00); }
static void lcdc_himax_wakeup(void) { //Exit Sleep mode gpio_lcd_emuspi_write_one_para(0x17, 0x91); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); /*Write_Reg(0x17); Write_Para(0x91);*/ gpio_lcd_emuspi_write_one_para(0x17, 0x91); mdelay(10); //Power Setting gpio_lcd_emuspi_write_one_para(0x1B, 0x13); gpio_lcd_emuspi_write_one_para(0x1A, 0x11); gpio_lcd_emuspi_write_one_para(0x1C, 0x0A); gpio_lcd_emuspi_write_one_para(0x1F, 0x58); mdelay(20); gpio_lcd_emuspi_write_one_para(0x19, 0x0A); mdelay(10); gpio_lcd_emuspi_write_one_para(0x19, 0x1A); mdelay(40); gpio_lcd_emuspi_write_one_para(0x19, 0x12); gpio_lcd_emuspi_write_one_para(0x1E, 0x2E); mdelay(100); //Display on gpio_lcd_emuspi_write_one_para(0x3C, 0xC0); gpio_lcd_emuspi_write_one_para(0x3D, 0x1C); gpio_lcd_emuspi_write_one_para(0x34, 0x38); gpio_lcd_emuspi_write_one_para(0x35, 0x38); gpio_lcd_emuspi_write_one_para(0x24, 0x38); mdelay(40); gpio_lcd_emuspi_write_one_para(0x24, 0x3C); }