lkml.org 
[lkml]   [2019]   [Aug]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3 00/15] Improvements and fixes for mxsfb DRM driver
    Hi,
    On Wed, Aug 21, 2019 at 01:15:40PM +0300, Robert Chiras wrote:
    > This patch-set improves the use of eLCDIF block on iMX 8 SoCs (like 8MQ, 8MM
    > and 8QXP). Following, are the new features added and fixes from this
    > patch-set:

    I've applied this whole series on top of my NWL work and it looks good
    with a DSI panel. Applying the whole series also fixes an issue where
    after unblank the output was sometimes shifted about half a screen width
    to the right (which didn't happen with DCSS). So at least from the parts
    I could test:

    Tested-by: Guido Günther <agx@sigxcpu.org>

    for the whole thing.
    Cheers,
    -- Guido
    >
    > 1. Add support for drm_bridge
    > On 8MQ and 8MM, the LCDIF block is not directly connected to a parallel
    > display connector, where an LCD panel can be attached, but instead it is
    > connected to DSI controller. Since this DSI stands between the display
    > controller (eLCDIF) and the physical connector, the DSI can be implemented
    > as a DRM bridge. So, in order to be able to connect the mxsfb driver to
    > the DSI driver, the support for a drm_bridge was needed in mxsfb DRM
    > driver (the actual driver for the eLCDIF block).
    >
    > 2. Add support for additional pixel formats
    > Some of the pixel formats needed by Android were not implemented in this
    > driver, but they were actually supported. So, add support for them.
    >
    > 3. Add support for horizontal stride
    > Having support for horizontal stride allows the use of eLCDIF with a GPU
    > (for example) that can only output resolution sizes multiple of a power of
    > 8. For example, 1080 is not a power of 16, so in order to support 1920x1080
    > output from GPUs that can produce linear buffers only in sizes multiple to 16,
    > this feature is needed.
    >
    > 3. Few minor features and bug-fixing
    > The addition of max-res DT property was actually needed in order to limit
    > the bandwidth usage of the eLCDIF block. This is need on systems where
    > multiple display controllers are presend and the memory bandwidth is not
    > enough to handle all of them at maximum capacity (like it is the case on
    > 8MQ, where there are two display controllers: DCSS and eLCDIF).
    > The rest of the patches are bug-fixes.
    >
    > v3:
    > - Removed the max-res property patches and added support for
    > max-memory-bandwidth property, as it is also implemented in other drivers
    > - Removed unnecessary drm_vblank_off in probe
    >
    > v2:
    > - Collected Tested-by from Guido
    > - Split the first patch, which added more than one feature into relevant
    > patches, explaining each feature added
    > - Also split the second patch into more patches, to differentiate between
    > the feature itself (additional pixel formats support) and the cleanup
    > of the register definitions for a better representation (guido)
    > - Included a patch submitted by Guido, while he was testing my patch-set
    >
    > Guido Günther (1):
    > drm/mxsfb: Read bus flags from bridge if present
    >
    > Mirela Rabulea (1):
    > drm/mxsfb: Signal mode changed when bpp changed
    >
    > Robert Chiras (13):
    > drm/mxsfb: Update mxsfb to support a bridge
    > drm/mxsfb: Add defines for the rest of registers
    > drm/mxsfb: Reset vital registers for a proper initialization
    > drm/mxsfb: Update register definitions using bit manipulation defines
    > drm/mxsfb: Update mxsfb with additional pixel formats
    > drm/mxsfb: Fix the vblank events
    > drm/mxsfb: Add max-memory-bandwidth property for MXSFB
    > dt-bindings: display: Add max-memory-bandwidth property for mxsfb
    > drm/mxsfb: Update mxsfb to support LCD reset
    > drm/mxsfb: Improve the axi clock usage
    > drm/mxsfb: Clear OUTSTANDING_REQS bits
    > drm/mxsfb: Add support for horizontal stride
    > drm/mxsfb: Add support for live pixel format change
    >
    > .../devicetree/bindings/display/mxsfb.txt | 5 +
    > drivers/gpu/drm/mxsfb/mxsfb_crtc.c | 287 ++++++++++++++++++---
    > drivers/gpu/drm/mxsfb/mxsfb_drv.c | 203 +++++++++++++--
    > drivers/gpu/drm/mxsfb/mxsfb_drv.h | 12 +-
    > drivers/gpu/drm/mxsfb/mxsfb_out.c | 26 +-
    > drivers/gpu/drm/mxsfb/mxsfb_regs.h | 193 +++++++++-----
    > 6 files changed, 589 insertions(+), 137 deletions(-)
    >
    > --
    > 2.7.4
    >

    \
     
     \ /
      Last update: 2019-08-26 14:06    [W:3.517 / U:2.400 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site