Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Nautiyal, Ankit K" <ankit.k.nautiyal@intel.com>
To: <igt-dev@lists.freedesktop.org>
Subject: Re: [igt-dev] [i-g-t 00/45] Add IGT display support for XE
Date: Fri, 21 Apr 2023 12:17:20 +0530	[thread overview]
Message-ID: <3d505bfb-5845-0196-67da-dd21c502fc18@intel.com> (raw)
In-Reply-To: <bd850ded-b4b7-dd17-ea3a-8433557c3b54@intel.com>


On 4/19/2023 5:27 PM, Modem, Bhanuprakash wrote:
> Hi,
>
> On Wed-19-04-2023 12:31 pm, Zbigniew Kempczyński wrote:
>> On Tue, Apr 18, 2023 at 07:58:08PM +0300, Ville Syrjälä wrote:
>>> On Tue, Apr 18, 2023 at 10:14:16PM +0530, Bhanuprakash Modem wrote:
>>>> Add IGT support to work kms tests on XE driver.
>>>>
>>>> TODO: Spin, BUSY & HANG related tests.
>>>>
>>>> Bhanuprakash Modem (35):
>>>>    lib: Use i915 namespace for XE debugfs
>>>>    lib/igt_fb: Add copy engine support for XE
>>>>    lib/igt_draw: Add gpu draw routine support for XE
>>>>    tests/i915/kms_big_fb: Add XE support
>>>>    tests/i915/kms_big_joiner: Add XE support
>>>>    tests/i915/kms_cdclk: Add XE support
>>>>    tests/i915/kms_draw_crc: Add XE support
>>>>    tests/i915/kms_dsc: Add XE support
>>>>    tests/i915/kms_flip_scaled_crc: Add XE support
>>>>    tests/i915/kms_flip_tiling: Add XE support
>>>>    tests/i915/kms_mmap_write_crc: Add XE support
>>>>    tests/i915/kms_psr*: Add XE support
>>>>    tests/kms_3d: Add XE support
>>>>    tests/kms_async_flips: No XE support
>>>>    tests/kms_atomic_transition: Add XE support
>>>>    tests/color: Add XE support
>>>>    tests/kms_concurrent: Add XE support
>>>>    tests/kms_content_protection: Add XE support
>>>>    tests/kms_cursor_crc: Add XE support
>>>>    tests/kms_cursor_legacy: Add XE support
>>>>    tests/kms_flip: Add XE support
>>>>    tests/kms_flip_event_leak: Add XE support
>>>>    tests/kms_getfb: Add XE support
>>>>    tests/kms_hdmi_inject: Add XE support
>>>>    tests/kms_hdr: Add XE support
>>>>    tests/kms_panel_fitting: Add XE support
>>>>    tests/kms_plane: Add XE support
>>>>    tests/kms_plane_lowers: Add XE support
>>>>    tests/kms_plane_scaling: Add XE support
>>>>    tests/kms_prime: Add XE support
>>>>    tests/kms_rotation_crc: Add XE support
>>>>    tests/kms_setmode: Add XE support
>>>>    tests/kms_universal_plane: Add XE support
>>>>    tests/kms: Move intel specific kms tests to new dir
>>>
>>> Feels like the whole xe lib/ stuff is basically
>>> a failure if we need to touch that many things
>>
>> Why you think so? Changes:
>>
>> -               if (is_i915_device(data->drm_fd))
>> +               if (is_intel_device(data->drm_fd))
>
> Yes most of the changes are to update *i915* to *intel* and few 
> unavoidable changes like:
> -    data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
> +    data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
>
>
> Also, there are few xe_device specific changes like:
> +        if (is_xe_device(drm_fd))
> +            xe_device_get(drm_fd);
>
> +        if (is_xe_device(drm_fd))
> +            xe_device_put(drm_fd);
>
>
> @Zbigniew, How about moving xe_device_get() to drm_open_driver()?
> So that, no need to call xe_device_get() in test level.


I agree, with this approach.

Currently a new test that is meant to run on any drm driver will need to 
add this explicitly, so that it runs on XE driver.

As mentioned by Bhanu, will need to have a wrapper around close(drm_fd), 
where we can do xe_device_put().

Regards,

Ankit

> --- a/lib/drmtest.c
> +++ b/lib/drmtest.c
> @@ -601,6 +601,9 @@ int drm_open_driver(int chipset)
>                 }
>         }
>
> +       if (is_xe_device(fd))
> +               xe_device_get(fd);
> +
>         return fd;
>  }
>
> Ofcourse we need some efforts to handle xe_device_put():
> 1- Create a new helper maybe drm_close(fd)
>     drm_close(int fd) {
>         if (is_xe_device(fd))
>             xe_device_put(fd);
>
>         close(fd);
>     }
> 2- Update both kms & gem tests to use s/close(fd)/drm_close(fd)/
>
> - Bhanu
>
>>
>> which checks intel (i915 or xe) looks good for me. I mean
>> I wouldn't like to handle xe in is_i915_device() check.
>>
>> -- 
>> Zbigniew
>>
>>
>>>
>>>>    xe-fast-feedback: Add kms tests to XE BAT
>>>>
>>>> Zbigniew Kempczyński (10):
>>>>    lib/xe_ioctl: Add missing header for direct resolving
>>>>    lib/xe_query: Add region helpers and missing doc
>>>>    lib/xe_query: Remove commented out function prototype
>>>>    lib/intel_allocator: Add allocator support for Xe
>>>>    lib/intel_bufops: Add Xe support in bufops
>>>>    lib/intel_batchbuffer: Add Xe support in intel-bb
>>>>    tests/xe_intel_bb: Check if intel-bb Xe support correctness
>>>>    tests/xe-fast-feedback: Add xe_intel_bb test to BAT
>>>>    lib/gpgpu_fill: Use RENDER engine flag to work on Xe
>>>>    tests/xe_gpgpu_fill: Exercise gpgpu fill on Xe
>>>>
>>>>   lib/gpgpu_fill.c                            |    4 +-
>>>>   lib/gpu_cmds.c                              |    2 +-
>>>>   lib/igt_draw.c                              |   82 +-
>>>>   lib/igt_draw.h                              |    2 +
>>>>   lib/igt_fb.c                                |   30 +-
>>>>   lib/igt_fb.h                                |    2 +
>>>>   lib/igt_kms.c                               |    4 +-
>>>>   lib/igt_psr.c                               |    4 +-
>>>>   lib/intel_allocator.c                       |   49 +-
>>>>   lib/intel_aux_pgtable.c                     |    2 +-
>>>>   lib/intel_batchbuffer.c                     |  430 +++++--
>>>>   lib/intel_batchbuffer.h                     |   28 +-
>>>>   lib/intel_bufops.c                          |   73 +-
>>>>   lib/intel_bufops.h                          |   13 +-
>>>>   lib/xe/xe_ioctl.h                           |    1 +
>>>>   lib/xe/xe_query.c                           |   45 +
>>>>   lib/xe/xe_query.h                           |    3 +-
>>>>   tests/chamelium/kms_chamelium_color.c       |    2 +-
>>>>   tests/i915/gem_caching.c                    |    4 +-
>>>>   tests/i915/gem_pxp.c                        |    2 +-
>>>>   tests/intel-ci/xe-fast-feedback.testlist    |   50 +
>>>>   tests/{i915 => intel}/kms_big_fb.c          |   75 +-
>>>>   tests/{i915 => intel}/kms_big_joiner.c      |    2 +-
>>>>   tests/{i915 => intel}/kms_cdclk.c           |    5 +-
>>>>   tests/{i915 => intel}/kms_draw_crc.c        |   24 +-
>>>>   tests/{i915 => intel}/kms_dsc.c             |    2 +-
>>>>   tests/{i915 => intel}/kms_dsc_helper.c      |    0
>>>>   tests/{i915 => intel}/kms_dsc_helper.h      |    0
>>>>   tests/{i915 => intel}/kms_flip_scaled_crc.c |    8 +-
>>>>   tests/{i915 => intel}/kms_flip_tiling.c     |    8 +-
>>>>   tests/{i915 => intel}/kms_mmap_write_crc.c  |    4 +-
>>>>   tests/{i915 => intel}/kms_psr.c             |   40 +-
>>>>   tests/{i915 => intel}/kms_psr2_sf.c         |    2 +-
>>>>   tests/{i915 => intel}/kms_psr2_su.c         |    2 +-
>>>>   tests/{i915 => intel}/kms_psr_stress_test.c |    2 +-
>>>>   tests/kms_3d.c                              |    8 +
>>>>   tests/kms_async_flips.c                     |    8 +-
>>>>   tests/kms_atomic_transition.c               |    8 +-
>>>>   tests/kms_color.c                           |   10 +-
>>>>   tests/kms_color_helper.c                    |    2 +-
>>>>   tests/kms_concurrent.c                      |    4 +-
>>>>   tests/kms_content_protection.c              |   12 +-
>>>>   tests/kms_cursor_crc.c                      |    4 +-
>>>>   tests/kms_cursor_legacy.c                   |    4 +-
>>>>   tests/kms_flip.c                            |   32 +-
>>>>   tests/kms_flip_event_leak.c                 |    5 +
>>>>   tests/kms_getfb.c                           |   22 +-
>>>>   tests/kms_hdmi_inject.c                     |   10 +-
>>>>   tests/kms_hdr.c                             |    8 +-
>>>>   tests/kms_panel_fitting.c                   |   12 +-
>>>>   tests/kms_plane.c                           |   19 +-
>>>>   tests/kms_plane_lowres.c                    |    9 +-
>>>>   tests/kms_plane_scaling.c                   |   41 +-
>>>>   tests/kms_prime.c                           |  241 +++-
>>>>   tests/kms_rotation_crc.c                    |   25 +-
>>>>   tests/kms_setmode.c                         |    7 +
>>>>   tests/kms_universal_plane.c                 |   15 +-
>>>>   tests/meson.build                           |   39 +-
>>>>   tests/xe/xe_gpgpu_fill.c                    |  133 +++
>>>>   tests/xe/xe_intel_bb.c                      | 1181 
>>>> +++++++++++++++++++
>>>>   60 files changed, 2513 insertions(+), 352 deletions(-)
>>>>   rename tests/{i915 => intel}/kms_big_fb.c (92%)
>>>>   rename tests/{i915 => intel}/kms_big_joiner.c (99%)
>>>>   rename tests/{i915 => intel}/kms_cdclk.c (98%)
>>>>   rename tests/{i915 => intel}/kms_draw_crc.c (92%)
>>>>   rename tests/{i915 => intel}/kms_dsc.c (99%)
>>>>   rename tests/{i915 => intel}/kms_dsc_helper.c (100%)
>>>>   rename tests/{i915 => intel}/kms_dsc_helper.h (100%)
>>>>   rename tests/{i915 => intel}/kms_flip_scaled_crc.c (98%)
>>>>   rename tests/{i915 => intel}/kms_flip_tiling.c (96%)
>>>>   rename tests/{i915 => intel}/kms_mmap_write_crc.c (98%)
>>>>   rename tests/{i915 => intel}/kms_psr.c (93%)
>>>>   rename tests/{i915 => intel}/kms_psr2_sf.c (99%)
>>>>   rename tests/{i915 => intel}/kms_psr2_su.c (99%)
>>>>   rename tests/{i915 => intel}/kms_psr_stress_test.c (99%)
>>>>   create mode 100644 tests/xe/xe_gpgpu_fill.c
>>>>   create mode 100644 tests/xe/xe_intel_bb.c
>>>>
>>>> -- 
>>>> 2.40.0
>>>
>>> -- 
>>> Ville Syrjälä
>>> Intel

  parent reply	other threads:[~2023-04-21  6:47 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-18 16:44 [igt-dev] [i-g-t 00/45] Add IGT display support for XE Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 01/45] lib/xe_ioctl: Add missing header for direct resolving Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 02/45] lib/xe_query: Add region helpers and missing doc Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 03/45] lib/xe_query: Remove commented out function prototype Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 04/45] lib/intel_allocator: Add allocator support for Xe Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 05/45] lib/intel_bufops: Add Xe support in bufops Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 06/45] lib/intel_batchbuffer: Add Xe support in intel-bb Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 07/45] tests/xe_intel_bb: Check if intel-bb Xe support correctness Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 08/45] tests/xe-fast-feedback: Add xe_intel_bb test to BAT Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 09/45] lib/gpgpu_fill: Use RENDER engine flag to work on Xe Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 10/45] tests/xe_gpgpu_fill: Exercise gpgpu fill " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 11/45] lib: Use i915 namespace for XE debugfs Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 12/45] lib/igt_fb: Add copy engine support for XE Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 13/45] lib/igt_draw: Add gpu draw routine " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 14/45] tests/i915/kms_big_fb: Add XE support Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 15/45] tests/i915/kms_big_joiner: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 16/45] tests/i915/kms_cdclk: " Bhanuprakash Modem
2023-04-21  9:47   ` Nautiyal, Ankit K
2023-04-18 16:44 ` [igt-dev] [i-g-t 17/45] tests/i915/kms_draw_crc: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 18/45] tests/i915/kms_dsc: " Bhanuprakash Modem
2023-04-21  9:51   ` Nautiyal, Ankit K
2023-04-18 16:44 ` [igt-dev] [i-g-t 19/45] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
2023-04-21  8:07   ` Nautiyal, Ankit K
2023-04-18 16:44 ` [igt-dev] [i-g-t 20/45] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
2023-04-21  9:57   ` Nautiyal, Ankit K
2023-04-18 16:44 ` [igt-dev] [i-g-t 21/45] tests/i915/kms_mmap_write_crc: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 22/45] tests/i915/kms_psr*: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 23/45] tests/kms_3d: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 24/45] tests/kms_async_flips: No " Bhanuprakash Modem
2023-04-21  9:15   ` Karthik B S
2023-04-18 16:44 ` [igt-dev] [i-g-t 25/45] tests/kms_atomic_transition: Add " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 26/45] tests/color: " Bhanuprakash Modem
2023-04-24  8:00   ` [igt-dev] [i-g-t,26/45] " Joshi, Kunal1
2023-04-24  8:13     ` Modem, Bhanuprakash
2023-04-18 16:44 ` [igt-dev] [i-g-t 27/45] tests/kms_concurrent: " Bhanuprakash Modem
2023-04-24  8:08   ` [igt-dev] [i-g-t,27/45] " Joshi, Kunal1
2023-04-18 16:44 ` [igt-dev] [i-g-t 28/45] tests/kms_content_protection: " Bhanuprakash Modem
2023-04-24  9:02   ` [igt-dev] [i-g-t, " Joshi, Kunal1
2023-04-18 16:44 ` [igt-dev] [i-g-t 29/45] tests/kms_cursor_crc: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 30/45] tests/kms_cursor_legacy: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 31/45] tests/kms_flip: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 32/45] tests/kms_flip_event_leak: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 33/45] tests/kms_getfb: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 34/45] tests/kms_hdmi_inject: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 35/45] tests/kms_hdr: " Bhanuprakash Modem
2023-04-21 10:09   ` Nautiyal, Ankit K
2023-04-18 16:44 ` [igt-dev] [i-g-t 36/45] tests/kms_panel_fitting: " Bhanuprakash Modem
2023-04-21 10:17   ` Nautiyal, Ankit K
2023-04-18 16:44 ` [igt-dev] [i-g-t 37/45] tests/kms_plane: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 38/45] tests/kms_plane_lowers: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 39/45] tests/kms_plane_scaling: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 40/45] tests/kms_prime: " Bhanuprakash Modem
2023-04-25  4:16   ` Karthik B S
2023-04-18 16:44 ` [igt-dev] [i-g-t 41/45] tests/kms_rotation_crc: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 42/45] tests/kms_setmode: " Bhanuprakash Modem
2023-04-18 16:44 ` [igt-dev] [i-g-t 43/45] tests/kms_universal_plane: " Bhanuprakash Modem
2023-04-18 16:45 ` [igt-dev] [i-g-t 44/45] tests/kms: Move intel specific kms tests to new dir Bhanuprakash Modem
2023-04-18 16:45 ` [igt-dev] [i-g-t 45/45] xe-fast-feedback: Add kms tests to XE BAT Bhanuprakash Modem
2023-04-18 16:58 ` [igt-dev] [i-g-t 00/45] Add IGT display support for XE Ville Syrjälä
2023-04-19  7:01   ` Zbigniew Kempczyński
2023-04-19 11:57     ` Modem, Bhanuprakash
2023-04-19 16:19       ` Zbigniew Kempczyński
2023-04-21  6:47       ` Nautiyal, Ankit K [this message]
2023-04-21  7:33         ` Modem, Bhanuprakash
2023-04-21  9:33           ` Nautiyal, Ankit K
2023-04-18 17:24 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2023-04-18 21:28 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-04-21 16:43 ` [igt-dev] [i-g-t 00/45] " Kamil Konieczny
2023-04-24  5:21   ` Modem, Bhanuprakash
2023-04-24  9:45     ` Kamil Konieczny
2023-04-24 10:05       ` Modem, Bhanuprakash

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3d505bfb-5845-0196-67da-dd21c502fc18@intel.com \
    --to=ankit.k.nautiyal@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox