All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Souza, Jose" <jose.souza@intel.com>
To: "intel-xe@lists.freedesktop.org" <intel-xe@lists.freedesktop.org>,
	"Dugast, Francois" <francois.dugast@intel.com>
Subject: Re: [PATCH v1 11/14] drm/xe/uapi: Add block diagram of a device
Date: Thu, 7 Dec 2023 14:01:49 +0000	[thread overview]
Message-ID: <f99379694f13f4ebff6e4e2cb435a6afffcdb4c3.camel@intel.com> (raw)
In-Reply-To: <20231207135009.7-12-francois.dugast@intel.com>

On Thu, 2023-12-07 at 13:50 +0000, Francois Dugast wrote:
> In order to make proper use the uAPI, a prerequisite is to understand
> some key concepts about the discrete GPU devices which are supported
> by the Xe driver. For example, some structs defined in the uAPI are an
> abstraction of a hardware component with a specific role.
> 
> This diagram helps to build a mental representation of a device how it
> is seen by the Xe driver. As written in the documentation, it does not
> intend to be a literal representation of an existing device. A lot
> more information could be added but the intention for the overview is
> to keep it simple, and go into detail as needed in other sections.
> 
> v2: Add GT1 inside Tile0 (José Roberto de Souza)
> 

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>

> Signed-off-by: Francois Dugast <francois.dugast@intel.com>
> ---
>  include/uapi/drm/xe_drm.h | 39 +++++++++++++++++++++++++++++++++++++++
>  1 file changed, 39 insertions(+)
> 
> diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h
> index 73e9d00a2111..b5117bc1f13c 100644
> --- a/include/uapi/drm/xe_drm.h
> +++ b/include/uapi/drm/xe_drm.h
> @@ -25,6 +25,45 @@ extern "C" {
>   *   6. PMU
>   */
>  
> +/**
> + * DOC: Xe Device Block Diagram
> + *
> + * The diagram below represents a high-level simplification of a discrete
> + * GPU supported by the Xe driver. It shows some device components which
> + * are necessary to understand this API, as well as how their relations
> + * to each other. This diagram does not represent real hardware::
> + *
> + *   ┌──────────────────────────────────────────────────────────────────┐
> + *   │ ┌──────────────────────────────────────────────────┐ ┌─────────┐ │
> + *   │ │        ┌───────────────────────┐   ┌─────┐       │ │ ┌─────┐ │ │
> + *   │ │        │         VRAM0         ├───┤ ... │       │ │ │VRAM1│ │ │
> + *   │ │        └───────────┬───────────┘   └─GT1─┘       │ │ └──┬──┘ │ │
> + *   │ │ ┌──────────────────┴───────────────────────────┐ │ │ ┌──┴──┐ │ │
> + *   │ │ │ ┌─────────────────────┐  ┌─────────────────┐ │ │ │ │     │ │ │
> + *   │ │ │ │ ┌──┐ ┌──┐ ┌──┐ ┌──┐ │  │ ┌─────┐ ┌─────┐ │ │ │ │ │     │ │ │
> + *   │ │ │ │ │EU│ │EU│ │EU│ │EU│ │  │ │RCS0 │ │BCS0 │ │ │ │ │ │     │ │ │
> + *   │ │ │ │ └──┘ └──┘ └──┘ └──┘ │  │ └─────┘ └─────┘ │ │ │ │ │     │ │ │
> + *   │ │ │ │ ┌──┐ ┌──┐ ┌──┐ ┌──┐ │  │ ┌─────┐ ┌─────┐ │ │ │ │ │     │ │ │
> + *   │ │ │ │ │EU│ │EU│ │EU│ │EU│ │  │ │VCS0 │ │VCS1 │ │ │ │ │ │     │ │ │
> + *   │ │ │ │ └──┘ └──┘ └──┘ └──┘ │  │ └─────┘ └─────┘ │ │ │ │ │     │ │ │
> + *   │ │ │ │ ┌──┐ ┌──┐ ┌──┐ ┌──┐ │  │ ┌─────┐ ┌─────┐ │ │ │ │ │     │ │ │
> + *   │ │ │ │ │EU│ │EU│ │EU│ │EU│ │  │ │VECS0│ │VECS1│ │ │ │ │ │ ... │ │ │
> + *   │ │ │ │ └──┘ └──┘ └──┘ └──┘ │  │ └─────┘ └─────┘ │ │ │ │ │     │ │ │
> + *   │ │ │ │ ┌──┐ ┌──┐ ┌──┐ ┌──┐ │  │ ┌─────┐ ┌─────┐ │ │ │ │ │     │ │ │
> + *   │ │ │ │ │EU│ │EU│ │EU│ │EU│ │  │ │CCS0 │ │CCS1 │ │ │ │ │ │     │ │ │
> + *   │ │ │ │ └──┘ └──┘ └──┘ └──┘ │  │ └─────┘ └─────┘ │ │ │ │ │     │ │ │
> + *   │ │ │ └─────────DSS─────────┘  │ ┌─────┐ ┌─────┐ │ │ │ │ │     │ │ │
> + *   │ │ │                          │ │CCS2 │ │CCS3 │ │ │ │ │ │     │ │ │
> + *   │ │ │ ┌─────┐ ┌─────┐ ┌─────┐  │ └─────┘ └─────┘ │ │ │ │ │     │ │ │
> + *   │ │ │ │ ... │ │ ... │ │ ... │  │                 │ │ │ │ │     │ │ │
> + *   │ │ │ └─DSS─┘ └─DSS─┘ └─DSS─┘  └─────Engines─────┘ │ │ │ │     │ │ │
> + *   │ │ └───────────────────────────GT0────────────────┘ │ │ └─GT2─┘ │ │
> + *   │ └────────────────────────────Tile0─────────────────┘ └─ Tile1──┘ │
> + *   └─────────────────────────────Device0───────┬──────────────────────┘
> + *                                               │
> + *                        ───────────────────────┴────────── PCI bus
> + */
> +
>  /**
>   * DOC: Xe uAPI Overview
>   *


  reply	other threads:[~2023-12-07 14:02 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-07 13:49 [PATCH v1 00/14] uAPI Alignment - Documentation Francois Dugast
2023-12-07 13:49 ` [PATCH v1 01/14] drm/xe/uapi: Add a comment to each struct Francois Dugast
2023-12-14 14:17   ` Rodrigo Vivi
2023-12-07 13:49 ` [PATCH v1 02/14] drm/xe/uapi: Add missing documentation for struct members Francois Dugast
2023-12-14 14:17   ` Rodrigo Vivi
2023-12-07 13:49 ` [PATCH v1 03/14] drm/xe/uapi: Document use of size in drm_xe_device_query Francois Dugast
2023-12-13 18:16   ` Rodrigo Vivi
2023-12-07 13:49 ` [PATCH v1 04/14] drm/xe/uapi: Document drm_xe_query_config keys Francois Dugast
2023-12-13 18:14   ` Rodrigo Vivi
2023-12-07 13:50 ` [PATCH v1 05/14] drm/xe/uapi: Document DRM_XE_DEVICE_QUERY_HWCONFIG Francois Dugast
2023-12-13 18:14   ` Rodrigo Vivi
2023-12-07 13:50 ` [PATCH v1 06/14] drm/xe/uapi: Make constant comments visible in kernel doc Francois Dugast
2023-12-13 18:16   ` Rodrigo Vivi
2023-12-07 13:50 ` [PATCH v1 07/14] drm/xe/uapi: Replace BO with GEM in documentation Francois Dugast
2023-12-07 14:49   ` Matthew Auld
2023-12-13 18:27     ` Rodrigo Vivi
2023-12-07 13:50 ` [PATCH v1 08/14] drm/xe/uapi: Order sections Francois Dugast
2023-12-14 20:57   ` Lucas De Marchi
2023-12-15  4:06     ` Aravind Iddamsetty
2023-12-07 13:50 ` [PATCH v1 09/14] drm/xe/uapi: More uAPI documentation additions and cosmetic updates Francois Dugast
2023-12-14 16:45   ` Lucas De Marchi
2023-12-14 19:40     ` Francois Dugast
2023-12-07 13:50 ` [PATCH v1 10/14] drm/xe/uapi: Document the memory_region bitmask Francois Dugast
2023-12-14 21:23   ` Lucas De Marchi
2023-12-07 13:50 ` [PATCH v1 11/14] drm/xe/uapi: Add block diagram of a device Francois Dugast
2023-12-07 14:01   ` Souza, Jose [this message]
2023-12-07 13:50 ` [PATCH v1 12/14] drm/xe/uapi: Add examples of user space code Francois Dugast
2023-12-13 18:26   ` Rodrigo Vivi
2023-12-07 13:50 ` [PATCH v1 13/14] drm/xe/uapi: Move CPU_CACHING defines before doc Francois Dugast
2023-12-13 18:18   ` Rodrigo Vivi
2023-12-07 13:50 ` [PATCH v1 14/14] drm/xe/uapi: Move DRM_XE_ACC_GRANULARITY_* where they are used Francois Dugast
2023-12-13 18:17   ` Rodrigo Vivi
2023-12-07 16:42 ` ✓ CI.Patch_applied: success for uAPI Alignment - Documentation Patchwork
2023-12-07 16:42 ` ✗ CI.checkpatch: warning " Patchwork
2023-12-07 16:44 ` ✓ CI.KUnit: success " Patchwork
2023-12-07 16:51 ` ✓ CI.Build: " Patchwork
2023-12-07 16:51 ` ✓ CI.Hooks: " Patchwork
2023-12-07 16:53 ` ✓ CI.checksparse: " Patchwork
2023-12-07 17:28 ` ✓ CI.BAT: " Patchwork

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=f99379694f13f4ebff6e4e2cb435a6afffcdb4c3.camel@intel.com \
    --to=jose.souza@intel.com \
    --cc=francois.dugast@intel.com \
    --cc=intel-xe@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.