02 Nov, 2011

1 commit

  • * 'next/fixes' of git://git.linaro.org/people/arnd/arm-soc: (28 commits)
    ARM: pxa/cm-x300: properly set bt_reset pin
    ARM: mmp: rename SHEEVAD to GPLUGD
    ARM: imx: Fix typo 'MACH_MX31_3DS_MXC_NAND_USE_BBT'
    ARM: i.MX28: shift frac value in _CLK_SET_RATE
    plat-mxc: iomux-v3.h: implicitly enable pull-up/down when that's desired
    ARM: mx5: fix clock usage for suspend
    ARM: pxa: use correct __iomem annotations
    ARM: pxa: sharpsl pm needs SPI
    ARM: pxa: centro and treo680 need palm27x
    ARM: pxa: make pxafb_smart_*() empty when not enabled
    ARM: pxa: select POWER_SUPPLY on raumfeld
    ARM: pxa: pxa95x is incompatible with earlier pxa
    ARM: pxa: CPU_FREQ_TABLE is needed for CPU_FREQ
    ARM: pxa: pxa95x/saarb depends on pxa3xx code
    ARM: pxa: allow selecting just one of TREO680/CENTRO
    ARM: pxa: export symbols from pxa3xx-ulpi
    ARM: pxa: make zylonite_pxa*_init declaration match code
    ARM: pxa/z2: fix building error of pxa27x_cpu_suspend() no longer available
    ARM: at91: add defconfig for at91sam9g45 family
    ARM: at91: remove dependency for Atmel PWM driver selector in Kconfig
    ...

    Linus Torvalds
     

08 Oct, 2011

1 commit


03 Oct, 2011

1 commit

  • Since commit [e58aa3d2: genirq: Run irq handlers with interrupts disabled],
    We run all interrupt handlers with interrupts disabled
    and we even check and yell when an interrupt handler
    returns with interrupts enabled (see commit [b738a50a:
    genirq: Warn when handler enables interrupts]).

    So now this flag is a NOOP and can be removed.

    Signed-off-by: Yong Zhang
    Acked-by: David Brown
    Signed-off-by: Florian Tobias Schandinat

    Yong Zhang
     

12 Apr, 2011

1 commit

  • In case CONFIG_FB_PXA_OVERLAY is not defined, the pxafb_freq_transition()
    function tests nonexistent member of pxafb_info (since the member is not
    part of the structure).

    Fix this by wraping the test in ifdef, even if I don't really like how the code
    looks now. The check doesn't have to happen if overlays are disabled at all as
    the check is always true then.

    Signed-off-by: Marek Vasut
    Acked-by: Vasily Khoruzhick
    Signed-off-by: Eric Miao

    Marek Vasut
     

16 Mar, 2011

4 commits


29 Dec, 2009

1 commit


16 Dec, 2009

2 commits

  • If the NULL test on fbi is needed, then the dereference should be after the
    NULL test.

    A simplified version of the semantic match that detects this problem is as
    follows (http://coccinelle.lip6.fr/):

    //
    @match exists@
    expression x, E;
    identifier fld;
    @@

    * x->fld
    ... when != \(x = E\|&x\)
    * x == NULL
    //

    Signed-off-by: Julia Lawall
    Cc: Krzysztof Helt
    Cc: Eric Miao
    Cc: Daniel Mack
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Julia Lawall
     
  • Signed-off-by: Alexey Dobriyan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

01 Dec, 2009

2 commits

  • This allows to select either RGB565 (transparency 0) or RGBT555
    (transparency 1) from the mode info

    Signed-off-by: Pieter Grimmerink
    Signed-off-by: Eric Miao

    Pieter Grimmerink
     
  • pxafb_pan_display() used to ignore the fb_var_screeninfo parameter. Now
    pass it to setup_base_frame() instead of pulling default values out of
    fb_info.

    And the original patch has an issue of pxafb_pan_display() paying only
    attention to the 'var' parameter passed in, and Ville Syrjälä pointed
    out, this is potentially dangerous as user could pass in any other
    screeninfo parameters as well, and not only such that are relevant for
    display panning. This is fixed by limiting the arguments actually used
    to .xoffset, .yoffset and .vmode & FB_VMODE_YWRAP.

    Signed-off-by: Sven Neumann
    Cc: Ville Syrjälä
    Signed-off-by: Daniel Mack
    Signed-off-by: Eric Miao

    Sven Neumann
     

12 Sep, 2009

1 commit

  • Add ID 99 for PXA3xx frame buffers and report it in the pxa frame buffer
    conditionally, depending on a new flag in struct pxafb_mach_info.

    Signed-off-by: Daniel Mack
    Cc: linux-fbdev-devel@lists.sourceforge.net
    Cc: Dennis Oliver Kropp
    Cc: Sven Neumann
    Cc: Guennadi Liakhovetski
    Signed-off-by: Eric Miao

    Daniel Mack
     

10 Sep, 2009

2 commits


01 Jul, 2009

1 commit

  • Add a mutex to avoid a circular locking problem between the mm layer
    semaphore and fbdev ioctl mutex through the fb_mmap() call.

    Also, add mutex to all places where smem_start and smem_len fields change
    so the mutex inside the fb_mmap() is actually used. Changing of these
    fields before calling the framebuffer_register() are not mutexed.

    This is 2.6.31 material. It removes one lockdep (fb_mmap() and
    register_framebuffer()) but there is still another one (fb_release() and
    register_framebuffer()). It also cleans up handling of the smem_start and
    smem_len fields used by mutexed section of the fb_mmap().

    Signed-off-by: Krzysztof Helt
    Cc: Peter Zijlstra
    Cc: "Rafael J. Wysocki"
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     

22 Apr, 2009

1 commit


25 Mar, 2009

1 commit


23 Mar, 2009

1 commit


19 Mar, 2009

1 commit


14 Mar, 2009

1 commit


09 Mar, 2009

1 commit


04 Mar, 2009

1 commit

  • `iop_adma_remove' referenced in section `.data' of drivers/built-in.o: defined in discarded section `.devexit.text' of drivers/built-in.o
    `mv_xor_remove' referenced in section `.data' of drivers/built-in.o: defined in discarded section `.devexit.text' of drivers/built-in.o
    `mv64xxx_i2c_unmap_regs' referenced in section `.devinit.text' of drivers/built-in.o: defined in discarded section `.devexit.text' of drivers/built-in.o
    `mv64xxx_i2c_remove' referenced in section `.data' of drivers/built-in.o: defined in discarded section `.devexit.text' of drivers/built-in.o
    `orion_nand_remove' referenced in section `.data' of drivers/built-in.o: defined in discarded section `.devexit.text' of drivers/built-in.o
    `pxafb_remove' referenced in section `.data' of drivers/built-in.o: defined in discarded section `.devexit.text' of drivers/built-in.o

    Acked-by: Uwe Kleine-König
    Signed-off-by: Russell King

    Russell King
     

30 Dec, 2008

1 commit


29 Dec, 2008

7 commits

  • PXA27x and later processors support overlay1 and overlay2 on-top of the
    base framebuffer (although under-neath the base is also possible). They
    support palette and no-palette RGB formats, as well as YUV formats (only
    available on overlay2). These overlays have dedicated DMA channels and
    behave in a similar way as a framebuffer.

    This heavily simplified and re-structured work is based on the original
    pxafb_overlay.c (which is pending for mainline merge for a long time).

    The major problems with this pxafb_overlay.c are (if you are interested
    in the history):

    1. heavily redundant (the control logics for overlay1 and overlay2 are
    actually identical except for some small operations, which are now
    abstracted into a 'pxafb_layer_ops' structure)

    2. a lot of useless and un-tested code (two workarounds which are now
    fixed on mature silicons)

    3. cursorfb is actually useless, hardware cursor should not be used
    this way, and the code was actually un-tested for a long time.

    The code in this patch should be self-explanatory, I tried to add minimum
    comments. As said, this is basically simplified, there are several things
    still on the pending list:

    1. palette mode is un-supported and un-tested (although re-using the
    palette code of the base framebuffer is actually very easy now with
    previous clean-up patches)

    2. fb_pan_display for overlay(s) is un-supported

    3. the base framebuffer can actually be abstracted by 'pxafb_layer' as
    well, which will help further re-use of the code and keep a better
    and consistent structure. (This is the reason I named it 'pxafb_layer'
    instead of 'pxafb_overlay' or something alike)

    See Documentation/fb/pxafb.txt for additional usage information.

    Signed-off-by: Eric Miao
    Cc: Rodolfo Giometti
    Signed-off-by: Eric Miao

    Eric Miao
     
  • Signed-off-by: Eric Miao
    Signed-off-by: Eric Miao

    Eric Miao
     
  • 1. introduce var_to_depth() to calculate the color depth including the
    transparency bit

    2. the conversion from 'fb_var_screeninfo' to LCCR3 BPP bits can be re-
    used by overlays (in OVLxC1), thus an individual pxafb_var_to_bpp()
    has been separated out.

    3. pxafb_setmode() should really set the color bitfields correctly at
    begining, introduce a pxafb_set_pixfmt() for this

    4. allow user apps to specify color formats within fb_var_screeninfo,
    and checking of this in pxafb_check_var() has been simplified as
    below:

    a) pxafb_var_to_bpp() should pass - which means a basically correct
    bits_per_pixel and color depth setting
    b) the RGBT bitfields are then forced into supported values by
    pxafb_set_pixfmt()

    Signed-off-by: Eric Miao
    Signed-off-by: Eric Miao

    Eric Miao
     
  • Add the palette format support for LCCR4_PAL_FOR_3, and fix the
    issue of LCCR4 being never assigned.

    Also remove the useless pxafb_set_truecolor().

    Signed-off-by: Eric Miao
    Signed-off-by: Eric Miao

    Eric Miao
     
  • dma branching is enabled by extending the current setup_frame_dma()
    function to allow a 2nd set of frame/palette dma descriptors to be
    used.

    As a result, pxafb_dma_buff.dma_desc[], pxafb_dma_buff.pal_desc[]
    and pxafb_info.fdadr[] are doubled.

    This allows maximum re-use of the current dma setup code, although
    the pxafb_info.fdadr[xx] for FBRx register values looks a bit odd.

    Signed-off-by: Eric Miao
    Signed-off-by: Eric Miao

    Eric Miao
     
  • Note the var->yres_virtual is only re-calculated from the fix.smem_len
    when text mode acceleration is enabled (which is default), this is due
    to the issue as Russell suggested below:

    Previous experience of doing this with the X server and acornfb is that
    it causes all sorts of problems - it seems to force the X server into
    assuming that the framebuffer should be panned no matter what settings
    you ask it for.

    The recommended workaround (implemented in acornfb) is to only do these
    kinds of adjustments if text mode acceleration is enabled. IIRC, the X
    server should be disabling text mode acceleration when it maps the
    framebuffer. I seem to remember that there are X servers which forget
    to do that though.

    Signed-off-by: Eric Miao
    Signed-off-by: Eric Miao

    Eric Miao
     
  • The amount of video memory size is decided according to the following
    order:

    1. x x by default, which is the backward
    compatible way

    2. size specified in platform data

    3. size specified in module parameter 'options' string or specified in
    kernel boot command line (see updated Documentation/fb/pxafb.txt)

    And now since the memory is allocated from system memory, the pxafb_mmap
    can be removed and the default fb_mmap() should be working all right.

    Also, since we now have introduced the 'struct pxafb_dma_buff' for DMA
    descriptors and palettes, the allocation can be separated cleanly.

    NOTE: the LCD DMA actually supports chained transfer (i.e. page-based
    transfers), to simplify the logic and keep the performance (with less
    TLB misses when accessing from memory mapped user space), the memory
    is allocated by alloc_pages_*() to ensures it's physical contiguous.

    Signed-off-by: Eric Miao
    Signed-off-by: Eric Miao

    Eric Miao
     

24 Dec, 2008

1 commit


17 Dec, 2008

5 commits


03 Dec, 2008

1 commit


02 Dec, 2008

1 commit