• Kevin Tang's avatar
    drm/sprd: add Unisoc's drm mipi dsi&dphy driver · 1c66496b
    Kevin Tang authored
    Adds dsi host controller support for the Unisoc's display subsystem.
    Adds dsi phy support for the Unisoc's display subsystem.
    Only MIPI DSI Displays supported, DP/TV/HMDI will be support
    in the feature.
    
    v1:
      - Remove dphy and dsi graph binding, merge the dphy driver into the dsi.
    
    v2:
      - Use drm_xxx to replace all DRM_XXX.
      - Use kzalloc to replace devm_kzalloc for sprd_dsi structure init.
    
    v4:
      - Use drmm_helpers to allocate encoder.
      - Move allocate encoder and connector to bind function.
    
    v5:
      - Drop the dsi ip file prefix.
      - Fix the checkpatch warnings.
      - Add Signed-off-by for dsi&dphy patch.
      - Use the mode_flags of mipi_dsi_device to setup crtc DPI and EDPI mode.
    
    v6:
      - Redesign the way to access the dsi register.
      - Reduce the dsi_context member variables.
    
    v7:
      - Fix codeing style issue by checkpatch.
      - Drop the pll registers structure define.
      - Use bridge API instead of drm panel API.
      - Register mipi_dsi_host on probe phase;
      - Remove some unused function.
    
    v8:
      - Fix missing signed-off-by.
      - Move component_add to dsi_host.attach callback.
    
    Cc: Orson Zhai <orsonzhai@gmail.com>
    Cc: Chunyan Zhang <zhang.lyra@gmail.com>
    Signed-off-by: default avatarKevin Tang <kevin.tang@unisoc.com>
    Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20211207142717.30296-7-kevin3.tang@gmail.com
    1c66496b
sprd_dsi.c 27 KB