summaryrefslogtreecommitdiff
path: root/include/drm
diff options
context:
space:
mode:
authorThomas Zimmermann <tzimmermann@suse.de>2026-04-27 10:49:13 +0200
committerThomas Zimmermann <tzimmermann@suse.de>2026-04-27 10:49:13 +0200
commitcafac16b6207b88ad92fbba1169ae4f43865cb0d (patch)
treee101613185b5571b38c0cb1cd6ad91b45936a125 /include/drm
parent241061119a51423b84dca11e79ee2e178b6163e4 (diff)
parent254f49634ee16a731174d2ae34bc50bd5f45e731 (diff)
downloadlinux-next-cafac16b6207b88ad92fbba1169ae4f43865cb0d.tar.gz
linux-next-cafac16b6207b88ad92fbba1169ae4f43865cb0d.zip
Merge drm/drm-next into drm-misc-next
Getting fixes and updates from v7.1-rc1. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drm_atomic.h3
-rw-r--r--include/drm/intel/intel_lb_mei_interface.h51
2 files changed, 44 insertions, 10 deletions
diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
index f03cd199aee7..8883290cd014 100644
--- a/include/drm/drm_atomic.h
+++ b/include/drm/drm_atomic.h
@@ -1101,7 +1101,8 @@ void drm_state_dump(struct drm_device *dev, struct drm_printer *p);
for_each_if ((__state)->colorops[__i].ptr && \
((colorop) = (__state)->colorops[__i].ptr, \
(void)(colorop) /* Only to avoid unused-but-set-variable warning */, \
- (new_colorop_state) = (__state)->colorops[__i].new_state, 1))
+ (new_colorop_state) = (__state)->colorops[__i].new_state,\
+ (void)(new_colorop_state) /* Only to avoid unused-but-set-variable warning */, 1))
/**
* for_each_oldnew_plane_in_state - iterate over all planes in an atomic update
diff --git a/include/drm/intel/intel_lb_mei_interface.h b/include/drm/intel/intel_lb_mei_interface.h
index 0850738a30fc..7f533ac7cc10 100644
--- a/include/drm/intel/intel_lb_mei_interface.h
+++ b/include/drm/intel/intel_lb_mei_interface.h
@@ -6,6 +6,7 @@
#ifndef _INTEL_LB_MEI_INTERFACE_H_
#define _INTEL_LB_MEI_INTERFACE_H_
+#include <linux/bits.h>
#include <linux/types.h>
struct device;
@@ -21,9 +22,11 @@ struct device;
/**
* enum intel_lb_type - enum to determine late binding payload type
* @INTEL_LB_TYPE_FAN_CONTROL: Fan controller configuration
+ * @INTEL_LB_TYPE_OCODE: Ocode firmware
*/
enum intel_lb_type {
INTEL_LB_TYPE_FAN_CONTROL = 1,
+ INTEL_LB_TYPE_OCODE = 3,
};
/**
@@ -36,16 +39,46 @@ enum intel_lb_type {
* @INTEL_LB_STATUS_INVALID_SIGNATURE: Payload has an invalid or untrusted signature
* @INTEL_LB_STATUS_INVALID_PAYLOAD: Payload contents are not accepted by firmware
* @INTEL_LB_STATUS_TIMEOUT: Operation timed out before completion
+ * @INTEL_LB_STATUS_BUFFER_TOO_SMALL: Buffer provided is smaller when expected
+ * @INTEL_LB_STATUS_INTERNAL_ERROR: Internal firmware error
+ * @INTEL_LB_STATUS_INVALID_FPT_TABLE: Invalid firmware format table
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_VERIFICATION_ERROR: Error in signature verification
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_INVALID_CPD: Invalid CPD
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_FW_VERSION_MISMATCH: Firmware version mismatch
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_INVALID_MANIFEST: Invalid firmware manifest
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_INVALID_HASH: Wrong hash in signature
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_BINDING_TYPE_MISMATCH: Wrong firmware type provided
+ * @INTEL_LB_STATUS_SIGNED_PAYLOAD_HANDLE_SVN_FAILED: SVN check failed
+ * @INTEL_LB_STATUS_DESTINATION_MBOX_FAILURE: Failed to send datat to destination
+ * @INTEL_LB_STATUS_MISSING_LOADING_PATCH: No loading patch found
+ * @INTEL_LB_STATUS_INVALID_COMMAND: Invalid command number
+ * @INTEL_LB_STATUS_INVALID_HECI_HEADER: Invalid transport header
+ * @INTEL_LB_STATUS_IP_ERROR_START: Base for internal errors
*/
enum intel_lb_status {
- INTEL_LB_STATUS_SUCCESS = 0,
- INTEL_LB_STATUS_4ID_MISMATCH = 1,
- INTEL_LB_STATUS_ARB_FAILURE = 2,
- INTEL_LB_STATUS_GENERAL_ERROR = 3,
- INTEL_LB_STATUS_INVALID_PARAMS = 4,
- INTEL_LB_STATUS_INVALID_SIGNATURE = 5,
- INTEL_LB_STATUS_INVALID_PAYLOAD = 6,
- INTEL_LB_STATUS_TIMEOUT = 7,
+ INTEL_LB_STATUS_SUCCESS = 0,
+ INTEL_LB_STATUS_4ID_MISMATCH = 1,
+ INTEL_LB_STATUS_ARB_FAILURE = 2,
+ INTEL_LB_STATUS_GENERAL_ERROR = 3,
+ INTEL_LB_STATUS_INVALID_PARAMS = 4,
+ INTEL_LB_STATUS_INVALID_SIGNATURE = 5,
+ INTEL_LB_STATUS_INVALID_PAYLOAD = 6,
+ INTEL_LB_STATUS_TIMEOUT = 7,
+ INTEL_LB_STATUS_BUFFER_TOO_SMALL = 8,
+ INTEL_LB_STATUS_INTERNAL_ERROR = 9,
+ INTEL_LB_STATUS_INVALID_FPT_TABLE = 10,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_VERIFICATION_ERROR = 11,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_INVALID_CPD = 12,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_FW_VERSION_MISMATCH = 13,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_INVALID_MANIFEST = 14,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_INVALID_HASH = 15,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_BINDING_TYPE_MISMATCH = 16,
+ INTEL_LB_STATUS_SIGNED_PAYLOAD_HANDLE_SVN_FAILED = 17,
+ INTEL_LB_STATUS_DESTINATION_MBOX_FAILURE = 18,
+ INTEL_LB_STATUS_MISSING_LOADING_PATCH = 19,
+ INTEL_LB_STATUS_INVALID_COMMAND = 20,
+ INTEL_LB_STATUS_INVALID_HECI_HEADER = 21,
+ INTEL_LB_STATUS_IP_ERROR_START = BIT(31),
};
/**
@@ -62,7 +95,7 @@ struct intel_lb_component_ops {
* @payload_size: Payload buffer size in bytes
*
* Return: 0 success, negative errno value on transport failure,
- * positive status returned by firmware
+ * positive error status returned by firmware
*/
int (*push_payload)(struct device *dev, u32 type, u32 flags,
const void *payload, size_t payload_size);