[Intel-gfx] [PATCH 2/3] drm: Add Wrapper Functions for ELD SAD Extraction

Mitul Golani mitulkumar.ajitkumar.golani at intel.com
Mon Aug 21 16:00:03 UTC 2023


Add wrapper functions to facilitate extracting Short Audio
Descriptor (SAD) information from EDID-Like Data (ELD) pointers
with different constness requirements.

1. `drm_eld_sad`: This function returns a constant `uint8_t`
pointer and wraps the main extraction function, allowing access
to SAD information while maintaining const correctness.

2. `drm_extract_sad_from_eld`: This function returns a mutable
`uint8_t` pointer and implements the core logic for extracting
SAD from the provided ELD pointer. It performs version and
maximum channel checks to ensure proper extraction.

These wrapper functions provide flexibility to the codebase,
allowing users to access SAD information while adhering to
const correctness when needed and modifying the pointer when
required.

Signed-off-by: Mitul Golani <mitulkumar.ajitkumar.golani at intel.com>
---
 include/drm/drm_edid.h | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h
index 48e93f909ef6..626bc0d542eb 100644
--- a/include/drm/drm_edid.h
+++ b/include/drm/drm_edid.h
@@ -418,11 +418,7 @@ static inline int drm_eld_mnl(const uint8_t *eld)
 	return (eld[DRM_ELD_CEA_EDID_VER_MNL] & DRM_ELD_MNL_MASK) >> DRM_ELD_MNL_SHIFT;
 }
 
-/**
- * drm_eld_sad - Get ELD SAD structures.
- * @eld: pointer to an eld memory structure with sad_count set
- */
-static inline const uint8_t *drm_eld_sad(const uint8_t *eld)
+static uint8_t *drm_extract_sad_from_eld(uint8_t *eld)
 {
 	unsigned int ver, mnl;
 
@@ -437,6 +433,15 @@ static inline const uint8_t *drm_eld_sad(const uint8_t *eld)
 	return eld + DRM_ELD_CEA_SAD(mnl, 0);
 }
 
+/**
+ * drm_eld_sad - Get ELD SAD structures.
+ * @eld: pointer to an eld memory structure with sad_count set
+ */
+static inline const uint8_t *drm_eld_sad(const uint8_t *eld)
+{
+	return drm_extract_sad_from_eld((uint8_t *)eld);
+}
+
 /**
  * drm_eld_sad_count - Get ELD SAD count.
  * @eld: pointer to an eld memory structure with sad_count set
-- 
2.25.1



More information about the Intel-gfx mailing list