This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[AM335x/SGX] SGX driver

Guru 24520 points
Other Parts Discussed in Thread: DA8XX

Hi community member,

Please provide some advice for SGX driver.

Now customer would like to use the SGX and upgrade the resolution from 800x480 to 1600x480 by using following command.

fbset -xres 1600 -yres 480

However, the resolution did not change. Thus, how I set the frame buffer by suing SGX?

If you have any question and more information, please let me know.

Best regards.

Kaka

  • Hi Kato-san,

    What Linux version is your customer using?

  • Hi Biser,
    I forgot to tell you about the environment.
    They used SDK version 6.0.0. Thus, the Linux version is 3.2.

    Best regards.
    Kaka
  • I suppose your frame buffer cannot allocate enough contiguous memory for this display size. Check this post for solving this: e2e.ti.com/.../189862.aspx

  • Hi Biser,

    Thank you for your support.

    If change the resolution, is the following command enough to change?
    fbset -xres 1600 -yres 480
    Is it an possibility that argument of fbset is not enough?

    In case of Stater KIT, the maximum resolution was 480 x 576.

    root@am335x-evm:/etc/init.d# fbset -xres 600 -yres 600
    root@am335x-evm:/etc/init.d# fbset -i
    mode "480x576-28"
    # D: 9.091 MHz, H: 16.992 kHz, V: 28.227 Hz
    geometry 480 576 480 576 32
    timings 110000 43 8 12 4 4 10
    rgba 8/16,8/8,8/0,8/24
    endmode

    Frame buffer device information:
    Name : DA8xx FB Drv
    Address : 0x8f400000
    Size : 1105920
    Type : PACKED PIXELS
    Visual : TRUECOLOR
    XPanStep : 0
    YPanStep : 1
    YWrapStep : 0
    LineLength : 1920
    Accelerator : No
    root@am335x-evm:/etc/init.d#

    It seems that xres could not increase from 480.
    What is the cause of this problem?

     * In case of yres, this can not be increased from 576.

    Regarding this to result, "Accelerator" is "No".
    Is this mean that SGX is not active?

    If you have any questions, please let me know.
    Best regards.
    Kaka

  • Hi ,

    If you saw the above link, please see all the options of fbset in a:
    linux.about.com/.../blcmdl8_fbset.htm or fbset -h
    See also the /etc/fb.modes file. This file contain all available video mode also as options -i.

    BR
    Ivan
  • Hi Ivan,

    Thank you for your replay.
    I understand the argument of fbset.
    Would you please provide your answer for my questions?

    ***************************************************
    In case of Stater KIT, the maximum resolution was 480 x 576.
    ------------------------------------
    root@am335x-evm:/etc/init.d# fbset -xres 600 -yres 600
    root@am335x-evm:/etc/init.d# fbset -i
    mode "480x576-28"
    # D: 9.091 MHz, H: 16.992 kHz, V: 28.227 Hz
    geometry 480 576 480 576 32
    timings 110000 43 8 12 4 4 10
    rgba 8/16,8/8,8/0,8/24
    endmode

    Frame buffer device information:
    Name : DA8xx FB Drv
    Address : 0x8f400000
    Size : 1105920
    Type : PACKED PIXELS
    Visual : TRUECOLOR
    XPanStep : 0
    YPanStep : 1
    YWrapStep : 0
    LineLength : 1920
    Accelerator : No
    root@am335x-evm:/etc/init.d#
    ------------------------------------
    It seems that xres could not increase from 480.
    What is the cause of this problem?
    * In case of yres, this can not be increased from 576.

    Regarding this to result, "Accelerator" is "No".
    Is this mean that SGX is not active?
    ***************************************************

    If you have any questions, please let me know.
    Best regards.
    Kaka
  • Please post how much memory you have allocated for the framebuffer. Note that Linux allocates 4MB by default, which is insufficient for large resolution displays. The calculation for the necessary framebuffer size is:

    FB size = H pixels * V pixels * 2 *4

  • Hi Biser,

    Thank you for your response.
    I could change the resolution from 800x480 to 1600x 480 by following the description.

    processors.wiki.ti.com/.../SGXDbg;tisearch=Search-EN#Changing_the_display_resolution_run_time

    By the way, would you please explain detail for the calculation of FB size?
    What is 2 and 4 on your formula?

    Best regards.
    Kaka
  • 2 is the number of frame buffers. Linux uses two frame buffers ping-ponging between them. 4 is bytes per pixel that are required for 24-bit RGB output, Linux uses 32-bit RGB.

  • Hi Biser,
    Thank you for your explanation.
    This answer is cleared up my questions.

    Best regards.
    Kaka