mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-10 15:58:13 -04:00
drm/edid: use a temp variable for sads to drop one level of dereferences
Use a temporary variable struct cea_sad *, instead of using struct cea_sad ** directly with the double dereferences. It's arguably easier on the eyes, and drops a set of parenthesis too. Cc: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com> Reviewed-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/b6e2f295ae5491c2bb0f528508f0f5fca921dc77.1698747331.git.jani.nikula@intel.com
This commit is contained in:
@@ -5591,7 +5591,7 @@ static void drm_edid_to_eld(struct drm_connector *connector,
|
||||
}
|
||||
|
||||
static int _drm_edid_to_sad(const struct drm_edid *drm_edid,
|
||||
struct cea_sad **sads)
|
||||
struct cea_sad **psads)
|
||||
{
|
||||
const struct cea_db *db;
|
||||
struct cea_db_iter iter;
|
||||
@@ -5600,19 +5600,21 @@ static int _drm_edid_to_sad(const struct drm_edid *drm_edid,
|
||||
cea_db_iter_edid_begin(drm_edid, &iter);
|
||||
cea_db_iter_for_each(db, &iter) {
|
||||
if (cea_db_tag(db) == CTA_DB_AUDIO) {
|
||||
struct cea_sad *sads;
|
||||
int j;
|
||||
|
||||
count = cea_db_payload_len(db) / 3; /* SAD is 3B */
|
||||
*sads = kcalloc(count, sizeof(**sads), GFP_KERNEL);
|
||||
if (!*sads)
|
||||
sads = kcalloc(count, sizeof(*sads), GFP_KERNEL);
|
||||
*psads = sads;
|
||||
if (!sads)
|
||||
return -ENOMEM;
|
||||
for (j = 0; j < count; j++) {
|
||||
const u8 *sad = &db->data[j * 3];
|
||||
|
||||
(*sads)[j].format = (sad[0] & 0x78) >> 3;
|
||||
(*sads)[j].channels = sad[0] & 0x7;
|
||||
(*sads)[j].freq = sad[1] & 0x7F;
|
||||
(*sads)[j].byte2 = sad[2];
|
||||
sads[j].format = (sad[0] & 0x78) >> 3;
|
||||
sads[j].channels = sad[0] & 0x7;
|
||||
sads[j].freq = sad[1] & 0x7F;
|
||||
sads[j].byte2 = sad[2];
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user