<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/gpu/drm/xe/xe_device.h, branch linux-6.14.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.14.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.14.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2024-12-13T18:38:13Z</updated>
<entry>
<title>drm/xe/irq: Separate MSI and MSI-X flows</title>
<updated>2024-12-13T18:38:13Z</updated>
<author>
<name>Ilia Levi</name>
</author>
<published>2024-12-13T07:25:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=da889070be7b26b91e8b90f072687ca437d3ed7b'/>
<id>urn:sha1:da889070be7b26b91e8b90f072687ca437d3ed7b</id>
<content type='text'>
A new flow is added for devices that support MSI-X:
- MSI-X vector 0 is used for GuC-to-host interrupt
- MSI-X vector 1 (aka default MSI-X) is used for HW engines

The default MSI-X will be passed to the HW engines in a subsequent
patch.

Signed-off-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Piotr Piórkowski &lt;piotr.piorkowski@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20241213072538.6823-2-ilia.levi@intel.com
Signed-off-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/xe: Move LNL scheduling WA to xe_device.h</title>
<updated>2024-11-01T13:23:26Z</updated>
<author>
<name>Nirmoy Das</name>
</author>
<published>2024-10-29T12:01:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cbe006a6492c01a0058912ae15d473f4c149896c'/>
<id>urn:sha1:cbe006a6492c01a0058912ae15d473f4c149896c</id>
<content type='text'>
Move LNL scheduling WA to xe_device.h so this can be used in other
places without needing keep the same comment about removal of this WA
in the future. The WA, which flushes work or workqueues, is now wrapped
in macros and can be reused wherever needed.

Cc: Badal Nilawar &lt;badal.nilawar@intel.com&gt;
Cc: Matthew Auld &lt;matthew.auld@intel.com&gt;
Cc: Matthew Brost &lt;matthew.brost@intel.com&gt;
Cc: Himal Prasad Ghimiray &lt;himal.prasad.ghimiray@intel.com&gt;
Cc: Lucas De Marchi &lt;lucas.demarchi@intel.com&gt;
cc: stable@vger.kernel.org # v6.11+
Suggested-by: John Harrison &lt;John.C.Harrison@Intel.com&gt;
Signed-off-by: Nirmoy Das &lt;nirmoy.das@intel.com&gt;
Reviewed-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20241029120117.449694-1-nirmoy.das@intel.com
Signed-off-by: Lucas De Marchi &lt;lucas.demarchi@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/xe: memirq infra changes for MSI-X</title>
<updated>2024-09-19T08:14:20Z</updated>
<author>
<name>Ilia Levi</name>
</author>
<published>2024-09-18T05:39:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ef6103d20f97f201d2483f16fea363f87d7caba8'/>
<id>urn:sha1:ef6103d20f97f201d2483f16fea363f87d7caba8</id>
<content type='text'>
When using MSI-X, hw engines report interrupt status and source to engine
instance 0. For this scenario, in order to differentiate between the
engines, we need to pass different status/source pointers in the LRC.

The requirements on those pointers are:
- Interrupt status should be 4KiB aligned
- Interrupt source should be 64 bytes aligned

To accommodate this, we duplicate the current memirq page layout -
allocating a page for each engine instance and pass this page in the LRC.
Note that the same page can be reused for different engine types.
For example, an LRC executing on CCS #x will have pointers to page #x,
and an LRC executing on BCS #x will have the same pointers. Thus, to
locate the proper page, the pointer accessors were modified to receive
the hw engine.

Signed-off-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Michal Wajdeczko &lt;michal.wajdeczko@intel.com&gt;
Signed-off-by: Michal Wajdeczko &lt;michal.wajdeczko@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20240918053942.1331811-5-illevi@habana.ai
</content>
</entry>
<entry>
<title>drm/xe: Introduce xe_device_uses_memirq()</title>
<updated>2024-09-19T08:10:26Z</updated>
<author>
<name>Ilia Levi</name>
</author>
<published>2024-09-18T05:39:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6fa86e7ad46e3a779e41868e1f082152cc24a6ca'/>
<id>urn:sha1:6fa86e7ad46e3a779e41868e1f082152cc24a6ca</id>
<content type='text'>
Simplify some memirq usage scenarios and asserts in memirq infrastructure.

Signed-off-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Michal Wajdeczko &lt;michal.wajdeczko@intel.com&gt;
Signed-off-by: Michal Wajdeczko &lt;michal.wajdeczko@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20240918053942.1331811-3-illevi@habana.ai
</content>
</entry>
<entry>
<title>drm/xe: Move GSI offset adjustment fields into 'struct xe_mmio'</title>
<updated>2024-09-11T22:17:31Z</updated>
<author>
<name>Matt Roper</name>
</author>
<published>2024-09-10T23:47:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9d383916a552784ec35e6d25469fc2da9bcd9948'/>
<id>urn:sha1:9d383916a552784ec35e6d25469fc2da9bcd9948</id>
<content type='text'>
By moving the GSI adjustment fields into 'struct xe_mmio' we can replace
the GT's MMIO substructure with another instance of xe_mmio.  At the
moment this means MMIO operations wind up pulling information from two
different places (the tile's xe_mmio for the iomap and the GT's xe_mmio
for the adjustment), but we'll address that in future patches.

The type headers change a bit with this change, meaning that various
files should be including xe_device_types.h instead of (or in addition
to) xe_gt_types.h.

v2:
 - Fix pre-existing kerneldoc typo while moving the fields (Lucas)
v3:
 - Add missing '@' in kerneldoc.  (Rodrigo)

Cc: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Reviewed-by: Lucas De Marchi &lt;lucas.demarchi@intel.com&gt;
Signed-off-by: Matt Roper &lt;matthew.d.roper@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20240910234719.3335472-49-matthew.d.roper@intel.com
</content>
</entry>
<entry>
<title>drm/xe: Move forcewake to 'gt.pm' substructure</title>
<updated>2024-09-11T22:17:29Z</updated>
<author>
<name>Matt Roper</name>
</author>
<published>2024-09-10T23:47:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=998fde0647671c82f637e299026d951f9b155b37'/>
<id>urn:sha1:998fde0647671c82f637e299026d951f9b155b37</id>
<content type='text'>
Forcewake is a general GT power management concept that isn't specific
to MMIO register access.  Move the forcewake information for a GT out of
the 'mmio' substruct and into a 'pm' substruct.  Also use the gt_to_fw()
helper in a few more places where it was being open-coded.

v2:
 - Kerneldoc tweaks.  (Lucas)

Reviewed-by: Lucas De Marchi &lt;lucas.demarchi@intel.com&gt;
Signed-off-by: Matt Roper &lt;matthew.d.roper@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20240910234719.3335472-46-matthew.d.roper@intel.com
</content>
</entry>
<entry>
<title>drm/i915 &amp; drm/xe: save struct drm_device to drvdata</title>
<updated>2024-09-02T12:01:59Z</updated>
<author>
<name>Jani Nikula</name>
</author>
<published>2024-08-29T14:47:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=83e5af5997554115e198c2e9e97564702eac04a6'/>
<id>urn:sha1:83e5af5997554115e198c2e9e97564702eac04a6</id>
<content type='text'>
In the future, the display code shall not have any idea about struct
xe_device or struct drm_i915_private, but will need to get at the struct
drm_device via drvdata. Store the struct drm_device pointer to drvdata
instead of the driver specific pointer.

Avoid passing NULL to container_of() via to_i915()/to_xe_device(). (It
does return NULL for NULL pointers when the offset happens to be 0, but
otherwise returns garbage pointers for NULL.)

Reviewed-by: Gustavo Sousa &lt;gustavo.sousa@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/946805b32e38d4785880cc7857e01e6a309126a9.1724942754.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/xe/device: Remove unused xe_device::usm::num_vm_in_*</title>
<updated>2024-08-18T01:31:59Z</updated>
<author>
<name>Francois Dugast</name>
</author>
<published>2024-08-09T15:51:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4099cfda9dd856222d7cab6970a65896375616d5'/>
<id>urn:sha1:4099cfda9dd856222d7cab6970a65896375616d5</id>
<content type='text'>
Those counters were used to keep track of the numbers VMs in fault mode
and in non-fault mode, to determine if the whole device was in fault mode
or not. This is no longer needed so remove those variables and their
usages.

Signed-off-by: Francois Dugast &lt;francois.dugast@intel.com&gt;
Reviewed-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Signed-off-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20240809155156.1955925-12-francois.dugast@intel.com
</content>
</entry>
<entry>
<title>drm/xe: add kdev_to_xe_device() helper and use it</title>
<updated>2024-08-13T09:11:49Z</updated>
<author>
<name>Jani Nikula</name>
</author>
<published>2024-08-12T10:30:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d408d6f8cbbb5ad92b383f33d091f027f5740aea'/>
<id>urn:sha1:d408d6f8cbbb5ad92b383f33d091f027f5740aea</id>
<content type='text'>
There are enough users for kernel device to xe device conversion, add a
helper for it.

Reviewed-by: Gustavo Sousa &lt;gustavo.sousa@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/38c80846e70c7e410850530426384e17cff9d031.1723458544.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/xe: Introduce const cast helper</title>
<updated>2024-07-22T10:20:07Z</updated>
<author>
<name>Michal Wajdeczko</name>
</author>
<published>2024-07-20T14:25:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bd40536ae33911bc74df5ba3b29b573dcb72f904'/>
<id>urn:sha1:bd40536ae33911bc74df5ba3b29b573dcb72f904</id>
<content type='text'>
Typically we want to preserve pointer constness when converting
from one xe pointer to another, but in some rare cases, like kunit
parameter conversions, we might want to discard this constness.
Add a helper that we will use to clearly indicate our intention.

Signed-off-by: Michal Wajdeczko &lt;michal.wajdeczko@intel.com&gt;
Reviewed-by: Jonathan Cavitt &lt;jonathan.cavitt@intel.com&gt; #v1
Cc: Lucas De Marchi &lt;lucas.demarchi@intel.com&gt;
Reviewed-by: Lucas De Marchi &lt;lucas.demarchi@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20240720142528.530-2-michal.wajdeczko@intel.com
</content>
</entry>
</feed>
