60 regValue = ( ((((LCD_ConfigStruct->
PPL / 16) - 1) & 0x3F) << 2)
61 | (( (LCD_ConfigStruct->
HSW - 1) & 0xFF) << 8)
62 | (( (LCD_ConfigStruct->
HFP - 1) & 0xFF) << 16)
63 | (( (LCD_ConfigStruct->
HBP - 1) & 0xFF) << 24) );
64 LCDx->
TIMH = regValue;
67 regValue = ((((LCD_ConfigStruct->
LPP - 1) & 0x3FF) << 0)
68 | (((LCD_ConfigStruct->
VSW - 1) & 0x03F) << 10)
69 | (((LCD_ConfigStruct->
VFP - 1) & 0x0FF) << 16)
70 | (((LCD_ConfigStruct->
VBP - 1) & 0x0FF) << 24) );
71 LCDx->
TIMV = regValue;
75 regValue = (((LCD_ConfigStruct->
ACB - 1) & 0x1F) << 6);
76 regValue |= (LCD_ConfigStruct->
IOE & 1) << 14;
77 regValue |= (LCD_ConfigStruct->
IPC & 1) << 13;
78 regValue |= (LCD_ConfigStruct->
IHS & 1) << 12;
79 regValue |= (LCD_ConfigStruct->
IVS & 1) << 11;
82 switch (LCD_ConfigStruct->
LCD) {
84 regValue |= ((((LCD_ConfigStruct->
PPL / 4) - 1) & 0x3FF) << 16);
88 regValue |= ((((LCD_ConfigStruct->
PPL / 8) - 1) & 0x3FF) << 16);
92 regValue |= (((((LCD_ConfigStruct->
PPL * 3) / 8) - 1) & 0x3FF) << 16);
97 regValue |= (((LCD_ConfigStruct->
PPL - 1) & 0x3FF) << 16);
103 regValue |= ((pcd >> 5) << 27) | ((pcd) & 0x1F);
104 LCDx->
POL = regValue;
110 regValue = LCD_ConfigStruct->
BPP << 1;
114 regValue |= LCD_ConfigStruct->
LCD << 4;
115 if (LCD_ConfigStruct->
Dual == 1) {
118 LCDx->
CTRL = regValue;
122 for (i = 0; i < 128; i++) {
133 for (i = 0; i < 1000000; i++) {}
138 for (i = 0; i < 1000000; i++) {}
165 LCDx->
CRSR_CFG = ((sync ? 1 : 0) << 1) | cursor_size;
170 return (
void *) &(LCDx->
CRSR_IMG[cursor_num * 64]);
203 LCDx->
CRSR_XY = (x & 0x3FF) | ((y & 0x3FF) << 16);
208 LCDx->
CRSR_CLIP = (x & 0x3F) | ((y & 0x3F) << 8);