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.

TI Sitara SK - Change Vertcal & Horizontal Sync Signals

I would like to know how to change the Vertical and Horizontal Sync signal on an embedded Linux device.

  1. What are source files that I need to modify and where in the SDK can I find these files.
  2. How can I create a loadable module?
  3. Do I have to cross-compile the code? if so what is the command set

Development Hardware Platforms:

TI Sitara am335x Starter kit with Android JB loaded

Development Software Platform

  • Ubuntu 12.04 LTS
  • Windows 7 host with a Ubuntu 12.04 LTS installed on Virtualbox

I am relatively new to embedded Linux and greatly appreciate your assistance

Thank you in advance

  • Hi,

    The LCDC config is located inside <linux_folder>/arch/arm/mach-omap2/board-am335xevm.c:

    static struct lcd_ctrl_config lcd_cfg = {
        &disp_panel,
        .ac_bias        = 255,
        .ac_bias_intrpt        = 0,
        .dma_burst_sz        = 16,
        .bpp            = 32,
        .fdd            = 0x80,
        .tft_alt_mode        = 0,
        .stn_565_mode        = 0,
        .mono_8bit_mode        = 0,
        .invert_line_clock    = 1,
        .invert_frm_clock    = 1,
        .sync_edge        = 0,
        .sync_ctrl        = 1,
        .raster_order        = 0,
    };

    The line clock is the HSYNC and the frame clock is the VSYNC (please refer to section 13. LCD Controller from the TRM).

    The cross-compilation toolchain is included in the SDK you have downloaded. Information about building a kernel module can be found on the internet. I suggest reading Linux Device Drivers 3rd Edition.

    P.S. Actually I'm not sure if the file structures for the Android and Linux sources are the same, so if you are not able to find the file and configuration I suggested, please ask your question in the Android forum: http://e2e.ti.com/support/embedded/android/f/509.aspx

    Best regards,
    Miroslav

  • Miroslav,

    Thank you for the feedback, I made some good progress. In have more questions. 

    1. board-am335xevm.c has an lcdc_init function that invoked by evm_sk_dev_cfg which does the pin_mux etc. Can you tell me where I can find am33xx_register_lcdc function. 
    2. Also found the da8xx-fb.c file is also used. Can you tell me which of the TI Sitara SK files calls the function in this file.
    Overall do you know if any document or any other reference that describes the follow of the LCD function calls.
    Thank you
  • Hi,

    The am33xx_register_lcdc() function is located inside <linux_folder>/arch/arm/mach-omap2/devices.c.

    Regarding the LCD initialization, please read this post: http://e2e.ti.com/support/arm/sitara_arm/f/791/p/249810/876236.aspx#876236

    I'd also suggest using an IDE with an indexer in order to be able to track your code faster and easier.

    Best regards,
    Miroslav