1. 18 Jul, 2018 1 commit
  2. 17 May, 2018 1 commit
  3. 16 May, 2018 1 commit
  4. 22 Mar, 2018 1 commit
  5. 09 Mar, 2018 3 commits
    • Thierry Reding's avatar
      tegra: Initial support · 1755f608
      Thierry Reding authored
      Tegra K1 and later use a GPU that can be driven by the Nouveau driver.
      But the GPU is a pure render node and has no display engine, hence the
      scanout needs to happen on the Tegra display hardware. The GPU and the
      display engine each have a separate DRM device node exposed by the
      kernel.
      
      To make the setup appear as a single device, this driver instantiates
      a Nouveau screen with each instance of a Tegra screen and forwards GPU
      requests to the Nouveau screen. For purposes of scanout it will import
      buffers created on the GPU into the display driver. Handles that
      userspace requests are those of the display driver so that they can be
      used to create framebuffers.
      
      This has been tested with some GBM test programs, as well as kmscube and
      weston. All of those run without modifications, but I'm sure there is a
      lot that can be improved.
      
      Some fixes contributed by Hector Martin <marcan@marcan.st>.
      
      Changes in v2:
      - duplicate file descriptor in winsys to avoid potential issues
      - require nouveau when building the tegra driver
      - check for nouveau driver name on render node
      - remove unneeded dependency on libdrm_tegra
      - remove zombie references to libudev
      - add missing headers to C_SOURCES variable
      - drop unneeded tegra/ prefix for includes
      - open device files with O_CLOEXEC
      - update copyrights
      
      Changes in v3:
      - properly unwrap resources in ->resource_copy_region()
      - support vertex buffers passed by user pointer
      - allocate custom stream and const uploader
      - silence error message on pre-Tegra124
      - support X without explicit PRIME
      
      Changes in v4:
      - ship Meson build files in distribution tarball
      - drop duplicate driver_tegra dependency
      Reviewed-by: 's avatarEmil Velikov <emil.velikov@collabora.com>
      Acked-by: 's avatarEmil Velikov <emil.velikov@collabora.com>
      Tested-by: 's avatarAndre Heider <a.heider@gmail.com>
      Reviewed-by: 's avatarDmitry Osipenko <digetx@gmail.com>
      Reviewed-by: 's avatarDylan Baker <dylan@pnwbakers.com>
      Signed-off-by: 's avatarThierry Reding <treding@nvidia.com>
      1755f608
    • Thierry Reding's avatar
      drm/tegra: Sanitize format modifiers · 75bf4896
      Thierry Reding authored
      The existing format modifier definitions were merged prematurely, and
      recent work has unveiled that the definitions are suboptimal in several
      ways:
      
        - The format specifiers, except for one, are not Tegra specific, but
          the names don't reflect that.
        - The number space is split into two, reserving 32 bits for some
          "parameter" which most of the modifiers are not going to have.
        - Symbolic names for the modifiers are not using the standard
          DRM_FORMAT_MOD_* prefix, which makes them awkward to use.
        - The vendor prefix NV is somewhat ambiguous.
      
      Fortunately, nobody's started using these modifiers, so we can still fix
      the above issues. Do so by using the standard prefix. Also, remove TEGRA
      from the name of those modifiers that exist on NVIDIA GPUs as well. In
      case of the block linear modifiers, make the "parameter" smaller (4
      bits, though only 6 values are valid) and don't let that leak into any
      of the other modifiers.
      
      Finally, also use the more canonical NVIDIA instead of the ambiguous NV
      prefix.
      
      This is based on commit 268892cb63a822315921a8dab48ac3e4abf7dd03 from
      Linux v4.16-rc1.
      Acked-by: 's avatarEmil Velikov <emil.velikov@collabora.com>
      Tested-by: 's avatarAndre Heider <a.heider@gmail.com>
      Signed-off-by: 's avatarThierry Reding <treding@nvidia.com>
      75bf4896
    • Thierry Reding's avatar
      drm/fourcc: Fix fourcc_mod_code() definition · ffc85cfa
      Thierry Reding authored
      Avoid a compiler warnings when the val parameter is an expression.
      
      This is based on commit 5843f4e02fbe86a59981e35adc6cabebee46fdc0 from
      Linux v4.16-rc1.
      Acked-by: 's avatarEmil Velikov <emil.velikov@collabora.com>
      Tested-by: 's avatarAndre Heider <a.heider@gmail.com>
      Signed-off-by: 's avatarThierry Reding <treding@nvidia.com>
      ffc85cfa
  6. 05 Mar, 2018 1 commit
  7. 04 Dec, 2017 1 commit
  8. 09 Nov, 2017 1 commit
  9. 20 Oct, 2017 1 commit
  10. 11 Oct, 2017 1 commit
  11. 29 Aug, 2017 1 commit
  12. 16 Aug, 2017 1 commit
  13. 14 Aug, 2017 1 commit
  14. 12 Jul, 2017 2 commits