static int32_t r61581b_enter_sleep(struct panel_spec *self, uint8_t is_sleep)
{
	send_data_t send_cmd = self->info.mcu->ops->send_cmd;
	send_data_t send_data = self->info.mcu->ops->send_data;

#ifdef CONFIG_LCD_DATA_WIDTH_8BIT
	lcdc_write(4, LCM_CTRL);
#endif
	if ( is_sleep ){
		send_cmd(0x0028);
        LCD_DelayMS(50);
		send_cmd(0x0010);
        LCD_DelayMS(50);
	}
	else{
	//	send_cmd(0x11);
	//	LCD_DelayMS(120);
	//	send_cmd(0x29);
	//	LCD_DelayMS(20);
        r61581b_init(self);
	}
#ifdef CONFIG_LCD_DATA_WIDTH_8BIT
	lcdc_write(0, LCM_CTRL);
#endif
	return 0;
}
static int32_t hx8369_enter_sleep(struct panel_spec *self, uint8_t is_sleep)
{
    send_data_t send_cmd = self->info.mcu->ops->send_cmd;

    if(is_sleep) {
        /* Sleep In */
        send_cmd(0x28);
        LCD_DelayMS(120);
        send_cmd(0x10);
        LCD_DelayMS(120);
    }
    else {
#if 1
        /* Sleep Out */
        send_cmd(0x11);
        LCD_DelayMS(120);
        send_cmd(0x29);
        LCD_DelayMS(120);
#else
        /* re init */
        se1f->ops->reset(self);
        se1f->ops->lcd_init(self);
#endif
    }
    return 0;
}
static int32_t nt35516_enter_sleep(struct panel_spec *self, uint8_t is_sleep)
{
	send_data_t send_cmd = self->info.mcu->ops->send_cmd;
	send_data_t send_data = self->info.mcu->ops->send_data;

	return 0;

	if(is_sleep==1){
	send_cmd(0x2800);
	LCD_DelayMS(200);
	send_cmd(0x1000);
	LCD_DelayMS(200);
	/*Lcd_EnvidOnOff(0);*//*RGB TIMENG OFF*/
	 /*LCD_Delay(200);*/
	}else{
	/*Lcd_EnvidOnOff(1);*//*RGB TIMENG ON*/
	/*LCD_Delay(200);*/
	/*LCDinit_TFT();*/
	/*LCD_Delay(200);*/
	 }

	return 0;
}
static int32_t r61581b_init(struct panel_spec *self)
{
#ifdef CONFIG_LCD_DATA_WIDTH_8BIT
	lcdc_write(4, LCM_CTRL);
#endif

	self->info.mcu->ops->send_cmd(0xff);
	LCD_DelayMS(130);	
	self->info.mcu->ops->send_cmd(0xff);
	LCD_DelayMS(5);
	self->info.mcu->ops->send_cmd(0xff);
	self->info.mcu->ops->send_cmd(0xff);
	self->info.mcu->ops->send_cmd(0xff);
	self->info.mcu->ops->send_cmd(0xff);
	LCD_DelayMS(10);

	self->info.mcu->ops->send_cmd(0xb0);
	self->info.mcu->ops->send_data(0x00);

	self->info.mcu->ops->send_cmd(0x11);
	LCD_DelayMS(150);

	self->info.mcu->ops->send_cmd(0xb3);
	self->info.mcu->ops->send_data(0x02);
	self->info.mcu->ops->send_data(0x00); //17
	self->info.mcu->ops->send_data(0x00); //0x18
	self->info.mcu->ops->send_data(0x00);

	self->info.mcu->ops->send_cmd(0xC0);
#ifdef MENGBO_SHENGDA_R61581b
	self->info.mcu->ops->send_data(0x16);//0x00
#else
	self->info.mcu->ops->send_data(0x13);//0x00
#endif
	self->info.mcu->ops->send_data(0x3B);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x02);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x01);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x43);

	self->info.mcu->ops->send_cmd(0xC1);// Frame frequency
	self->info.mcu->ops->send_data(0x08);//0x00
	self->info.mcu->ops->send_data(0x10);//0x16 22 clocks,  0x1a 26clocks   
	self->info.mcu->ops->send_data(0x08);
	self->info.mcu->ops->send_data(0x08);

	self->info.mcu->ops->send_cmd(0xC4);
	self->info.mcu->ops->send_data(0x11);//0x00
	self->info.mcu->ops->send_data(0x07);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x03);

	self->info.mcu->ops->send_cmd(0xC6);
	self->info.mcu->ops->send_data(0x00);//0x00

	self->info.mcu->ops->send_cmd(0xC8);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x13);
	self->info.mcu->ops->send_data(0x5c);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x07);
	self->info.mcu->ops->send_data(0x14);
	self->info.mcu->ops->send_data(0x08);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x21);

	self->info.mcu->ops->send_data(0x08);
	self->info.mcu->ops->send_data(0x14);
	self->info.mcu->ops->send_data(0x07);
	self->info.mcu->ops->send_data(0x53);
	self->info.mcu->ops->send_data(0x0c);
	self->info.mcu->ops->send_data(0x13);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x21);
	self->info.mcu->ops->send_data(0x00);

	self->info.mcu->ops->send_cmd(0x35);
	self->info.mcu->ops->send_data(0x00);//0A

	self->info.mcu->ops->send_cmd(0x36);
	self->info.mcu->ops->send_data(0x00);

	self->info.mcu->ops->send_cmd(0x3A);//
	self->info.mcu->ops->send_data(0x55);

	self->info.mcu->ops->send_cmd(0x44);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x01);

	self->info.mcu->ops->send_cmd(0xd0);
	self->info.mcu->ops->send_data(0x07);
	self->info.mcu->ops->send_data(0x07);
	self->info.mcu->ops->send_data(0x1d);
	self->info.mcu->ops->send_data(0x03);

	self->info.mcu->ops->send_cmd(0xd1);//set vcom 
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x30);
	self->info.mcu->ops->send_data(0x10);

	self->info.mcu->ops->send_cmd(0xd2);
	self->info.mcu->ops->send_data(0x03);
	self->info.mcu->ops->send_data(0x14);
	self->info.mcu->ops->send_data(0x04);

	self->info.mcu->ops->send_cmd(0x29);
	LCD_DelayMS(30);

	self->info.mcu->ops->send_cmd(0x2A);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x01);
	self->info.mcu->ops->send_data(0x3F);

	self->info.mcu->ops->send_cmd(0x2B);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x00);
	self->info.mcu->ops->send_data(0x01);
	self->info.mcu->ops->send_data(0xDF);
	
	self->info.mcu->ops->send_cmd(0x35);  // TE on
    self->info.mcu->ops->send_data(0x00);

	self->info.mcu->ops->send_cmd(0xb4); 
	self->info.mcu->ops->send_data(0x00);

	LCD_DelayMS(120);
	self->info.mcu->ops->send_cmd(0x2c);// Set_display_on  

#ifdef CONFIG_LCD_DATA_WIDTH_8BIT
	lcdc_write(0, LCM_CTRL);
#endif
	return 0;
}
static int32_t nt35516_init(struct panel_spec *self)
{
	send_data_t send_cmd = self->info.mcu->ops->send_cmd;
	send_data_t send_data = self->info.mcu->ops->send_data;

	pr_debug("nt35516_init\n");

	send_cmd(0xFF00); send_data(0x00AA); /*AA*/
	send_cmd(0xFF01); send_data(0x0055);/*55*/
	send_cmd(0xFF02); send_data(0x0025);/*08*/
	send_cmd(0xFF03); send_data(0x0001);/*01*/

	send_cmd(0xF300); send_data(0x0002);
	send_cmd(0xF303); send_data(0x0015);

	/*ENABPAGE 0*/
	send_cmd(0xF000); send_data(0x0055); /*Manufacture Command Set Control*/
	send_cmd(0xF001); send_data(0x00AA);
	send_cmd(0xF002); send_data(0x0052);
	send_cmd(0xF003); send_data(0x0008);
	send_cmd(0xF004); send_data(0x0000);

	send_cmd(0xB800); send_data(0x0001);
	send_cmd(0xB801); send_data(0x0002);
	send_cmd(0xB802); send_data(0x0002);
	send_cmd(0xB803); send_data(0x0002);

	send_cmd(0xBC00); send_data(0x0005); /*Zig-Zag Inversion*/
	send_cmd(0xBC01); send_data(0x0005);
	send_cmd(0xBC02); send_data(0x0005);

	send_cmd(0xBD00);send_data(0x0001);
	send_cmd(0xBD01);send_data(0x0063);//54fps
	send_cmd(0xBD02);send_data(0x0010);
	send_cmd(0xBD03);send_data(0x0038);
	send_cmd(0xBD04);send_data(0x0001);


	send_cmd(0x4C00); send_data(0x0011); /*DB4=1,Enable Vivid Color,DB4=0 Disable Vivid Color*/

	/* ENA PAGE 1*/
	send_cmd(0xF000); send_data(0x0055); /*Manufacture Command Set Control */
	send_cmd(0xF001); send_data(0x00AA);
	send_cmd(0xF002); send_data(0x0052);
	send_cmd(0xF003); send_data(0x0008);
	send_cmd(0xF004); send_data(0x0001);/*Page1*/

	send_cmd(0xB000); send_data(0x0005); /*Setting AVDD Voltage 6V*/
	send_cmd(0xB001); send_data(0x0005);
	send_cmd(0xB002); send_data(0x0005);

	send_cmd(0xB600); send_data(0x0044); /* Setting AVEE boosting time 2.5*vpnl */
	send_cmd(0xB601); send_data(0x0044);
	send_cmd(0xB602); send_data(0x0044);

	send_cmd(0xB100); send_data(0x0005); /*Setting AVEE Voltage -6V*/
	send_cmd(0xB101); send_data(0x0005);
	send_cmd(0xB102); send_data(0x0005);

	/*Sett AVEE boosting time -2.5NL*/
	send_cmd(0xB700); send_data(0x0034);
	send_cmd(0xB701); send_data(0x0034);
	send_cmd(0xB702); send_data(0x0034);

	/*Sett VGLX boosting time  AVEVDD */
	send_cmd(0xBA00); send_data(0x0014); /*0x24 --> 0x14*/
	send_cmd(0xBA01); send_data(0x0014);
	send_cmd(0xBA02); send_data(0x0014);

	/*Gammoltage */
	send_cmd(0xBC00); send_data(0x0000);
	send_cmd(0xBC01); send_data(0x00A0);/*VGMP 0x88=4.7V  0x78=4.5V   0xA0=5.0V */
	send_cmd(0xBC02); send_data(0x0000);/*VGSP*/

	//Gammoltage */
	send_cmd(0xBD00); send_data(0x0000);
	send_cmd(0xBD01); send_data(0x00A0);/*VGMN 0x88=-4.7V 0x78=-4.5V   0xA0=-5.0V*/
	send_cmd(0xBD02); send_data(0x0000);/*VGSN*/

	send_cmd(0xBE00); send_data(0x0057); /* Setting VCOM Offset Voltage  0x4E\u017eÄΪ0x57  20111019 LIYAN*/

	/*GAMMED Positive*/
	send_cmd(0xD100); send_data(0x0000);
	send_cmd(0xD101); send_data(0x0032);
	send_cmd(0xD102); send_data(0x0000);
	send_cmd(0xD103); send_data(0x0041);
	send_cmd(0xD104); send_data(0x0000);
	send_cmd(0xD105); send_data(0x0054);
	send_cmd(0xD106); send_data(0x0000);
	send_cmd(0xD107); send_data(0x0067);
	send_cmd(0xD108); send_data(0x0000);
	send_cmd(0xD109); send_data(0x007A);
	send_cmd(0xD10A); send_data(0x0000);
	send_cmd(0xD10B); send_data(0x0098);
	send_cmd(0xD10C); send_data(0x0000);
	send_cmd(0xD10D); send_data(0x00B0);
	send_cmd(0xD10E); send_data(0x0000);
	send_cmd(0xD10F); send_data(0x00DB);
	send_cmd(0xD200); send_data(0x0001);
	send_cmd(0xD201); send_data(0x0001);
	send_cmd(0xD202); send_data(0x0001);
	send_cmd(0xD203); send_data(0x003F);
	send_cmd(0xD204); send_data(0x0001);
	send_cmd(0xD205); send_data(0x0070);
	send_cmd(0xD206); send_data(0x0001);
	send_cmd(0xD207); send_data(0x00B4);
	send_cmd(0xD208); send_data(0x0001);
	send_cmd(0xD209); send_data(0x00EC);
	send_cmd(0xD20A); send_data(0x0001);
	send_cmd(0xD20B); send_data(0x00ED);
	send_cmd(0xD20C); send_data(0x0002);
	send_cmd(0xD20D); send_data(0x001E);
	send_cmd(0xD20E); send_data(0x0002);
	send_cmd(0xD20F); send_data(0x0051);
	send_cmd(0xD300); send_data(0x0002);
	send_cmd(0xD301); send_data(0x006C);
	send_cmd(0xD302); send_data(0x0002);
	send_cmd(0xD303); send_data(0x008D);
	send_cmd(0xD304); send_data(0x0002);
	send_cmd(0xD305); send_data(0x00A5);
	send_cmd(0xD306); send_data(0x0002);
	send_cmd(0xD307); send_data(0x00C9);
	send_cmd(0xD308); send_data(0x0002);
	send_cmd(0xD309); send_data(0x00EA);
	send_cmd(0xD30A); send_data(0x0003);
	send_cmd(0xD30B); send_data(0x0019);
	send_cmd(0xD30C); send_data(0x0003);
	send_cmd(0xD30D); send_data(0x0045);
	send_cmd(0xD30E); send_data(0x0003);
	send_cmd(0xD30F); send_data(0x007A);
	send_cmd(0xD400); send_data(0x0003);
	send_cmd(0xD401); send_data(0x00B0);
	send_cmd(0xD402); send_data(0x0003);
	send_cmd(0xD403); send_data(0x00F4);

	/*Posie Gamma for GREEN*/
	send_cmd(0xD500); send_data(0x0000);
	send_cmd(0xD501); send_data(0x0037);
	send_cmd(0xD502); send_data(0x0000);
	send_cmd(0xD503); send_data(0x0041);
	send_cmd(0xD504); send_data(0x0000);
	send_cmd(0xD505); send_data(0x0054);
	send_cmd(0xD506); send_data(0x0000);
	send_cmd(0xD507); send_data(0x0067);
	send_cmd(0xD508); send_data(0x0000);
	send_cmd(0xD509); send_data(0x007A);
	send_cmd(0xD50A); send_data(0x0000);
	send_cmd(0xD50B); send_data(0x0098);
	send_cmd(0xD50C); send_data(0x0000);
	send_cmd(0xD50D); send_data(0x00B0);
	send_cmd(0xD50E); send_data(0x0000);
	send_cmd(0xD50F); send_data(0x00DB);
	send_cmd(0xD600); send_data(0x0001);
	send_cmd(0xD601); send_data(0x0001);
	send_cmd(0xD602); send_data(0x0001);
	send_cmd(0xD603); send_data(0x003F);
	send_cmd(0xD604); send_data(0x0001);
	send_cmd(0xD605); send_data(0x0070);
	send_cmd(0xD606); send_data(0x0001);
	send_cmd(0xD607); send_data(0x00B4);
	send_cmd(0xD608); send_data(0x0001);
	send_cmd(0xD609); send_data(0x00EC);
	send_cmd(0xD60A); send_data(0x0001);
	send_cmd(0xD60B); send_data(0x00ED);
	send_cmd(0xD60C); send_data(0x0002);
	send_cmd(0xD60D); send_data(0x001E);
	send_cmd(0xD60E); send_data(0x0002);
	send_cmd(0xD60F); send_data(0x0051);
	send_cmd(0xD700); send_data(0x0002);
	send_cmd(0xD701); send_data(0x006C);
	send_cmd(0xD702); send_data(0x0002);
	send_cmd(0xD703); send_data(0x008D);
	send_cmd(0xD704); send_data(0x0002);
	send_cmd(0xD705); send_data(0x00A5);
	send_cmd(0xD706); send_data(0x0002);
	send_cmd(0xD707); send_data(0x00C9);
	send_cmd(0xD708); send_data(0x0002);
	send_cmd(0xD709); send_data(0x00EA);
	send_cmd(0xD70A); send_data(0x0003);
	send_cmd(0xD70B); send_data(0x0019);
	send_cmd(0xD70C); send_data(0x0003);
	send_cmd(0xD70D); send_data(0x0045);
	send_cmd(0xD70E); send_data(0x0003);
	send_cmd(0xD70F); send_data(0x007A);
	send_cmd(0xD800); send_data(0x0003);
	send_cmd(0xD801); send_data(0x00A0);
	send_cmd(0xD802); send_data(0x0003);
	send_cmd(0xD803); send_data(0x00F4);

	/*Posie Gamma for BLUE*/
	send_cmd(0xD900); send_data(0x0000);
	send_cmd(0xD901); send_data(0x0032);
	send_cmd(0xD902); send_data(0x0000);
	send_cmd(0xD903); send_data(0x0041);
	send_cmd(0xD904); send_data(0x0000);
	send_cmd(0xD905); send_data(0x0054);
	send_cmd(0xD906); send_data(0x0000);
	send_cmd(0xD907); send_data(0x0067);
	send_cmd(0xD908); send_data(0x0000);
	send_cmd(0xD909); send_data(0x007A);
	send_cmd(0xD90A); send_data(0x0000);
	send_cmd(0xD90B); send_data(0x0098);
	send_cmd(0xD90C); send_data(0x0000);
	send_cmd(0xD90D); send_data(0x00B0);
	send_cmd(0xD90E); send_data(0x0000);
	send_cmd(0xD90F); send_data(0x00DB);
	send_cmd(0xDD00); send_data(0x0001);
	send_cmd(0xDD01); send_data(0x0001);
	send_cmd(0xDD02); send_data(0x0001);
	send_cmd(0xDD03); send_data(0x003F);
	send_cmd(0xDD04); send_data(0x0001);
	send_cmd(0xDD05); send_data(0x0070);
	send_cmd(0xDD06); send_data(0x0001);
	send_cmd(0xDD07); send_data(0x00B4);
	send_cmd(0xDD08); send_data(0x0001);
	send_cmd(0xDD09); send_data(0x00EC);
	send_cmd(0xDD0A); send_data(0x0001);
	send_cmd(0xDD0B); send_data(0x00ED);
	send_cmd(0xDD0C); send_data(0x0002);
	send_cmd(0xDD0D); send_data(0x001E);
	send_cmd(0xDD0E); send_data(0x0002);
	send_cmd(0xDD0F); send_data(0x0051);
	send_cmd(0xDE00); send_data(0x0002);
	send_cmd(0xDE01); send_data(0x006C);
	send_cmd(0xDE02); send_data(0x0002);
	send_cmd(0xDE03); send_data(0x008D);
	send_cmd(0xDE04); send_data(0x0002);
	send_cmd(0xDE05); send_data(0x00A5);
	send_cmd(0xDE06); send_data(0x0002);
	send_cmd(0xDE07); send_data(0x00C9);
	send_cmd(0xDE08); send_data(0x0002);
	send_cmd(0xDE09); send_data(0x00EA);
	send_cmd(0xDE0A); send_data(0x0003);
	send_cmd(0xDE0B); send_data(0x0019);
	send_cmd(0xDE0C); send_data(0x0003);
	send_cmd(0xDE0D); send_data(0x0045);
	send_cmd(0xDE0E); send_data(0x0003);
	send_cmd(0xDE0F); send_data(0x007A);
	send_cmd(0xDF00); send_data(0x0003);
	send_cmd(0xDF01); send_data(0x00A0);
	send_cmd(0xDF02); send_data(0x0003);
	send_cmd(0xDF03); send_data(0x00F4);

	/*Negae Gamma for RED*/
	send_cmd(0xE000); send_data(0x0000);
	send_cmd(0xE001); send_data(0x0032);
	send_cmd(0xE002); send_data(0x0000);
	send_cmd(0xE003); send_data(0x0041);
	send_cmd(0xE004); send_data(0x0000);
	send_cmd(0xE005); send_data(0x0054);
	send_cmd(0xE006); send_data(0x0000);
	send_cmd(0xE007); send_data(0x0067);
	send_cmd(0xE008); send_data(0x0000);
	send_cmd(0xE009); send_data(0x007A);
	send_cmd(0xE00A); send_data(0x0000);
	send_cmd(0xE00B); send_data(0x0098);
	send_cmd(0xE00C); send_data(0x0000);
	send_cmd(0xE00D); send_data(0x00B0);
	send_cmd(0xE00E); send_data(0x0000);
	send_cmd(0xE00F); send_data(0x00DB);
	send_cmd(0xE100); send_data(0x0001);
	send_cmd(0xE101); send_data(0x0001);
	send_cmd(0xE102); send_data(0x0001);
	send_cmd(0xE103); send_data(0x003F);
	send_cmd(0xE104); send_data(0x0001);
	send_cmd(0xE105); send_data(0x0070);
	send_cmd(0xE106); send_data(0x0001);
	send_cmd(0xE107); send_data(0x00B4);
	send_cmd(0xE108); send_data(0x0001);
	send_cmd(0xE109); send_data(0x00EC);
	send_cmd(0xE10A); send_data(0x0001);
	send_cmd(0xE10B); send_data(0x00ED);
	send_cmd(0xE10C); send_data(0x0002);
	send_cmd(0xE10D); send_data(0x001E);
	send_cmd(0xE10E); send_data(0x0002);
	send_cmd(0xE10F); send_data(0x0051);
	send_cmd(0xE200); send_data(0x0002);
	send_cmd(0xE201); send_data(0x006C);
	send_cmd(0xE202); send_data(0x0002);
	send_cmd(0xE203); send_data(0x008D);
	send_cmd(0xE204); send_data(0x0002);
	send_cmd(0xE205); send_data(0x00A5);
	send_cmd(0xE206); send_data(0x0002);
	send_cmd(0xE207); send_data(0x00C9);
	send_cmd(0xE208); send_data(0x0002);
	send_cmd(0xE209); send_data(0x00EA);
	send_cmd(0xE20A); send_data(0x0003);
	send_cmd(0xE20B); send_data(0x0019);
	send_cmd(0xE20C); send_data(0x0003);
	send_cmd(0xE20D); send_data(0x0045);
	send_cmd(0xE20E); send_data(0x0003);
	send_cmd(0xE20F); send_data(0x007A);
	send_cmd(0xE300); send_data(0x0003);
	send_cmd(0xE301); send_data(0x00A0);
	send_cmd(0xE302); send_data(0x0003);
	send_cmd(0xE303); send_data(0x00F4);

	/*Negae Gamma for GERREN*/
	send_cmd(0xE400); send_data(0x0000);
	send_cmd(0xE401); send_data(0x0032);
	send_cmd(0xE402); send_data(0x0000);
	send_cmd(0xE403); send_data(0x0041);
	send_cmd(0xE404); send_data(0x0000);
	send_cmd(0xE405); send_data(0x0054);
	send_cmd(0xE406); send_data(0x0000);
	send_cmd(0xE407); send_data(0x0067);
	send_cmd(0xE408); send_data(0x0000);
	send_cmd(0xE409); send_data(0x007A);
	send_cmd(0xE40A); send_data(0x0000);
	send_cmd(0xE40B); send_data(0x0098);
	send_cmd(0xE40C); send_data(0x0000);
	send_cmd(0xE40D); send_data(0x00B0);
	send_cmd(0xE40E); send_data(0x0000);
	send_cmd(0xE40F); send_data(0x00DB);
	send_cmd(0xE500); send_data(0x0001);
	send_cmd(0xE501); send_data(0x0001);
	send_cmd(0xE502); send_data(0x0001);
	send_cmd(0xE503); send_data(0x003F);
	send_cmd(0xE504); send_data(0x0001);
	send_cmd(0xE505); send_data(0x0070);
	send_cmd(0xE506); send_data(0x0001);
	send_cmd(0xE507); send_data(0x00B4);
	send_cmd(0xE508); send_data(0x0001);
	send_cmd(0xE509); send_data(0x00EC);
	send_cmd(0xE50A); send_data(0x0001);
	send_cmd(0xE50B); send_data(0x00ED);
	send_cmd(0xE50C); send_data(0x0002);
	send_cmd(0xE50D); send_data(0x001E);
	send_cmd(0xE50E); send_data(0x0002);
	send_cmd(0xE50F); send_data(0x0051);
	send_cmd(0xE600); send_data(0x0002);
	send_cmd(0xE601); send_data(0x006C);
	send_cmd(0xE602); send_data(0x0002);
	send_cmd(0xE603); send_data(0x008D);
	send_cmd(0xE604); send_data(0x0002);
	send_cmd(0xE605); send_data(0x00A5);
	send_cmd(0xE606); send_data(0x0002);
	send_cmd(0xE607); send_data(0x00C9);
	send_cmd(0xE608); send_data(0x0002);
	send_cmd(0xE609); send_data(0x00EA);
	send_cmd(0xE60A); send_data(0x0003);
	send_cmd(0xE60B); send_data(0x0019);
	send_cmd(0xE60C); send_data(0x0003);
	send_cmd(0xE60D); send_data(0x0045);
	send_cmd(0xE60E); send_data(0x0003);
	send_cmd(0xE60F); send_data(0x007A);
	send_cmd(0xE700); send_data(0x0003);
	send_cmd(0xE701); send_data(0x00A0);
	send_cmd(0xE702); send_data(0x0003);
	send_cmd(0xE703); send_data(0x00F4);

	/*Negae Gamma for BLUE*/
	send_cmd(0xE800); send_data(0x0000);
	send_cmd(0xE801); send_data(0x0032);
	send_cmd(0xE802); send_data(0x0000);
	send_cmd(0xE803); send_data(0x0041);
	send_cmd(0xE804); send_data(0x0000);
	send_cmd(0xE805); send_data(0x0054);
	send_cmd(0xE806); send_data(0x0000);
	send_cmd(0xE807); send_data(0x0067);
	send_cmd(0xE808); send_data(0x0000);
	send_cmd(0xE809); send_data(0x007A);
	send_cmd(0xE80A); send_data(0x0000);
	send_cmd(0xE80B); send_data(0x0098);
	send_cmd(0xE80C); send_data(0x0000);
	send_cmd(0xE80D); send_data(0x00B0);
	send_cmd(0xE80E); send_data(0x0000);
	send_cmd(0xE80F); send_data(0x00DB);
	send_cmd(0xE900); send_data(0x0001);
	send_cmd(0xE901); send_data(0x0001);
	send_cmd(0xE902); send_data(0x0001);
	send_cmd(0xE903); send_data(0x003F);
	send_cmd(0xE904); send_data(0x0001);
	send_cmd(0xE905); send_data(0x0070);
	send_cmd(0xE906); send_data(0x0001);
	send_cmd(0xE907); send_data(0x00B4);
	send_cmd(0xE908); send_data(0x0001);
	send_cmd(0xE909); send_data(0x00EC);
	send_cmd(0xE90A); send_data(0x0001);
	send_cmd(0xE90B); send_data(0x00ED);
	send_cmd(0xE90C); send_data(0x0002);
	send_cmd(0xE90D); send_data(0x001E);
	send_cmd(0xE90E); send_data(0x0002);
	send_cmd(0xE90F); send_data(0x0051);
	send_cmd(0xEA00); send_data(0x0002);
	send_cmd(0xEA01); send_data(0x006C);
	send_cmd(0xEA02); send_data(0x0002);
	send_cmd(0xEA03); send_data(0x008D);
	send_cmd(0xEA04); send_data(0x0002);
	send_cmd(0xEA05); send_data(0x00A5);
	send_cmd(0xEA06); send_data(0x0002);
	send_cmd(0xEA07); send_data(0x00C9);
	send_cmd(0xEA08); send_data(0x0002);
	send_cmd(0xEA09); send_data(0x00EA);
	send_cmd(0xEA0A); send_data(0x0003);
	send_cmd(0xEA0B); send_data(0x0019);
	send_cmd(0xEA0C); send_data(0x0003);
	send_cmd(0xEA0D); send_data(0x0045);
	send_cmd(0xEA0E); send_data(0x0003);
	send_cmd(0xEA0F); send_data(0x007A);
	send_cmd(0xEB00); send_data(0x0003);
	send_cmd(0xEB01); send_data(0x00A0);
	send_cmd(0xEB02); send_data(0x0003);
	send_cmd(0xEB03); send_data(0x00F4);

	send_cmd(0x3A00); send_data(0x0007);

	send_cmd(0x3500); send_data(0x0000);

	send_cmd(0x1100); /* Sleep out*/
	LCD_DelayMS(120);
	send_cmd(0x2900); /* Display On*/

	send_cmd(0x2900); /* Display On*/
}
static int32_t hx8369_init(struct panel_spec *self)
{
	send_data_t send_cmd = self->info.mcu->ops->send_cmd;
	send_data_t send_data = self->info.mcu->ops->send_data;

	/* SET password */
	send_cmd(0xB9);
	send_data(0xFF);
	send_data(0x83);
	send_data(0x69);

	/* Set Power */
	send_cmd(0xB1);
	send_data(0x9D);
	send_data(0x00);
	send_data(0x34);
	send_data(0x07);
	send_data(0x00);
	send_data(0x0B);
	send_data(0x0B);
	send_data(0x1A);
	send_data(0x22);
	send_data(0x3F);
	send_data(0x3F);
	send_data(0x01);
	send_data(0x23);
	send_data(0x01);
	send_data(0xE6);
	send_data(0xE6);
	send_data(0xE6);
	send_data(0xE6);
	send_data(0xE6);

	/* SET Display  480x800 */
	send_cmd(0xB2);
	send_data(0x00);
	send_data(0x20);
	send_data(0x03);
	send_data(0x03);
	send_data(0x70);
	send_data(0x00);
	send_data(0xFF);
	send_data(0x00);
	send_data(0x00);
	send_data(0x00);
	send_data(0x00);
	send_data(0x03);
	send_data(0x03);
	send_data(0x00);
	send_data(0x01);

	/* SET Display 480x800 */
	send_cmd(0xB4);
	send_data(0x00);
	send_data(0x18);
	send_data(0x80);
	send_data(0x06);
	send_data(0x02);

	/* OSC */
	send_cmd(0xB0);
	send_data(0x00);
	send_data(0x09); /*05   42HZ  07 50HZ  0B 100% 67HZ */

	/* SET VCOM */
	send_cmd(0xB6);
	send_data(0x4A);
	send_data(0x4A);

	/* SET GIP */
	send_cmd(0xD5);
	send_data(0x00);
	send_data(0x03);
	send_data(0x03);
	send_data(0x00);
	send_data(0x01);
	send_data(0x02);

	send_data(0x28);
	send_data(0x70);
	send_data(0x11);
	send_data(0x13);
	send_data(0x00);
	send_data(0x00);
	send_data(0x40);
	send_data(0x06);
	send_data(0x51);
	send_data(0x07);
	send_data(0x00);
	send_data(0x00);
	send_data(0x41);
	send_data(0x06);
	send_data(0x50);
	send_data(0x07);
	send_data(0x07);
	send_data(0x0F);
	send_data(0x04);
	send_data(0x00);

	/* Set Gamma */
	send_cmd(0xE0);
	send_data(0x00);
	send_data(0x01);
	send_data(0x04);
	send_data(0x23);
	send_data(0x22);
	send_data(0x3F);
	send_data(0x13);
	send_data(0x39);
	send_data(0x06);
	send_data(0x0B);
	send_data(0x0E);
	send_data(0x12);
	send_data(0x15);
	send_data(0x13);
	send_data(0x15);
	send_data(0x13);
	send_data(0x1B);
	send_data(0x00);
	send_data(0x01);
	send_data(0x04);
	send_data(0x23);
	send_data(0x22);
	send_data(0x3F);
	send_data(0x13);
	send_data(0x39);
	send_data(0x06);
	send_data(0x0B);
	send_data(0x0E);
	send_data(0x12);
	send_data(0x15);
	send_data(0x13);
	send_data(0x15);
	send_data(0x13);
	send_data(0x1B);
	send_cmd(0x35);   /* TE on*/
	send_data(0x00);

	/* set CSEL */
	send_cmd(0x3A);
	send_data(0x07);  /* CSEL=0x06, 16bit-color CSEL=0x06, 18bit-color CSEL=0x07, 24bit-color */

	/*24 bit don't need to set 2DH*/

	/* Sleep Out */
	send_cmd(0x11);

	LCD_DelayMS(120);

	#if 0
	{ /* for test the lcd */
		int i;

		send_cmd(0x2C); //Write data
		for (i = 0; i < 480*800/3; i++)
			send_data(0xff);
		for (i = 0; i < 480*800/3; i++)
			send_data(0xff00);
		for (i = 0; i < 480*800/3; i++)
			send_data(0xff0000);
	}
	#endif
	/* Display On */
	send_cmd(0x29);

	LCD_DelayMS (120);

	/* Write data */
	send_cmd(0x2C);

	return 0;
}
static int32_t sc7798_init(struct panel_spec *self)
{
    uint32_t test_data[8] = {0};
    uint32_t left = 0;
    uint32_t top = 0;
    uint32_t right = 480;
    uint32_t bottom = 854;
    uint32_t data = 0;
    spi_send_cmd_t spi_send_cmd = self->info.rgb->bus_info.spi->ops->spi_send_cmd;
    spi_send_data_t spi_send_data = self->info.rgb->bus_info.spi->ops->spi_send_data;
    spi_read_t spi_read = self->info.rgb->bus_info.spi->ops->spi_read;

    LCD_PRINT("sc7798_init\n");

 	sc7798_SpiWriteCmd(0xB9);
	sc7798_SpiWriteData(0xF1);
	sc7798_SpiWriteData(0x08);
	sc7798_SpiWriteData(0x00);

	sc7798_SpiWriteCmd(0xBC); 
	sc7798_SpiWriteData(0x67);

	sc7798_SpiWriteCmd(0x3A); 
	sc7798_SpiWriteData(0x70);

	sc7798_SpiWriteCmd(0xB2); 
	sc7798_SpiWriteData(0x23);

	sc7798_SpiWriteCmd(0xB4); 
	sc7798_SpiWriteData(0x00);

	sc7798_SpiWriteCmd(0xB1); 
	sc7798_SpiWriteData(0x22);
	sc7798_SpiWriteData(0x1B);
	sc7798_SpiWriteData(0x1B);
	sc7798_SpiWriteData(0xB7);
	sc7798_SpiWriteData(0x22);
	sc7798_SpiWriteData(0x02);
	sc7798_SpiWriteData(0xA8);

	sc7798_SpiWriteCmd(0xC6); 
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0xFF);

	sc7798_SpiWriteCmd(0xCC); 
	sc7798_SpiWriteData(0x0C);

	sc7798_SpiWriteCmd(0xE3); 
	sc7798_SpiWriteData(0x02);
	sc7798_SpiWriteData(0x02);
	sc7798_SpiWriteData(0x02);
	sc7798_SpiWriteData(0x02);


	sc7798_SpiWriteCmd(0xB8); 
	sc7798_SpiWriteData(0x07);
	sc7798_SpiWriteData(0x22);

	sc7798_SpiWriteCmd(0xB5); 
	sc7798_SpiWriteData(0x09);
	sc7798_SpiWriteData(0x09);

	sc7798_SpiWriteCmd(0xC0); 
	sc7798_SpiWriteData(0x73);
	sc7798_SpiWriteData(0x50);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x08);
	sc7798_SpiWriteData(0x70);

	sc7798_SpiWriteCmd(0xB3); 
	sc7798_SpiWriteData(0x01);
	sc7798_SpiWriteData(0x00); 
	sc7798_SpiWriteData(0x06);
	sc7798_SpiWriteData(0x06);
	sc7798_SpiWriteData(0x10);
	sc7798_SpiWriteData(0x0A);
	sc7798_SpiWriteData(0x45);
	sc7798_SpiWriteData(0x40);

	sc7798_SpiWriteCmd(0xB9); 
	sc7798_SpiWriteData(0xF1);
	sc7798_SpiWriteData(0x08);
	sc7798_SpiWriteData(0x00);

	sc7798_SpiWriteCmd(0xE9); 
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x08);
	sc7798_SpiWriteData(0x03);
	sc7798_SpiWriteData(0x2F);
	sc7798_SpiWriteData(0x89);
	sc7798_SpiWriteData(0x6A); 
	sc7798_SpiWriteData(0x12);
	sc7798_SpiWriteData(0x31);
	sc7798_SpiWriteData(0x23);
	sc7798_SpiWriteData(0x48);
	sc7798_SpiWriteData(0x0C);
	sc7798_SpiWriteData(0x89);
	sc7798_SpiWriteData(0x6A);
	sc7798_SpiWriteData(0x47);
	sc7798_SpiWriteData(0x02);
	sc7798_SpiWriteData(0x04);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x20);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x40);
	sc7798_SpiWriteData(0x28);
	sc7798_SpiWriteData(0x69);
	sc7798_SpiWriteData(0x48);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x80);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x51);
	sc7798_SpiWriteData(0x38);
	sc7798_SpiWriteData(0x79);
	sc7798_SpiWriteData(0x58);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x81);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00); 
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);

	sc7798_SpiWriteCmd(0xEA); 
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x37);
	sc7798_SpiWriteData(0x59);
	sc7798_SpiWriteData(0x18);
	sc7798_SpiWriteData(0x18);
	sc7798_SpiWriteData(0x88); 
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x85);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x26);
	sc7798_SpiWriteData(0x49);
	sc7798_SpiWriteData(0x08);
	sc7798_SpiWriteData(0x08);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x84);
	sc7798_SpiWriteData(0x30);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0xFF);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x50);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);

	sc7798_SpiWriteCmd(0xE0); 
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x04);
	sc7798_SpiWriteData(0x04);
	sc7798_SpiWriteData(0x0A);
	sc7798_SpiWriteData(0x18); 
	sc7798_SpiWriteData(0x2B);
	sc7798_SpiWriteData(0x05);
	sc7798_SpiWriteData(0x0C);
	sc7798_SpiWriteData(0x11);
	sc7798_SpiWriteData(0x16);
	sc7798_SpiWriteData(0x18);
	sc7798_SpiWriteData(0x16);
	sc7798_SpiWriteData(0x16);
	sc7798_SpiWriteData(0x15);
	sc7798_SpiWriteData(0x19);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x04);
	sc7798_SpiWriteData(0x04);
	sc7798_SpiWriteData(0x0A);
	sc7798_SpiWriteData(0x18);
	sc7798_SpiWriteData(0x2C);
	sc7798_SpiWriteData(0x05);
	sc7798_SpiWriteData(0x0C);
	sc7798_SpiWriteData(0x12);
	sc7798_SpiWriteData(0x16);
	sc7798_SpiWriteData(0x18);
	sc7798_SpiWriteData(0x16);
	sc7798_SpiWriteData(0x17);
	sc7798_SpiWriteData(0x16);
	sc7798_SpiWriteData(0x19);

#if 0
	sc7798_SpiWriteCmd(0xC1); 
	sc7798_SpiWriteData(0x01);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x03);
	sc7798_SpiWriteData(0x0B);
	sc7798_SpiWriteData(0x17);
	sc7798_SpiWriteData(0x20);
	sc7798_SpiWriteData(0x26); 
	sc7798_SpiWriteData(0x30);
	sc7798_SpiWriteData(0x36);
	sc7798_SpiWriteData(0x3F);
	sc7798_SpiWriteData(0x48);
	sc7798_SpiWriteData(0x50);
	sc7798_SpiWriteData(0x58);
	sc7798_SpiWriteData(0x5F);
	sc7798_SpiWriteData(0x68);
	sc7798_SpiWriteData(0x71);
	sc7798_SpiWriteData(0x79);
	sc7798_SpiWriteData(0x82);
	sc7798_SpiWriteData(0x89);
	sc7798_SpiWriteData(0x91);
	sc7798_SpiWriteData(0x99);
	sc7798_SpiWriteData(0xA1);
	sc7798_SpiWriteData(0xA9);
	sc7798_SpiWriteData(0xB0);
	sc7798_SpiWriteData(0xB8);
	sc7798_SpiWriteData(0xC0);
	sc7798_SpiWriteData(0xC8);
	sc7798_SpiWriteData(0xD0);
	sc7798_SpiWriteData(0xD6);
	sc7798_SpiWriteData(0xDC);
	sc7798_SpiWriteData(0xE4);
	sc7798_SpiWriteData(0xED);
	sc7798_SpiWriteData(0xF7);
	sc7798_SpiWriteData(0xFF);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0xC0);
	sc7798_SpiWriteData(0x0A);
	sc7798_SpiWriteData(0x80);
	sc7798_SpiWriteData(0x30);
	sc7798_SpiWriteData(0xE8);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x03);
	sc7798_SpiWriteData(0x0B);
	sc7798_SpiWriteData(0x17);
	sc7798_SpiWriteData(0x20);
	sc7798_SpiWriteData(0x27);
	sc7798_SpiWriteData(0x30);
	sc7798_SpiWriteData(0x37);
	sc7798_SpiWriteData(0x40);
	sc7798_SpiWriteData(0x48);
	sc7798_SpiWriteData(0x50);
	sc7798_SpiWriteData(0x58);
	sc7798_SpiWriteData(0x5F);
	sc7798_SpiWriteData(0x67);
	sc7798_SpiWriteData(0x70);
	sc7798_SpiWriteData(0x78);
	sc7798_SpiWriteData(0x80);
	sc7798_SpiWriteData(0x88);
	sc7798_SpiWriteData(0x90);
	sc7798_SpiWriteData(0x98);
	sc7798_SpiWriteData(0xA0);
	sc7798_SpiWriteData(0xA8);
	sc7798_SpiWriteData(0xAF);
	sc7798_SpiWriteData(0xB7);
	sc7798_SpiWriteData(0xBF);
	sc7798_SpiWriteData(0xC7);
	sc7798_SpiWriteData(0xCF);
	sc7798_SpiWriteData(0xD5);
	sc7798_SpiWriteData(0xDC);
	sc7798_SpiWriteData(0xE4);
	sc7798_SpiWriteData(0xED);
	sc7798_SpiWriteData(0xF7);
	sc7798_SpiWriteData(0xFF);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0xC0);
	sc7798_SpiWriteData(0x0A);
	sc7798_SpiWriteData(0x80);
	sc7798_SpiWriteData(0x30);
	sc7798_SpiWriteData(0xE8);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x03);
	sc7798_SpiWriteData(0x0D);
	sc7798_SpiWriteData(0x19);
	sc7798_SpiWriteData(0x23);
	sc7798_SpiWriteData(0x29);
	sc7798_SpiWriteData(0x31);
	sc7798_SpiWriteData(0x38);
	sc7798_SpiWriteData(0x41);
	sc7798_SpiWriteData(0x48);
	sc7798_SpiWriteData(0x4F);
	sc7798_SpiWriteData(0x57);
	sc7798_SpiWriteData(0x5D);
	sc7798_SpiWriteData(0x65);
	sc7798_SpiWriteData(0x6C);
	sc7798_SpiWriteData(0x74);
	sc7798_SpiWriteData(0x7B);
	sc7798_SpiWriteData(0x84);
	sc7798_SpiWriteData(0x8B);
	sc7798_SpiWriteData(0x94);
	sc7798_SpiWriteData(0x9B);
	sc7798_SpiWriteData(0xA4);
	sc7798_SpiWriteData(0xAA);
	sc7798_SpiWriteData(0xB4);
	sc7798_SpiWriteData(0xB9);
	sc7798_SpiWriteData(0xC3);
	sc7798_SpiWriteData(0xCC);
	sc7798_SpiWriteData(0xD6);
	sc7798_SpiWriteData(0xDC);
	sc7798_SpiWriteData(0xE4);
	sc7798_SpiWriteData(0xED);
	sc7798_SpiWriteData(0xF7);
	sc7798_SpiWriteData(0xFF);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0x00);
	sc7798_SpiWriteData(0xC0);
	sc7798_SpiWriteData(0x0A);
	sc7798_SpiWriteData(0x80);
	sc7798_SpiWriteData(0x30);
	sc7798_SpiWriteData(0xE8);
	sc7798_SpiWriteData(0x00);
#endif
#if 1
    //Display on
    sc7798_SpiWriteCmd(0x11); // (SLPOUT)

    LCD_DelayMS(120); // 100ms

    sc7798_SpiWriteCmd(0x29); // (DISPON)

    LCD_DelayMS(100); // 100ms
#else
	if (1) { //  for test the lcd
		int i;
		sc7798_SpiWriteCmd(0x2C); //Write data
		for (i = 0; i < 480*320/3; i++)
			sc7798_SpiWriteData(0xff);
		for (i = 0; i < 480*320/3; i++)
			sc7798_SpiWriteData(0xff00);
		for (i = 0; i < 480*320/3; i++)
			sc7798_SpiWriteData(0xff0000);
	}
	sc7798_SpiWriteCmd(0x29); //Display On
	LCD_DelayMS(120); //120ms
	sc7798_SpiWriteCmd(0x2C); //Write data
	LCD_DelayMS(1200); //120ms
#endif
	LCD_PRINT("sc7798_init: end\n");

	return 0;
}