1. 03 Jul, 2020 1 commit
    • Neil Armstrong's avatar
      drm/fourcc: Add modifier definitions for describing Amlogic Video Framebuffer Compression · d6528ec8
      Neil Armstrong authored
      Amlogic uses a proprietary lossless image compression protocol and format
      for their hardware video codec accelerators, either video decoders or
      video input encoders.
      
      It considerably reduces memory bandwidth while writing and reading
      frames in memory.
      
      The underlying storage is considered to be 3 components, 8bit or 10-bit
      per component, YCbCr 420, single plane :
      - DRM_FORMAT_YUV420_8BIT
      - DRM_FORMAT_YUV420_10BIT
      
      This modifier will be notably added to DMA-BUF frames imported from the V4L2
      Amlogic VDEC decoder.
      
      This introduces the basic layout composed of:
      - a body content organized in 64x32 superblocks with 4096 bytes per
        superblock in default mode.
      - a 32 bytes per 128x64 header block
      
      This layout is tranferrable between Amlogic SoCs supporting this modifier.
      
      The Memory Saving option exist changing the layout superblock size to save memory when
      using 8bit components pixels size.
      
      Finally is also adds the Scatter Memory layout, meaning the header contains IOMMU
      references to the compressed frames content to optimize memory access
      and layout.
      
      In this mode, only the header memory address is needed, thus the content
      memory organization is tied to the current producer execution and cannot
      be saved/dumped neither transferrable between Amlogic SoCs supporting this
      modifier.
      Signed-off-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
      Tested-by: default avatarKevin Hilman <khilman@baylibre.com>
      Reviewed-by: default avatarKevin Hilman <khilman@baylibre.com>
      Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200703080728.25207-2-narmstrong@baylibre.com
      d6528ec8
  2. 02 Jul, 2020 13 commits
  3. 01 Jul, 2020 20 commits
  4. 30 Jun, 2020 6 commits