• Paul Cercueil's avatar
    DRM: Add KMS driver for the Ingenic JZ47xx SoCs · 90b86fcc
    Paul Cercueil authored
    Add a KMS driver for the Ingenic JZ47xx family of SoCs.
    This driver is meant to replace the aging jz4740-fb driver.
    
    This driver does not make use of the simple pipe helper, for the reason
    that it will soon be updated to support more advanced features like
    multiple planes, IPU integration for colorspace conversion and up/down
    scaling, support for DSI displays, and TV-out and HDMI outputs.
    
    Notes:
        v2: - Remove custom handling of panel. The panel is now discovered using
              the standard API.
            - Lots of small tweaks suggested by upstream
    
        v3: - Use devm_drm_dev_init()
            - Update compatible strings to -lcd instead of -drm
            - Add destroy() callbacks to plane and crtc
            - The ingenic,lcd-mode is now read from the bridge's DT node
    
        v4: Remove ingenic,lcd-mode property completely. The various modes are now
            deduced from the connector type, the pixel format or the bus flags.
    
        v5: - Fix framebuffer size incorrectly calculated for 24bpp framebuffers
            - Use 32bpp framebuffer instead of 16bpp, as it'll work with both
              16-bit and 24-bit panel
            - Get rid of drm_format_plane_cpp() which has been dropped upstream
            - Avoid using drm_format_info->depth, which is deprecated.
    Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
    Tested-by: default avatarArtur Rojek <contact@artur-rojek.eu>
    Reviewed-by: default avatarSam Ravnborg <sam@ravnborg.org>
    Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
    Link: https://patchwork.freedesktop.org/patch/msgid/20190603152331.23160-2-paul@crapouillou.net
    90b86fcc
Kconfig 440 Bytes