<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/next/linux-next.git/drivers/gpu/drm/xe, branch master</title>
<subtitle>The linux-next integration testing tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/'/>
<updated>2026-07-10T12:11:38+00:00</updated>
<entry>
<title>Merge branch 'drm-xe-next' of https://gitlab.freedesktop.org/drm/xe/kernel.git</title>
<updated>2026-07-10T12:11:38+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2026-07-10T12:11:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=b6837e97db427f55b7f36c14784730bbbc64d109'/>
<id>urn:sha1:b6837e97db427f55b7f36c14784730bbbc64d109</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'for-linux-next' of https://gitlab.freedesktop.org/drm/i915/kernel.git</title>
<updated>2026-07-10T12:11:33+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2026-07-10T12:11:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=33deef03f72010587d91649d2a925beec64e4480'/>
<id>urn:sha1:33deef03f72010587d91649d2a925beec64e4480</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'for-linux-next' of https://gitlab.freedesktop.org/drm/misc/kernel.git</title>
<updated>2026-07-10T12:11:30+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2026-07-10T12:11:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=574d99440a614422fb8b41f190e96b909ee15518'/>
<id>urn:sha1:574d99440a614422fb8b41f190e96b909ee15518</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'drm-next' of https://gitlab.freedesktop.org/drm/kernel.git</title>
<updated>2026-07-10T12:11:26+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2026-07-10T12:11:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=357323b1b3c9be9584a2105f87964430c5a69619'/>
<id>urn:sha1:357323b1b3c9be9584a2105f87964430c5a69619</id>
<content type='text'>
# Conflicts:
#	drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h
#	drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c
</content>
</entry>
<entry>
<title>drm/xe/guc: Define GuC firmware for NVL-S</title>
<updated>2026-07-09T21:23:49+00:00</updated>
<author>
<name>Julia Filipchuk</name>
<email>julia.filipchuk@intel.com</email>
</author>
<published>2026-07-07T19:24:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=9cdcdadab543149c1417d22f5574cecbe5ba0702'/>
<id>urn:sha1:9cdcdadab543149c1417d22f5574cecbe5ba0702</id>
<content type='text'>
GuC firmware 70.71.0 (UAPI 1.37.2) is the first official GuC firmware
for Novalake S. Recommend this version for NVL-S platform.

Signed-off-by: Julia Filipchuk &lt;julia.filipchuk@intel.com&gt;
Reviewed-by: Daniele Ceraolo Spurio &lt;daniele.ceraolospurio@intel.com&gt;
Link: https://patch.msgid.link/20260707192547.50535-12-julia.filipchuk@intel.com
Signed-off-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/xe: Add support for WA 16029897822</title>
<updated>2026-07-09T17:07:01+00:00</updated>
<author>
<name>Daniele Ceraolo Spurio</name>
<email>daniele.ceraolospurio@intel.com</email>
</author>
<published>2026-07-06T22:43:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=f543084cdbd142b9cfc1baf6f9d81e7b95fe9505'/>
<id>urn:sha1:f543084cdbd142b9cfc1baf6f9d81e7b95fe9505</id>
<content type='text'>
The WA is implemented by the GuC, so we just need to enable it via the
dedicated KLV.
This WA is supported starting from GuC 70.69. Note that the GuC does not
enable the relevant feature on NVL-S, so this WA can't (and shouldn't)
be enabled on that platform.

Signed-off-by: Daniele Ceraolo Spurio &lt;daniele.ceraolospurio@intel.com&gt;
Reviewed-by: Julia Filipchuk &lt;julia.filipchuk@intel.com&gt;
Link: https://patch.msgid.link/20260706224344.2723462-4-daniele.ceraolospurio@intel.com
</content>
</entry>
<entry>
<title>drm/xe: Add support for WA 22022079272</title>
<updated>2026-07-09T17:07:01+00:00</updated>
<author>
<name>Daniele Ceraolo Spurio</name>
<email>daniele.ceraolospurio@intel.com</email>
</author>
<published>2026-07-06T22:43:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=0af278683cd61b6c31fbec7f548f89956f70c604'/>
<id>urn:sha1:0af278683cd61b6c31fbec7f548f89956f70c604</id>
<content type='text'>
The WA is implemented by the GuC, so we just need to enable it via the
dedicated KLV.
This WA is supported starting from GuC 70.62.

Signed-off-by: Daniele Ceraolo Spurio &lt;daniele.ceraolospurio@intel.com&gt;
Reviewed-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Link: https://patch.msgid.link/20260706224344.2723462-3-daniele.ceraolospurio@intel.com
</content>
</entry>
<entry>
<title>drm/xe/guc: Handle GuC local uncorrectable error notifications</title>
<updated>2026-07-09T17:03:12+00:00</updated>
<author>
<name>Zhanjun Dong</name>
<email>zhanjun.dong@intel.com</email>
</author>
<published>2026-07-06T23:43:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=4e57574fa3a3a152bcca40f7595a28e88af28b27'/>
<id>urn:sha1:4e57574fa3a3a152bcca40f7595a28e88af28b27</id>
<content type='text'>
Add support for the GuC uncorrectable local error G2H notification and
opt in to the feature when the submission ABI exposes it.

When the notification targets a known exec queue, treat it like an
engine reset request and route it through the existing timeout cleanup
path. This keeps the queue teardown, pending job cancellation and error
capture in one place instead of open-coding a parallel recovery flow.

Signed-off-by: Zhanjun Dong &lt;zhanjun.dong@intel.com&gt;
Reviewed-by: Daniele Ceraolo Spurio &lt;daniele.ceraolospurio@intel.com&gt;
Signed-off-by: Daniele Ceraolo Spurio &lt;daniele.ceraolospurio@intel.com&gt;
Link: https://patch.msgid.link/20260706234353.3874355-1-zhanjun.dong@intel.com
</content>
</entry>
<entry>
<title>drm/gpusvm: let the drm_gpusvm core context purely MM level</title>
<updated>2026-07-09T11:12:49+00:00</updated>
<author>
<name>Honglei Huang</name>
<email>honghuan@amd.com</email>
</author>
<published>2026-06-30T10:21:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=808db118eb2b93727f4a8f300480e7c7ff4046fe'/>
<id>urn:sha1:808db118eb2b93727f4a8f300480e7c7ff4046fe</id>
<content type='text'>
The core mechanism of drm_gpusvm is HMM, which is fundamentally an
MM side subsystem. A drm_device, enters the picture on the device side at
DMA mapping / GPU bind.

So move struct drm_device from struct drm_gpusvm in drm_gpusvm. Let
drm_gpusvm keep its core neutral and leave device side decisions to
the driver. Make drm_gpusvm a pure MM level object.

  - Move the drm_device from struct drm_gpusvm. drm_device now stored in
    drm_gpusvm_pages.
  - Drop the drm parameter from drm_gpusvm_init()
  - Update the xe call sites in xe_svm_init() and other callers.

drm_device does not disappear from the framework, it is
relocated onto each drm_gpusvm_pages where DMA actually happens.

Suggested-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Reviewed-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Signed-off-by: Honglei Huang &lt;honghuan@amd.com&gt;
Signed-off-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Link: https://patch.msgid.link/20260630102127.392396-6-honghuan@amd.com
</content>
</entry>
<entry>
<title>drm/xe: have xe_svm_range embed one drm_gpusvm_pages</title>
<updated>2026-07-09T11:12:45+00:00</updated>
<author>
<name>Honglei Huang</name>
<email>honghuan@amd.com</email>
</author>
<published>2026-06-30T10:21:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=24c339202c0bc83e9e9e945eeee618ececc6a88b'/>
<id>urn:sha1:24c339202c0bc83e9e9e945eeee618ececc6a88b</id>
<content type='text'>
With drm_gpusvm_pages now self contained, make xe stop relying
on the drm_gpusvm_range pages and take responsibility for the page
lifecycle on the driver side.

Driver side (xe):

  - Embed struct drm_gpusvm_pages in xe_svm_range and route all
    xe accesses through it instead of range-&gt;base.pages.
  - Initialise the embedded pages via drm_gpusvm_init_pages(), which
    binds the owning &amp;xe-&gt;drm up front, and take over the page
    lifecycle: xe_svm_range_get_pages() calls drm_gpusvm_get_pages()
    directly; the notifier event_end and xe_svm_range_free() paths
    drive unmap/free on the embedded pages object.
  - Convert the open-coded userptr pages init in xe_userptr_setup()
    to the same drm_gpusvm_init_pages() helper.
  - Switch xe_svm_range_pages_valid() to drm_gpusvm_pages_valid().

Framework side (drm_gpusvm):

  - Add a small inline drm_gpusvm_init_pages() helper that records the
    owning drm_device and initialises the per-pages state, giving
    drivers a single hook to extend.
  - Export drm_gpusvm_pages_valid() to let driver owned pages
    can query mapping state without going through a range.
  - Lifecycle change: drm_gpusvm_range_remove() no longer *triggers*
    unmap/free of the embedded pages. The unmap/free logic itself stays
    in the framework -- drm_gpusvm_free_pages() still performs the DMA
    unmap (as an idempotent backstop) and frees the dma_addr array --
    but the driver now owns *when* it runs, since the driver owns the
    drm_gpusvm_pages object.

Side effect / contract: a driver that owns a drm_gpusvm_pages is now
responsible for its lifecycle: drm_gpusvm_init_pages() before first
use, and drm_gpusvm_free_pages() when the owner goes away. Xe does the
latter from its ops-&gt;range_free callback, which the framework invokes
once the range refcount drops to zero in drm_gpusvm_range_remove().
The timely DMA unmap for the IOMMU security model still happens in the
notifier invalidate path via drm_gpusvm_unmap_pages(); the unmap inside
drm_gpusvm_free_pages() is only a backstop for pages that were never
invalidated.

Suggested-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Reviewed-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Signed-off-by: Honglei Huang &lt;honghuan@amd.com&gt;
Signed-off-by: Matthew Brost &lt;matthew.brost@intel.com&gt;
Link: https://patch.msgid.link/20260630102127.392396-4-honghuan@amd.com
</content>
</entry>
</feed>
