From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x1033.google.com (mail-pj1-x1033.google.com [IPv6:2607:f8b0:4864:20::1033]) by gabe.freedesktop.org (Postfix) with ESMTPS id CA7AC6EC81 for ; Wed, 9 Jun 2021 04:30:51 +0000 (UTC) Received: by mail-pj1-x1033.google.com with SMTP id b15-20020a17090a550fb029015dad75163dso649913pji.0 for ; Tue, 08 Jun 2021 21:30:51 -0700 (PDT) From: Jason Ekstrand Date: Tue, 8 Jun 2021 23:29:53 -0500 Message-Id: <20210609043035.102359-8-jason@jlekstrand.net> In-Reply-To: <20210609043035.102359-1-jason@jlekstrand.net> References: <20210609043035.102359-1-jason@jlekstrand.net> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 07/93] lib/i915/gem_engine_topology: Expose the __query_engines helper (v2) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org List-ID: v2 (Jason Ekstrand): - Add docs Signed-off-by: Jason Ekstrand Reviewed-by: Daniel Vetter --- lib/i915/gem_engine_topology.c | 28 +++++++++++++++++++--------- lib/i915/gem_engine_topology.h | 4 ++++ 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/lib/i915/gem_engine_topology.c b/lib/i915/gem_engine_topology.c index 291fb028..eb7a4c26 100644 --- a/lib/i915/gem_engine_topology.c +++ b/lib/i915/gem_engine_topology.c @@ -70,14 +70,17 @@ static int __gem_query(int fd, struct drm_i915_query *q) return err; } -static void gem_query(int fd, struct drm_i915_query *q) -{ - igt_assert_eq(__gem_query(fd, q), 0); -} - -static void query_engines(int fd, - struct drm_i915_query_engine_info *query_engines, - int length) +/** + * __gem_query_engines: + * @fd: open i915 drm file descriptor + * @query_engines: Returned engine query info + * @length: Size of query_engines, including room for the engines array + * + * Queries the set of engines available on this device. + */ +int __gem_query_engines(int fd, + struct drm_i915_query_engine_info *query_engines, + int length) { struct drm_i915_query_item item = { }; struct drm_i915_query query = { }; @@ -89,7 +92,14 @@ static void query_engines(int fd, item.data_ptr = to_user_pointer(query_engines); - gem_query(fd, &query); + return __gem_query(fd, &query); +} + +static void query_engines(int fd, + struct drm_i915_query_engine_info *query_engines, + int length) +{ + igt_assert_eq(__gem_query_engines(fd, query_engines, length), 0); } static void ctx_map_engines(int fd, struct intel_engine_data *ed, diff --git a/lib/i915/gem_engine_topology.h b/lib/i915/gem_engine_topology.h index ac37b19a..26a7af18 100644 --- a/lib/i915/gem_engine_topology.h +++ b/lib/i915/gem_engine_topology.h @@ -29,6 +29,10 @@ #define GEM_MAX_ENGINES I915_EXEC_RING_MASK + 1 +int __gem_query_engines(int fd, + struct drm_i915_query_engine_info *query_engines, + int length); + /** * intel_engine_data: * @nengines: Number of engines -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev