Go to previous topic
Go to next topic
Last Post 11 Mar 2008 12:29 PM by  Badguy
Linux DirectFb Support for ZOOM Display Kit
 5 Replies
Author Messages
bclxquest
New Member
New Member
Posts:


--
16 Nov 2007 02:26 PM
    Fri Nov 16 13:52:18 2007, beattyconsulting wrote this question:

    I am using the i.MX31LITEKIT with a ZOOM Display Kit (VGA 640x480 Display).

    I am looking for the fb.modes Linux DirectFb configuration file for the ZOOM Display kit. If anybody has any ideas where I can find it, the help would be much appreciated. I am looking at the LogicPd and Freescale sites for it but have not had any luck so far. I'm also looking via Google for all reference information.

    Thanks BeattyConsulting

    jonathankaufmann@gmail.com
    New Member
    New Member
    Posts:


    --
    17 Nov 2007 12:37 PM
    I'm not exactly sure what the fb.modes file is for (I'm guessing it stores structures about the supported modes of the screen), but I think all the framebuffer supported modes (i.e. clock, vsync, hsync, polarity, timing, resolution, etc.) are actually stored in a structure and compiled into the kernel. Look somewhere in arch/arm/mach-mx3/ for it. In the mxc_lite.c file (or similar) in that folder there is a string that says which mode will be used. At the end of the ~5 page linux thread on this forum there is also a lot of talk about LCDs.
    phil.ecad@internode.on.net
    New Member
    New Member
    Posts:


    --
    18 Nov 2007 10:34 PM
    I'm using the QVGA20 display. I got it working properly by modifying drivers/video/mxc/mxcfb_modedb.c
    You should find what you need for your display in that directory.
    bclxquest
    New Member
    New Member
    Posts:


    --
    20 Nov 2007 11:32 AM
    I have explored my build environment (WindRiver Distribution using the Freescale IMX31LITEKIT BSP) and the mx31lite.c file (board initialization file) in the arch/arm/mach-mx3 directory has no reference to initializing the LCD controller in the I.MX31 processor. Also I have checked the forum and I am not sure which ~5 page discussion thread talks about LCD's? I checked a number of threads but am still not sure which one would be most helpful to me. I also looked at my drivers/video/mxc directory and I don't find a mxcfb_modedb.c file. I have mxcfb ... .c files but none of them seem to refer to my 640x480 VGA display. When I open my DirectFb object I get the following information from it :

    (*) DirectFB/Config: Parsing config file '/etc/directfbrc'.
    Now trying to open DirectFB object

    ---------------------- DirectFB v0.9.25 ---------------------
    (c) 2000-2002 convergence integrated media GmbH
    (c) 2002-2004 convergence GmbH
    -----------------------------------------------------------

    (*) DirectFB/Core: Single Application Core. (2007-04-20 03:20)
    (*) DirectFB/Graphics: Generic Software Rasterizer 0.6 (convergence integrated m
    edia GmbH)
    (*) DirectFB/Core/WM: Default 0.2 (Convergence GmbH)
    (!!!) *** UNIMPLEMENTED [fusion_reactor_set_lock] *** [reactor.c:853]

    These are my programs printouts to show some parameters of the DirectFb object (I had set to Image Width = 640 , Image Height = 240 and Bits Per Pixel to 16 in my own fb.modes file)

    Image Width = 640
    Image Height = 240
    Name = Software Rasterizer
    Vendor = Generic
    Video Memory Size = 614400
    Graphics Driver Info Major = 0
    Graphics Driver Info Minor = 6
    Graphics Driver Info Name = Software Driver
    Graphics Driver Info Vendor = convergence integrated media GmbH

    My questions are :

    1) Is the Graphics Device (Name and Vendor Listed Below) what I should expect if my system has properly linked in the Graphics Drivers from the Freescale BSP for the IMX31LITEKIT)?

    Name = Software Rasterizer
    Vendor = Generic

    2) Which configuration file or kernel configuration parameter determines which mxcfb.c file is compiled in the kernel for the graphics driver configuration?

    I am trying to setup a dialog with Freescale so I understand the graphics driver configuration process needed to get my 640x480 VGA display going.

    Thanks for any feedback,
    Beatty Consulting



    titinger@digigram.com
    New Member
    New Member
    Posts:


    --
    25 Jan 2008 08:08 AM
    Hello,

    I'm trying to get my DisplayKit to work on the imx31liteKit.

    in LoLo, it initializes ok and display the test pattern with :

    video-open 3 16
    draw-test

    But once in linux, eventhough the mcxfb driver seems to initialise, and fbset runs OK, I can't see anything changing on the LCD when I run the DirectFB bench or even if write to the various /dev/fb devices. any help would be much appreciated.

    I have "console=fbcon console=ttymxc0" set on the command line.

    LCD support and Synchronous display support are checked in the kernel config.

    during boot time, i can see the following traces :

    mxc_ipu mxc_ipu: Channel already uninitialized 14
    Console: switching to colour frame buffer device 30x40
    mxc_ipu mxc_ipu: Channel already uninitialized 15
    mxc_sdc_fb mxc_sdc_fb.0: mxcfb: fb registered, using mode Sharp-QVGA

    fbset show the following fb.mode :

    mx31# fbset
    mode "240x320-60"
    geometry 240 320 240 640 16
    timings 185925 9 16 7 9 1 1
    accel false
    rgba 5/11,6/5,5/0,0/0
    endmode


    Thanks for any suggestion,

    Marc.
    Badguy
    New Member
    New Member
    Posts:


    --
    11 Mar 2008 12:29 PM
    bclxquest:

    there is currently not a iMX accelerated driver for DirectFB, so that is correct. software fallbacks.

    you can verify your framebuffer is available in the kernel by:

    cat /proc/fb

    if you get nothing you have no framebuffer.

    if you have:
    CONFIG_FB_MXC_SYNC_PANEL in your .config mxcfb.c will compile in.
    reference:
    ../ltib/rpm/BUILD/linux/drivers/video/mxc/Makefile

    for modes you can specify them in a fb.modes or build them into the kernel.

    locate:
    ../ltib/rpm/BUILD/linux/drivers/video/mxc/mxcfb_modedb.c

    you can add the mode in that file, here is a mode I found in my kernel I believe I got from this forum.


    [5] = {
    /* 640x480 @ 60 Hz * /
    "Sharp-VGA",
    60, 640, 480, // 60 Hz, 640x480
    35285, // 35.285 ns clock period
    128, 128, // left & right margin
    34, 10, // upper & lower margin
    2, 2, // hsync & vsync len
    0
    //| FB_SYNC_CLK_IDLE_EN
    | FB_SYNC_OE_ACT_HIGH
    //| FB_SYNC_HOR_HIGH_ACT
    ,
    FB_VMODE_NONINTERLACED,
    0,
    },


    mtrgdm:
    Quote:
    I can't see anything changing on the LCD when I run the DirectFB bench or even if write to the various /dev/fb devices.


    you mean there is no penguin when you boot? no logo?
    is the screen powered?

    when you :
    cat /proc/fb do you get any results?


    ---