1. 12 6月, 2013 4 次提交
    • A
      drm/radeon: fix AVI infoframe generation · f100380e
      Alex Deucher 提交于
      - remove adding 2 to checksum, this is incorrect.
      
      This was incorrectly introduced in:
      92db7f6c
      http://lists.freedesktop.org/archives/dri-devel/2011-December/017717.html
      However, the off by 2 was due to adding the version twice.
      From the examples in the URL above:
      
      [Rafał Miłecki][RV620] fglrx:
      0x7454: 00 A8 5E 79     R600_HDMI_VIDEOINFOFRAME_0
      0x7458: 00 28 00 10     R600_HDMI_VIDEOINFOFRAME_1
      0x745C: 00 48 00 28     R600_HDMI_VIDEOINFOFRAME_2
      0x7460: 02 00 00 48     R600_HDMI_VIDEOINFOFRAME_3
      ===================
      (0x82 + 0x2 + 0xD) + 0x1F8 = 0x289
      -0x289 = 0x77
      
      However, the payload sum is not 0x1f8, it's 0x1f6.
      00 + A8 + 5E + 00 +
      00 + 28 + 00 + 10 +
      00 + 48 + 00 + 28 +
      00 + 48 =
      0x1f6
      
      Bits 25:24 of HDMI_VIDEOINFOFRAME_3 are the packet version, not part
      of the payload.  So the total would be:
      (0x82 + 0x2 + 0xD) + 0x1f6 = 0x287
      -0x287 = 0x79
      
      - properly emit the AVI infoframe version.  This was not being
      emitted previous which is probably what caused the issue above.
      
      This should fix blank screen when HDMI audio is enabled on
      certain monitors.
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      Cc: Rafał Miłecki <zajec5@gmail.com>
      f100380e
    • A
      drm/radeon: fix UVD on big endian · 9b1be4dc
      Alex Deucher 提交于
      This fixes the kernel side so that the ring should come
      up and ring and IB tests should work.  The userspace
      UVD drivers will also need big endian fixes.
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      9b1be4dc
    • J
      drm/radeon: fix write back suspend regression with uvd v2 · 089920f2
      Jerome Glisse 提交于
      UVD ring can't use scratch thus it does need writeback buffer to keep
      a valid address or radeon_ring_backup will trigger a kernel fault.
      
      It's ok to not unpin the write back buffer on suspend as it leave in
      gtt and thus does not need eviction.
      
      v2: Fix the uvd case.
      
      Reported and tracked by Wojtek <wojtask9@wp.pl>
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      089920f2
    • J
      drm/radeon: do not try to uselessly update virtual memory pagetable · 3813f5ca
      Jerome Glisse 提交于
      If a buffer is never bound to a virtual memory pagetable than don't try
      to unbind it. Only drawback is that we don't update the pagetable when
      unbinding the ib pool buffer which is fine because it only happens at
      suspend or module unload/shutdown.
      
      Fixes spurious messages about buffers without VM mappings. E.g.:
      radeon 0000:01:00.0: bo ffff88020afac400 don't has a mapping in vm ffff88021ca2b900
      
      Cc: stable@kernel.org
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      3813f5ca
  2. 11 6月, 2013 6 次提交
  3. 10 6月, 2013 19 次提交
  4. 09 6月, 2013 11 次提交