Hello,
I am trying to connect LVDS display working in DE (DENA, Data Enable) mode only to A20 board. SYNC node is not supported by the display. How can I configure A20 to work in DE mode using FEX-file?
Gene.
You shouldn't need to do anything other than setup the timing. You just ignore the HSYNC and VSYNC outputs and connect DE to your LCD as normal.
I run an LVDS (driver/receiver) link from the A20 to a display that is DE only and it works.
Hi dave-at-axon,
Could you please post here your FEX-file's display related settings from working configuration, may be there is subtle misconfiguration in my FEX-file. I watch LVDS lines using oscilloscope, there is no signals, even on CLK lines.
Another question is: do you use A20+LVDS configuration on Android (4.2 version ?) or on Linux?
Quote from: orothron on September 16, 2015, 04:45:19 PM
Could you please post here your FEX-file's display related settings from working configuration, may be there is subtle misconfiguration in my FEX-file. I watch LVDS lines using oscilloscope, there is no signals, even on CLK lines.
At this time I don't use the LVDS from the processor, I have a DS90C385 combination to do the LVDS as I needed a drop in replacement for the existing design so I still have the FEX configured for RGB but the LCD is DE only so I just don't connect the HSYNC or VSYNC but they are still there.
Can you post your FEX file and we can do a quick check of what you have used?
I am running Android 4.2.2
Are you building your own OS?
After checking LVDS-lines w/ oscilloscope i see that my problem is more fundamental than DE/SYNC mismatch, so there is no any valid signals on the lines. I see valid LVDS-signals on my LVDS-based non-A20 tablet PC, also I see valid RGB signals on A20 in TTL mode, but there is nothing when I change interfacing to LVDS mode. I read on some forum, than can be subtle differencies in FEX-file settings, because some people have LVDS troubles when using A10 working LVDS configurations on A20 devices. I use imgRePacker to unpack-edit-repack ready to use Android images, successfully change display modes except of LVDS mode. May be there is some problems while processing LVDS-settings w/ imgRePacker. Also I read on some forum that need to make changes in SystemServer.java file then rebuild Android OS, but I think this can affect on screen content output in Android, but LVDS-lines must operate normal w/o patching the file if A20 initialized correct. Unfortunately I cannot to find any ready to use LVDS-enabled Android images for A20 from any A20 SOM suppliers.
My FEX-setting are:
[disp_init]
disp_init_enable = 1
disp_mode = 0
screen0_output_type = 1
screen0_output_mode = 4
screen1_output_type = 1
screen1_output_mode = 4
fb0_framebuffer_num = 2
fb0_format = 10
fb0_pixel_sequence = 0
fb0_scaler_mode_enable = 1
fb0_width = 0
fb0_height = 0
fb1_framebuffer_num = 2
fb1_format = 10
fb1_pixel_sequence = 2
fb1_scaler_mode_enable = 0
fb1_width = 0
fb1_height = 0
lcd0_backlight = 197
lcd1_backlight = 197
lcd0_bright = 50
lcd0_contrast = 50
lcd0_saturation = 57
lcd0_hue = 50
lcd1_bright = 50
lcd1_contrast = 50
lcd1_saturation = 57
lcd1_hue = 50
;-------------------------------------------------------------------------------
[lcd0_para]
lcd_used = 1
lcd_x = 1024
lcd_y = 600
lcd_width = 0
lcd_height = 0
lcd_dclk_freq = 52
lcd_pwm_not_used = 0
lcd_pwm_ch = 0
lcd_pwm_freq = 10000
lcd_pwm_pol = 0
lcd_if = 3
lcd_hbp = 320
lcd_ht = 1344
lcd_vbp = 35
lcd_vt = 1270
lcd_vspw = 10
lcd_hspw = 10
lcd_hv_if = 0
lcd_hv_smode = 0
lcd_hv_s888_if = 0
lcd_hv_syuv_if = 0
lcd_lvds_ch = 0
lcd_lvds_mode = 0
lcd_lvds_bitwidth = 1
lcd_lvds_io_cross = 0
lcd_cpu_if = 0
lcd_frm = 1
lcd_io_cfg0 = 0x00000000
lcd_gamma_correction_en = 0
lcd_gamma_tbl_0 = 0x00000000
lcd_gamma_tbl_1 = 0x00010101
lcd_gamma_tbl_255 = 0x00ffffff
lcd_bl_en_used = 1
lcd_bl_en = port:PH07<1><0><default><1>
lcd_power_used = 1
lcd_power = port:PH08<1><0><default><1>
lcd_pwm_used = 1
lcd_pwm = port:PB02<2><0><default><default>
lcdd0 = port:PD00<3><0><default><default>
lcdd1 = port:PD01<3><0><default><default>
lcdd2 = port:PD02<3><0><default><default>
lcdd3 = port:PD03<3><0><default><default>
lcdd4 = port:PD04<3><0><default><default>
lcdd5 = port:PD05<3><0><default><default>
lcdd6 = port:PD06<3><0><default><default>
lcdd7 = port:PD07<3><0><default><default>
lcdd8 = port:PD08<3><0><default><default>
lcdd9 = port:PD09<3><0><default><default>
lcdd10 = port:PD10<3><0><default><default>
lcdd11 = port:PD11<3><0><default><default>
lcdd12 = port:PD12<3><0><default><default>
lcdd13 = port:PD13<3><0><default><default>
lcdd14 = port:PD14<3><0><default><default>
lcdd15 = port:PD15<3><0><default><default>
lcdd16 = port:PD16<3><0><default><default>
lcdd17 = port:PD17<3><0><default><default>
lcdd18 = port:PD18<3><0><default><default>
lcdd19 = port:PD19<3><0><default><default>
lcdd20 = port:PD20<2><0><default><default>
lcdd21 = port:PD21<2><0><default><default>
lcdd22 = port:PD22<2><0><default><default>
lcdd23 = port:PD23<2><0><default><default>
lcdclk = port:PD24<2><0><default><default>
lcdde = port:PD25<2><0><default><default>
lcdhsync = port:PD26<2><0><default><default>
lcdvsync = port:PD27<2><0><default><default>
;----------------------------------------------------------------------------------
[lcd1_para]
lcd_used = 0
lcd_x = 1024
lcd_y = 600
lcd_width = 0
lcd_height = 0
lcd_dclk_freq = 52
lcd_pwm_not_used = 0
lcd_pwm_ch = 0
lcd_pwm_freq = 10000
lcd_pwm_pol = 0
lcd_if = 3
lcd_hbp = 320
lcd_ht = 1344
lcd_vbp = 35
lcd_vt = 1270
lcd_vspw = 10
lcd_hspw = 10
lcd_hv_if = 0
lcd_hv_smode = 0
lcd_hv_s888_if = 0
lcd_hv_syuv_if = 0
lcd_lvds_ch = 0
lcd_lvds_mode = 0
lcd_lvds_bitwidth = 1
lcd_lvds_io_cross = 0
lcd_cpu_if = 0
lcd_frm = 1
lcd_io_cfg0 = 0x10000000
lcd_gamma_correction_en = 0
lcd_gamma_tbl_0 = 0x00000000
lcd_gamma_tbl_1 = 0x00010101
lcd_gamma_tbl_255 = 0x00ffffff
lcd_bl_en_used = 0
lcd_bl_en =
lcd_power_used = 0
lcd_power =
lcd_pwm_used = 1
lcd_pwm = port:PI03<2><0><default><default>
lcd_gpio_0 =
lcd_gpio_1 =
lcd_gpio_2 =
lcd_gpio_3 =
lcdd0 = port:PH00<2><0><default><default>
lcdd1 = port:PH01<2><0><default><default>
lcdd2 = port:PH02<2><0><default><default>
lcdd3 = port:PH03<2><0><default><default>
lcdd4 = port:PH04<2><0><default><default>
lcdd5 = port:PH05<2><0><default><default>
lcdd6 = port:PH06<2><0><default><default>
lcdd7 = port:PH07<2><0><default><default>
lcdd8 = port:PH08<2><0><default><default>
lcdd9 = port:PH09<2><0><default><default>
lcdd10 = port:PH10<2><0><default><default>
lcdd11 = port:PH11<2><0><default><default>
lcdd12 = port:PH12<2><0><default><default>
lcdd13 = port:PH13<2><0><default><default>
lcdd14 = port:PH14<2><0><default><default>
lcdd15 = port:PH15<2><0><default><default>
lcdd16 = port:PH16<2><0><default><default>
lcdd17 = port:PH17<2><0><default><default>
lcdd18 = port:PH18<2><0><default><default>
lcdd19 = port:PH19<2><0><default><default>
lcdd20 = port:PH20<2><0><default><default>
lcdd21 = port:PH21<2><0><default><default>
lcdd22 = port:PH22<2><0><default><default>
lcdd23 = port:PH23<2><0><default><default>
lcdclk = port:PH24<2><0><default><default>
lcdde = port:PH25<2><0><default><default>
lcdhsync = port:PH26<2><0><default><default>
lcdvsync = port:PH27<2><0><default><default>
;-------------------------------------------------------------------------------
[tv_out_dac_para]
dac_used = 1
dac0_src = 4
dac1_src = 5
dac2_src = 6
dac3_src = 0
;----------------------------------------------------------------------------------
[hdmi_para]
hdmi_used = 0
hdcp_enable = 0
After modifying SystemServer.java and recompiling of Android OS LVDS works well.