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.

GLCD AND CLCD of L137

Other Parts Discussed in Thread: OMAP-L137, DA8XX, OMAP-L138

I want to test GLCD and CLCD of OMAP-L137 according the document lsp_2.20_drivers_data_sheet.pdf.

I found da8xx_fb.o and lcd_drv.o were refered in that document. But I can't find them in the PSP_02_20_00_05. Who can supply them to me and give me some duide to test these two modules.

  • I've only used GLCD but believe the files you are looking for are in the LSP (LSP_02_20_00_05.tar.gz.)  at: \linux-2.6.18_pro500\drivers\video\da8xx

  • Many thanks to you.

    I found those files, but they are driver files. Do you have the test example on ARM? I want to test GLCD and CLCD.

  • For GLCD I used the Xwindows "startx" application that is in the target filesystem available on the SDK:

    http://tiexpressdsp.com/index.php?title=Setting_up_OMAP-L137_Target_File_System

     

  • Hi,

    Please find the webex presentations on GLCD,CLCD i had given at the link below-

    Presentation content-

    http://wiki.davincidsp.com/index.php?title=Omapl137_linux_lcd_driver

    Webex recordings-

    http://wiki.davincidsp.com/index.php?title=OMAPL1_PSP_WebEx_Presentations

    This presentation covers the GLCD,CLCD overview,software architecture with driver overview,supported features,building the drivers as part of kernel image(menuconfig options to be enabled) and some tests/demos that we can do either using some open source tools available like fbtest(http://wiki.davincidsp.com/index.php?title=Fbtest) or through simple command line based tests or by using any custom test applications. I have also provided some details on how a custom test application can be written(the typical application flow) in the presentation.

    I am also attaching some custom test applcations for your reference.

    Thanks,

    Prathap.

     

     

    clcd_test.zip
  • Attaching the glcd custom test application as well.

    Thanks,

    Prathap.

    glcd_test.zip
  • With all your help, the GLCD and CLCD have been tested on our AVST_OMAPL137_EVM.

    The GLCD is showed on http://www.avsolutiontech.com/bbs/showtopic-154.aspx

    The CLCD is showed on http://www.avsolutiontech.com/bbs/showtopic-157.aspx

    They are tested OK last Wednesday. I am so sorry to share this news with you all so lately.

     

    Thank you agin.


  • HI Prathap,

    I wanted to asked you if you are familiar with any application to

    convert any jpeg or BMP image to a HEX 16bpp array as the ones used

    on GLCD_TEST.H .

      I found one at http://www.coranac.com/category/proj/grit/ but the color scheme is not the

    same as with the LCD controller.

      Any help on this regard is highly appreciated.

     

    Thanks

  • Hi

        When I run this demo(glcdtest), some functions run well, ie. the 3,4,5, but others run wrong, ie. 2, and the option 1 run well one time but will run wrong while retry another time. Have some one met this? And could you told me how to resolve it.

        By the way, the startx runs well. 

  • Hello: I am trying to run the clcd and glcd test code provided by Prathap Srinivas from the e2e post
    http://e2e.ti.com/support/dsp/omap_applications_processors/f/42/p/30087/104867.aspx#104867

    I have managed to compile clcd_test but when I run it, I found I am missing the /dev/lcd_da8xx driver in the target root file system.

    I have looked for the driver on my host environment and all I can find is the source code to build it at /home/<user>/tidavinci/linux-2.6.18_pro500/drivers/char/da8xx_lcd.
    If I attempt to build it using the Makefile in that directory it gives me errors
    user@ubuntu:~/ti-davinci/linux-2.6.18_pro500/drivers/char/da8xx_lcd$ make
    cc    -c -o lcd_drv.o lcd_drv.c
    lcd_drv.c:35: fatal error: linux/config.h: No such file or directory
    compilation terminated.
    make: *** [lcd_drv.o] Error 1

    Can someone advise
    1) How to compile it?
    and  / or
    2) Where to get the complied drivers I am missing?

    Note:

    I have not tried to build or run the glcd but I will need to find or build the driver for fb.


    I am also going to have a similar problem with the eQEP example from
    http://processors.wiki.ti.com/index.php/Omapl137_linux_eqep_driver
    will need
    /dev/input/event0  and
    /sys/devices/platform/eqep

    Thanks

  • Yo should go to this address and check the procedure to include the drivers that you need (fb and eqep)

    the instructions on the page are for the community linux and not for the montavista distribution which I presume

    you are running, anyway the procedure is very similar . For other reference and step by step intructions you should consult:

    http://processors.wiki.ti.com/index.php/Category:OMAPL1

  • Yes.
    The Driver configuration in the Linux kernel section was set up as described for LCD etc...
    The Kernel has been rebuilt, uImage, and put in the tftpboot folder.
    as per http://processors.wiki.ti.com/index.php/MontaVista_Linux_PSP_for_OMAP-L137
    section Building a New Linux Kernel.
    The Kernel modules have been, rebuilt and  loaded into the <root fs path>.

    In the <root fs path>,  In my case /home/user/workdir/filesys/
    there is no file in /home/user/workdir/filesys/dev called
    lcd_da8xx, which clcd_test.c is trying to open in the lcd_open function.

    This is my problem...
    Where should lcd_da8xx come from...? Where do I get it?
    Should it have been generated in the Kernel Build?
    Should it have been generated in the modules build???
    Did something go wrong in the Kernel build..? I saw no error's.
    The modules build? I saw no errors?
    Where?

    Thanks Brian

  • Brian,

     Could you upload in a .txt file  the output of your terminal window thru the whole process, maybe I can find what's wrong.

    Also,  what distribution are you using in your host machine?, Ubuntu?

  • Yes Ubuntu 10.10 in Vmware Player

    Are you looking for the output of the kernel build and the module build.  That is going to be ONE HUGE file !

    Also not sure how I capture all that in my machine.

    Thanks

    Brian

     

  • So is the file lcd_da8xx generated by the act of building the kernel ?

    If so how would it get put in the target file system?

    Is the file lcd_da8xx generated by the act of building the Modules?

    I did not think it was shown / selectable as a module on Graphical LCD and Character LCD menuconfig from

    http://processors.wiki.ti.com/index.php/GSG:_Building_Software_Components_for_OMAP-L1/AM1x

    If that is the case then I can see how it would get placed in the target file system. by Installing Modules to Target File System as shown in

    http://processors.wiki.ti.com/index.php/Building_the_OMAP-L137_Linux_Kernel

    Thanks Brian

  • That´s right when you build the kernel all the kernel modules are also built but the .ko files are placed in their

    correspondig directories in the source code folder, when you do "make modules_install" these files are

    moved to their correspondig directories in your file system. You need to make sure that the drivers for the LCD

    are compiled into the kernel image and not as a loadable module in which case you would need additional procedures

    to run the driver. To verify this during the menuconfig configuration of the kernel  check if the drivers are selected

    with <*> and not with <M> the M means a loadable module.

  • Hi Haroldo Thanks for you're very speedy response !   I'm going to rephrase the question a little differently please bear with me.

    1) Do you have a file (any ware, possibly under a /dev/ directory) on you're file system called fb or a file called lcd_da8xx ?

    2) If you do, how did it get there?

    Thanks

     

  • Sorry for the delay, but I had to dig up some work from a few months ago.  But I do see the /dev/fb ONLY when the actual HW is actually attached. 

    In my case, I followed the menuconfig instructions here for framebuffer here:

    http://processors.wiki.ti.com/index.php/GSG:_Building_Software_Components_for_OMAP-L1/AM1x#Graphical_LCD

    And then had the DA830 EVM UI card mentioned here ( for this DaVinci_PSP_03.20.00.11 version of Linux) attached:

    http://processors.wiki.ti.com/index.php/DaVinci_PSP_03.20.00.11_Device_Driver_Features_and_Performance_Guide#Graphical_LCD_.28GLCD.29_Driver

    I even see the same results with the DVI adaptor (you can get on Digikey) mentioned here:

    http://processors.wiki.ti.com/index.php/Arago_build_recipe_for_OMAPL1#LCDC_Driver

    http://processors.wiki.ti.com/index.php/OMAP-L1x_VGA#LCD_to_DVI

    In all cases with the right uImage kernal and HW attached you will get see /dev/fb (and even a login screen on the display).  With no HW attached, no /dev/fb. 

    I was never able to make a single uImage that would work with both DA830 EVM UI card and DVI adaptor

    Full "ls" below:

    root@arago:/dev# ls
    XOR                 sda1                tty44
    bus                 sg0                 tty45
    console             shm                 tty46
    cpu_dma_latency     snd                 tty47
    disk                tty                 tty48
    fb                  tty0                tty49
    fb0                 tty1                tty5
    full                tty10               tty50
    i2c-1               tty11               tty51
    initctl             tty12               tty52
    kmem                tty13               tty53
    kmsg                tty14               tty54
    log                 tty15               tty55
    mem                 tty16               tty56
    mmcblk0             tty17               tty57
    mmcblk0p1           tty18               tty58
    mtd0                tty19               tty59
    mtd0ro              tty2                tty6
    mtd1                tty20               tty60
    mtd1ro              tty21               tty61
    mtd2                tty22               tty62
    mtd2ro              tty23               tty63
    mtdblock0           tty24               tty7
    mtdblock1           tty25               tty8
    mtdblock2           tty26               tty9
    network_latency     tty27               ttyS0
    network_throughput  tty28               ttyS1
    null                tty29               ttyS2
    ptmx                tty3                ttyp0
    pts                 tty30               ttyp1
    ptyp0               tty31               ttyp2
    ptyp1               tty32               ttyp3
    ptyp2               tty33               ttyp4
    ptyp3               tty34               ttyp5
    ptyp4               tty35               ttyp6
    ptyp5               tty36               ttyp7
    ptyp6               tty37               udev_network_queue
    ptyp7               tty38               urandom
    ram0                tty39               vcs
    ramdisk             tty4                vcs1
    random              tty40               vcsa
    rtc                 tty41               vcsa1
    rtc0                tty42               watchdog
    sda                 tty43               zero

     

  • Brian,

     Right now we are using the community linux and not the montavista version, anyway here´s what we have in our file system:

    We see /dev/fb0 whenever the LCD is connected just like Joe_G, if is not connected the filesystem does not show it. You have to take into account that the OS

    loads several devices during booting which depend of the hardware and the drivers installed.

     I think that perhaps you should look in your source code folder for: "/linux-ver.subver.xx/arch/arm/mach-davinci/board-da830-evm.o"

    also "/linux-ver.subver.xx/arch/arm/mach-davinci/devices-da8xx.o" these files are platform specific and load those devices found in the LCD board.

    As I said before we are not using the montavista distribution but in that folder you should have something similar, I hope this helps.

     

     

  • Thanks Joe:

    I think maybe my real problem may be I'm on a "outdated" PSP . ?
    I'm using PSP_02_20_00_07.
    I have OMAP-L137 Spectrum Digital EVM REV D, and trying to talk to a Spectrum Digital DA830 User Interface module LCD..

    1. Does the PSP / contain / or generate the files as shown in you're /dev# ls listing ?

    2. Or does the act of selecting the items in the Graphical LCD menuconfig for the kernel and then building the kernel genreate the files seen in
    /dev# ls ? 

    3. If nether of the above is true, then where do the files shown in you're /dev# ls come from ?

    Hear is my root dev# ls

    root@ubuntu:/dev# ls
    agpgart          ecryptfs  fd0u720  loop4               pktcdvd  ram2    sda       tty0   tty21  tty34  tty47  tty6     usbmon0  vcsa4
    autofs           fd        fd0u800  loop5               port     ram3    sda1      tty1   tty22  tty35  tty48  tty60    usbmon1  vcsa5
    block            fd0       fd0u820  loop6               ppp      ram4    sda2      tty10  tty23  tty36  tty49  tty61    vcs      vcsa6
    bsg              fd0u1040  fd0u830  loop7               psaux    ram5    sda5      tty11  tty24  tty37  tty5   tty62    vcs1     vcsa7
    btrfs-control    fd0u1120  full     lp0                 ptmx     ram6    sg0       tty12  tty25  tty38  tty50  tty63    vcs2     vga_arbiter
    bus              fd0u1440  fuse     mapper              pts      ram7    sg1       tty13  tty26  tty39  tty51  tty7     vcs3     vmci
    cdrom            fd0u1600  hpet     mcelog              ram0     ram8    shm       tty14  tty27  tty4   tty52  tty8     vcs4     vsock
    char             fd0u1680  input    mem                 ram1     ram9    snapshot  tty15  tty28  tty40  tty53  tty9     vcs5     zero
    console          fd0u1722  kmsg     net                 ram10    random  snd       tty16  tty29  tty41  tty54  ttyS0    vcs6
    core             fd0u1743  log      network_latency     ram11    rfkill  sr0       tty17  tty3   tty42  tty55  ttyS1    vcs7
    cpu              fd0u1760  loop0    network_throughput  ram12    root    stderr    tty18  tty30  tty43  tty56  ttyS2    vcsa
    cpu_dma_latency  fd0u1840  loop1    null                ram13    rtc     stdin     tty19  tty31  tty44  tty57  ttyS3    vcsa1
    disk             fd0u1920  loop2    oldmem              ram14    rtc0    stdout    tty2   tty32  tty45  tty58  uinput   vcsa2
    dvd              fd0u360   loop3    parport0            ram15    scd0    tty       tty20  tty33  tty46  tty59  urandom  vcsa3

    As you can see no fb

    Thanks again go for you're "timely" response.
    Brian

  • I'm definitely more of a Linux user than developer, but I think your #2 above is correct. 

    Please note that with the HW you mention above, you should be able to migrate to the Community Linux PSP starting from here: http://processors.wiki.ti.com/index.php/Community_Linux_PSP_for_OMAP-L1#PSP_Overview

     

  • Thanks Haroldo and Joe.
    I think that perhaps what Heroldo is saying (if I got this right)
    When you do selecting the items in the Graphical LCD menuconfig for the kernel and then building the kernel...

    1. When the kernel is being booted it goes out and looks for the hardware and if found it puts a driver in this case
    fb and fb0 in the  dev file system of the kernel.

    Is this correct ?

    Haroldo  I'm not sure what you want me to look at there...
    Do you want me to be sure they "exist" or ?

    Thanks... I thing I'm starting to understand... as you say Joe I am NEW user not developer... for sure..

  • Yes Brian,

      You should check if those files or others with a similar name are at the mentioned directory.

    There are various types of drivers, the drivers of the LCD screen are platform drivers and are loaded  and declared in a diferent way.

    In those files the option of the menuconfig setup for the screen is evaluated and if true an instance of the LCD driver is created.

    Anyway I think that downloading the latest PSK and downloading a LCD ready uImage file would be a faster way to figure out what is wrong.

  • Thanks Haroldo

    Did yo mean PSP for PSK or ?

    Do you know where I can find

    "the latest PSK and downloading a LCD ready uImage file"

    on the TI site... I sometimes get lost finding what I need Thanks Again

    Brian


  • Hi Brian,

     it was a typo I meant PSP, you can find the latest here:

    http://software-dl.ti.com/dsps/dsps_public_sw/sdo_tii/psp/LinuxPSP/DaVinci_03_20/index.html

    Inside the PSP there should be an uImage that is ready to support the LCD screen, to make your own

    kernel image you need a toolchain you could use codesourcery as I think Joe Suggested in the previous post

    if you need to change your filesystem and include or discard applications you should check the Arago project

    at:

    http://arago-project.org/wiki/index.php/Main_Page

     

     

  • As I understand it there is no OFFICIAL SDK for using Community Linux PSP for DA8x/OMAP-L1/AM1x (specifically with OMAP-L137 EVM).
    Yes, as Joe G. said
    > you should be able to migrate to the Community Linux PSP
    However as I understand, (and I could be wrong) that when attempting to make DSPBIOS/link work (specifically with OMAP-L137 EVM), there may be issues.

    One clue to this is shown hear... 
    http://processors.wiki.ti.com/index.php/Building_The_OMAP-L1_SDK
    Prerequisites
    For OMAP-L137
        * MV Tools installed
    For OMAP-L138
        * Code Sourcery tools installed
    i.e. (specifically with OMAP-L137 EVM) they are calling for MV tools not Community tools...  ??

    So, again as I understand I may be able to migrate and get the LCD to work, but I may have significant issues
    (specifically with OMAP-L137 EVM)getting DSPBIOS/link working...
    Comments suggestions, etc...
    Thanks

  • >>no OFFICIAL SDK for using Community Linux PSP for DA8x/OMAP-L1/AM1x

    Sorry if I am misuderstanding something here, but the DaVinci_03_20 link above IS the official SDK distributed by TI.   

     I'm personally using DaVinci-PSP-SDK 03.20.00.11 only because of some of the code that is running on the DSP.  And the LCD worked out of the box (got a login screen on it) and I even followed some of the WIki instructions to get Qt working and modify the demo slideshow. You can read the release notes on each version to see what is updated.

    I have not actually used DSPLINK with the Community Linux distribution, but know of others (with similar DSP code) who have and have heard no complaints.

    Sorry,  but there are a lot of articles on the Wiki pages (especially OMAP-L137 that was one of the earlier parts with LOTS of flexibility and history) that overlap and probalbly needs some cleaning up.  

     Also before downloading, there is a nice link here that shows generic PSP-SDK requirements and supported processors:

    http://processors.wiki.ti.com/index.php/Community_Linux_PSP_for_DA8x/OMAP-L1/AM1x#PSP_Overview

     

  • Thanks Joe I think I understand.

    Trying to upgrade and have a ?

    I'm looking at

    http://processors.wiki.ti.com/index.php/GSG:_Setting_up_OMAP-L1/AM1x_Target_File_System

    Under
    Exporting a Shared File System for Target Access
    step
    4. Perform the following commands to create a copy of the target file system with permissions set for writing to the shared area as
    there is a note that says
    For PSP versions 3.20.00.11 or later, the file system needs to be downloaded sepeartely from the product download page into a temporary directory, such as /tmp. After downloading, use the following commands:
    the product download page leads to
    http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/sdk/omap_l138/1_00/latest/index_FDS.html

    This all appears to be for OMAP-L138 but Im using OMAP-L137...
    Is there a different page I should go to or ??


    Thanks

  • I've used that filesystem (on an SD card) successfully on both OMAP-L137 and OMAP-L138 EVM's: arago-demo-image-da850-omapl138-evm.tar.gz

    But I recently found arago-demo-image-glibc-ipk-2009.11-da830-omapl137-evm.rootfs.tar somewhere, but presently don't have access to my Linux box to tell you exactly where I got it from.