]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
mei: late_bind: add late binding component driver
authorAlexander Usyskin <alexander.usyskin@intel.com>
Fri, 5 Sep 2025 15:49:46 +0000 (21:19 +0530)
committerLucas De Marchi <lucas.demarchi@intel.com>
Thu, 18 Sep 2025 16:32:00 +0000 (09:32 -0700)
commit741eeabb7c78c555c4c8e39df91b2b8e8d6f5ec6
treeb785e8f6100a762d1dd21e468669af0abbf45b07
parent8d5b7009aabc27e626e4167fedf1e1c1c3d6b143
mei: late_bind: add late binding component driver

Introduce a new MEI client driver to support Late Binding firmware
upload/update for Intel discrete graphics platforms.

Late Binding is a runtime firmware upload/update mechanism that allows
payloads, such as fan control and voltage regulator, to be securely
delivered and applied without requiring SPI flash updates or
system reboots. This driver enables the Xe graphics driver and other
user-space tools to push such firmware blobs to the authentication
firmware via the MEI interface.

The driver handles authentication, versioning, and communication
with the authentication firmware, which in turn coordinates with
the PUnit/PCODE to apply the payload.

This is a foundational component for enabling dynamic, secure,
and re-entrant configuration updates on platforms like Battlemage.

Cc: Badal Nilawar <badal.nilawar@intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Badal Nilawar <badal.nilawar@intel.com>
Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/20250905154953.3974335-3-badal.nilawar@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/misc/mei/Kconfig
drivers/misc/mei/Makefile
drivers/misc/mei/mei_lb.c [new file with mode: 0644]
include/drm/intel/i915_component.h
include/drm/intel/intel_lb_mei_interface.h [new file with mode: 0644]