int array[4];
char buffer[1];
char id_high=0;
char id_midd=0;
char id_low=0;
int id=0;
SET_RESET_PIN(1);
MDELAY(1);
SET_RESET_PIN(0);
MDELAY(20);
SET_RESET_PIN(1);
MDELAY(120);
array[0]=0x00063902;
array[1]=0x0698ffff;
array[2]=0x00000104;
dsi_set_cmdq(array, 3, 1);
MDELAY(10);
array[0]=0x00023700;
dsi_set_cmdq(array, 1, 1);
read_reg_v2(0x04, buffer, 3);//if read 0x04,should get 0x008000,that is both OK.
read_reg_v2(0x00, buffer,1);
id_high = buffer[0]; ///////////////////////0x98
read_reg_v2(0x01, buffer,1);
id_midd = buffer[0]; ///////////////////////0x06
//read_reg_v2(0x02, buffer,1);
//id_low = buffer[0]; ////////////////////////0x04
id = (id_high << 8) | id_midd;//id = (id_high << 16) | (id_midd << 8) | id_low;
#if defined(BUILD_LK)
printf("-----------
ILI9806E %s, 0x00=0x%x,0x01=0x%x,id=0x%x\n", __func__, id_high,id_midd,id);
#else
printk("-----------ili9806E %s, 0x00=0x%x,0x01=0x%x,id=0x%x\n", __func__, id_high,id_midd,id);
#endif
return (LCM_ID == id) ? 1 : 0;