VGA Resolution

Started by aquarat, November 04, 2012, 08:59:55 PM

Previous topic - Next topic

aquarat

I'm sorry if this is very n00b, but how do I change the resolution on the Android installation (for VGA) ? Do I modify the fex/bin file ? And how do I change the VGA resolution on debian ? same method ?

Thanks

murerten

Yes. For android you can change it from fex file. There are entries in it about timings and resolution. You can check the a13-olinuxino datasheet from product page. But as a side note there are some limitations about the resolution. For example max resolution is 800x600 I think. For debian I don't know, I didn't try it.

LubOlimex

It is not as easy as writing desired height and desired width since the A13 chip is designed for only 800x480 resolution. There are number of parameters you will have to edit and some to calculate in the Android configuration files. You can check the 800x600 config file here: https://docs.google.com/open?id=0B7WHuNCASY8caVRlV29GdUVPX3M

The part that you have to edit is:

;----------------------------------------------------------------------------------
;lcd0 configuration

;lcd_dclk_freq:      in MHZ unit
;lcd_pwm_freq:       in HZ unit
;lcd_if:             0:hv(sync+de); 1:8080; 2:ttl; 3:lvds
;lcd_hbp:            hsync back porch
;lcd_ht:             hsync total cycle
;lcd_vbp:            vsync back porch
;lcd_vt:             vysnc total cycle *2
;lcd_hv_if:          0:hv parallel 1:hv serial
;lcd_hv_smode:       0:RGB888 1:CCIR656
;lcd_hv_s888_if      serial RGB format
;lcd_hv_syuv_if:     serial YUV format
;lcd_hv_hspw:        hsync plus width
;lcd_hv_vspw:        vysnc plus width
;lcd_lvds_ch:      0:single channel; 1:dual channel
;lcd_lvds_mode:      0:NS mode; 1:JEIDA mode
;lcd_lvds_bitwidth:  0:24bit; 1:18bit
;lcd_lvds_io_cross:  0:normal; 1:pn cross
;lcd_cpu_if:         0:18bit; 1:16bit mode0; 2:16bit mode1; 3:16bit mode2; 4:16bit mode3; 5:9bit; 6:8bit 256K; 7:8bit 65K
;lcd_frm:            0:disable; 1:enable rgb666 dither; 2:enable rgb656 dither

;lcd_gpio_0:         SCL
;lcd_gpio_1          SDA
;----------------------------------------------------------------------------------

[lcd0_para]
lcd_used                 = 1

lcd_x                    = 800
lcd_y                    = 600
lcd_dclk_freq            = 40
lcd_pwm_not_used         = 0
lcd_pwm_ch               = 0
lcd_pwm_freq             = 10000
lcd_pwm_pol              = 0
lcd_if                   = 0
lcd_hbp                  = 216
lcd_ht                   = 1056
lcd_vbp                  = 23
lcd_vt                   = 1256
lcd_hv_if                = 0
lcd_hv_smode             = 0
lcd_hv_s888_if           = 0
lcd_hv_syuv_if           = 0
lcd_hv_vspw              = 4
lcd_hv_hspw              = 128
lcd_lvds_ch              = 0
lcd_lvds_mode            = 0
lcd_lvds_bitwidth        = 0
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



Regards,
Lub
Technical support and documentation manager at Olimex

aquarat


Anunakin

Where is and how change .fex file?

aquarat

The script.bin file contains parameters in a weird format. You use a tool called bin2fex to convert the script.bin file to a text file like so :

./bin2fex script.bin >> output.fex

and back into a bin file :

./fex2bin output.fex >> script.bin

The tools can be acquired by executing :
git clone https://github.com/linux-sunxi/sunxi-tools.git
and then running "make" in the new directory.

The compile may fail with some missing dependencies (in my case it was libusb) but the bin2fex/etc. apps were still complete.

The CPU is configured for 1008 MHz but I've found references to 1104 MHz. Arbitrary frequencies supported ?

iso9660

#6
Quote from: LubOlimex on November 07, 2012, 04:20:10 PM
It is not as easy as writing desired height and desired width since the A13 chip is designed for only 800x480 resolution.

Does it mean that when Debian boots in 800x600 (VGA output) resolution it's actually stretching the framebuffer?
Is it really impossible to set a 1280x720 screen resolution in the VGA output for example?
Would it be possible to change the amount of memory the Mali GPU takes to for example 16Mb?

murerten

Yes it streches. It is not possible with this processor. But it is possible with A10 as it has its own vga controller separate from the lcd controller.

onefang

Yes I'm resurrecting an ancient topic.  Now that the VGA can be set to 1024x768 as well as 800x600, I'd like to see some confirmation that the A13-OLinuXino isn't really doing those resolutions, but stretching them as murerten said.  If it's stretching 800x480 to 800x600, what is it stretching to get to 1024x768?

It's not looking so good on my big wide screen LCD monitor at either resolution, I hope it can be made to look better on the actual monitors my device will be running with.  Any 4x3 aspect ratio from 640x480 and up will work for my application.