mirror of
https://github.com/CTCaer/hekate.git
synced 2024-11-26 11:42:09 +00:00
di: Update display panels and info
This commit is contained in:
parent
e158d9bc00
commit
f559017aeb
3 changed files with 72 additions and 22 deletions
10
bdk/gfx/di.c
10
bdk/gfx/di.c
|
@ -170,8 +170,8 @@ void display_init()
|
|||
DSI(_DSIREG(DSI_TRIGGER)) = DSI_TRIGGER_HOST;
|
||||
usleep(5000);
|
||||
break;
|
||||
case PANEL_INL_P062CCA_AZ2:
|
||||
case PANEL_AUO_A062TAN02:
|
||||
case PANEL_INL_2J055IA_27A:
|
||||
case PANEL_AUO_A055TAN01:
|
||||
default: // Allow spare part displays to work.
|
||||
_display_dsi_send_cmd(MIPI_DSI_DCS_SHORT_WRITE, MIPI_DCS_EXIT_SLEEP_MODE, 120000);
|
||||
break;
|
||||
|
@ -269,15 +269,15 @@ void display_end()
|
|||
case PANEL_AUO_A062TAN01:
|
||||
exec_cfg((u32 *)DSI_BASE, _display_deinit_config_auo, 37);
|
||||
break;
|
||||
case PANEL_INL_P062CCA_AZ2:
|
||||
case PANEL_AUO_A062TAN02:
|
||||
case PANEL_INL_2J055IA_27A:
|
||||
case PANEL_AUO_A055TAN01:
|
||||
DSI(_DSIREG(DSI_WR_DATA)) = 0x439; // MIPI_DSI_DCS_LONG_WRITE: 4 bytes.
|
||||
DSI(_DSIREG(DSI_WR_DATA)) = 0x9483FFB9; // Enable extension cmd. (Pass: FF 83 94).
|
||||
DSI(_DSIREG(DSI_TRIGGER)) = DSI_TRIGGER_HOST;
|
||||
usleep(5000);
|
||||
// Set Power.
|
||||
DSI(_DSIREG(DSI_WR_DATA)) = 0xB39; // MIPI_DSI_DCS_LONG_WRITE: 11 bytes.
|
||||
if (_display_id == PANEL_INL_P062CCA_AZ2)
|
||||
if (_display_id == PANEL_INL_2J055IA_27A)
|
||||
DSI(_DSIREG(DSI_WR_DATA)) = 0x751548B1; // Set Power control. (Not deep standby, BT5 / XDK, VRH gamma volt adj 53 / x40).
|
||||
else
|
||||
DSI(_DSIREG(DSI_WR_DATA)) = 0x711148B1; // Set Power control. (Not deep standby, BT1 / XDK, VRH gamma volt adj 49 / x40).
|
||||
|
|
14
bdk/gfx/di.h
14
bdk/gfx/di.h
|
@ -496,12 +496,18 @@
|
|||
#define MIPI_DCS_SET_DISPLAY_ON 0x29
|
||||
|
||||
/* Switch Panels:
|
||||
*
|
||||
* 6.2 panels":
|
||||
* [10] 81 [26]: JDI LPM062M326A
|
||||
* [10] 96 [09]: JDI LAM062M109A
|
||||
* [20] 93 [0F]: InnoLux P062CCA-AZ1 (Rev A1)
|
||||
* [20] XX [10]: InnoLux P062CCA-AZ2 [UNCONFIRMED ID]
|
||||
* [20] 95 [0F]: InnoLux P062CCA-AZ2
|
||||
* [30] 94 [0F]: AUO A062TAN01 (59.06A33.001)
|
||||
* [30] XX [10]: AUO A062TAN02 (59.06A33.002) [UNCONFIRMED ID]
|
||||
* [30] XX [0F]: AUO A062TAN02 (59.06A33.002) [UNCONFIRMED ID]
|
||||
*
|
||||
* 5.5" panels:
|
||||
* [20] 94 [10]: InnoLux 2J055IA-27A (Rev B1)
|
||||
* [30] XX [10]: AUO A055TAN01 (59.05A30.001) [UNCONFIRMED ID]
|
||||
*/
|
||||
|
||||
enum
|
||||
|
@ -511,8 +517,8 @@ enum
|
|||
PANEL_JDI_LPM062M326A = 0x2610,
|
||||
PANEL_INL_P062CCA_AZ1 = 0x0F20,
|
||||
PANEL_AUO_A062TAN01 = 0x0F30,
|
||||
PANEL_INL_P062CCA_AZ2 = 0x1020,
|
||||
PANEL_AUO_A062TAN02 = 0x1030
|
||||
PANEL_INL_2J055IA_27A = 0x1020,
|
||||
PANEL_AUO_A055TAN01 = 0x1030
|
||||
};
|
||||
|
||||
void display_init();
|
||||
|
|
|
@ -378,6 +378,7 @@ static lv_res_t _create_mbox_cal0(lv_obj_t *btn)
|
|||
cal0->bd_mac[0], cal0->bd_mac[1], cal0->bd_mac[2], cal0->bd_mac[3], cal0->bd_mac[4], cal0->bd_mac[5],
|
||||
cal0->battery_lot);
|
||||
|
||||
u8 display_rev = (nyx_str->info.disp_id >> 8) & 0xFF;
|
||||
u32 display_id = (cal0->lcd_vendor & 0xFF) << 8 | (cal0->lcd_vendor & 0xFF0000) >> 16;
|
||||
switch (display_id)
|
||||
{
|
||||
|
@ -388,16 +389,37 @@ static lv_res_t _create_mbox_cal0(lv_obj_t *btn)
|
|||
strcat(txt_buf, "JDI LPM062M326A");
|
||||
break;
|
||||
case PANEL_INL_P062CCA_AZ1:
|
||||
strcat(txt_buf, "InnoLux P062CCA-AZ1");
|
||||
strcat(txt_buf, "InnoLux P062CCA-AZ");
|
||||
switch (display_rev)
|
||||
{
|
||||
case 0x93:
|
||||
strcat(txt_buf, "1");
|
||||
break;
|
||||
case 0x95:
|
||||
strcat(txt_buf, "2");
|
||||
break;
|
||||
default:
|
||||
strcat(txt_buf, "X");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case PANEL_AUO_A062TAN01:
|
||||
strcat(txt_buf, "AUO A062TAN01");
|
||||
strcat(txt_buf, "AUO A062TAN0");
|
||||
switch (display_rev)
|
||||
{
|
||||
case 0x94:
|
||||
strcat(txt_buf, "1");
|
||||
break;
|
||||
default:
|
||||
strcat(txt_buf, "X");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case PANEL_INL_P062CCA_AZ2:
|
||||
strcat(txt_buf, "InnoLux P062CCA-AZ2");
|
||||
case PANEL_INL_2J055IA_27A:
|
||||
strcat(txt_buf, "InnoLux 2J055IA-27A");
|
||||
break;
|
||||
case PANEL_AUO_A062TAN02:
|
||||
strcat(txt_buf, "AUO A062TAN02");
|
||||
case PANEL_AUO_A055TAN01:
|
||||
strcat(txt_buf, "AUO A055TAN01");
|
||||
break;
|
||||
default:
|
||||
switch (cal0->lcd_vendor & 0xFF)
|
||||
|
@ -640,6 +662,7 @@ static lv_res_t _create_window_fuses_info_status(lv_obj_t *btn)
|
|||
s_printf(txt_buf + strlen(txt_buf), " (%d)\n\n", (ram_density.dev1_ch0 & 0x3C) >> 2);
|
||||
|
||||
// Display info.
|
||||
u8 display_rev = (nyx_str->info.disp_id >> 8) & 0xFF;
|
||||
u32 display_id = ((nyx_str->info.disp_id >> 8) & 0xFF00) | (nyx_str->info.disp_id & 0xFF);
|
||||
|
||||
strcat(txt_buf, "#00DDFF Display Panel:#\n#FF8000 Model:# ");
|
||||
|
@ -653,16 +676,37 @@ static lv_res_t _create_window_fuses_info_status(lv_obj_t *btn)
|
|||
strcat(txt_buf, "JDI LPM062M326A");
|
||||
break;
|
||||
case PANEL_INL_P062CCA_AZ1:
|
||||
strcat(txt_buf, "InnoLux P062CCA-AZ1");
|
||||
strcat(txt_buf, "InnoLux P062CCA-AZ");
|
||||
switch (display_rev)
|
||||
{
|
||||
case 0x93:
|
||||
strcat(txt_buf, "1");
|
||||
break;
|
||||
case 0x95:
|
||||
strcat(txt_buf, "2");
|
||||
break;
|
||||
default:
|
||||
strcat(txt_buf, "X #FFDD00 Contact me!#");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case PANEL_AUO_A062TAN01:
|
||||
strcat(txt_buf, "AUO A062TAN01");
|
||||
strcat(txt_buf, "AUO A062TAN0");
|
||||
switch (display_rev)
|
||||
{
|
||||
case 0x94:
|
||||
strcat(txt_buf, "1");
|
||||
break;
|
||||
default:
|
||||
strcat(txt_buf, "X #FFDD00 Contact me!#");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case PANEL_INL_P062CCA_AZ2:
|
||||
strcat(txt_buf, "InnoLux P062CCA-AZ2");
|
||||
case PANEL_INL_2J055IA_27A:
|
||||
strcat(txt_buf, "InnoLux 2J055IA-27A");
|
||||
break;
|
||||
case PANEL_AUO_A062TAN02:
|
||||
strcat(txt_buf, "AUO A062TAN02");
|
||||
case PANEL_AUO_A055TAN01:
|
||||
strcat(txt_buf, "AUO A055TAN01");
|
||||
break;
|
||||
default:
|
||||
switch (display_id & 0xFF)
|
||||
|
@ -677,7 +721,7 @@ static lv_res_t _create_window_fuses_info_status(lv_obj_t *btn)
|
|||
strcat(txt_buf, "AUO ");
|
||||
break;
|
||||
}
|
||||
strcat(txt_buf, "Unknown");
|
||||
strcat(txt_buf, "Unknown #FFDD00 Contact me!#");
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue