More logs from a Qbox mini with the "white LCD" fault.
I have collected some more logs.
(no network or antennas were connected while doing this)
You can see from the logs that LCD is initialised 3 times during boot up.
Search for "Init of " in the logs to find these.
Any of these 3 LCD inits can be wrong (The LCD is incorrectly identified) and they can be wrong in any order, so for example:
Init 1 - LCD white
Init 2 - LCD ok
Init 3 - LCD white (stays white after this)
or
Init 1 - LCD ok
Init 2 - LCD ok
Init 3 - LCD white (stays white after this)
or
Init 1 - LCD ok
Init 2 - LCD white
Init 3 - LCD white (stays white after this)
I assume the LCD and driver chip is memory mapped (via an FPGA ?)
so the fault could be in the memory mapping (FPGA) which means its not a software fault.
The fact that there is a comment in the uboot LCD driver.c code about reading of the DB and DC registers not working
(that code was commented out) means that the engineer is aware of an issue with the LCD.
As you can see from my logs reading the DA register in the uboot LCD code is not reliable even for the DA register.
/* DA */
WriteCOM(0xDA); //manufacturer ID
res_da=res_m=ctrl_inw(lcd_cb.base_address_emi);
lcd_id_m|=((res_m>>8)&0xFF);
dprintk("Value of DA register (manufacturer ID): 0x%04X\n",(res_m>>8));
lcd_id_m=(lcd_id_m<<8);
/* DB */
WriteCOM(0xDB);
res_m=0;
res_m=ctrl_inw(lcd_cb.base_address_emi);
lcd_id_m|=((res_m>>8)&0xFF);
dprintk("Value of DB register: 0x%04X\n",res_m);
lcd_id_m=(lcd_id_m<<8);
/* DC */
WriteCOM(0xDC);
res_m=0;
res_m=ctrl_inw(lcd_cb.base_address_emi);
lcd_id_m|=((res_m>>8)&0xFF);
dprintk("Value of DC register: 0x%04X\n",res_m);
printk("Value of LCD id: 0x%08X\n", lcd_id_m);
Please contact me to discuss more.
LCD ok after box off for 12 hours
LCD OK log
LCD white during bootloader , start then is ok during Linux / enigma start
LCD not OK at boot, then OK, then not OK during enigma start