drm/i915/bios: Document the mess around the LFP data tables
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 4 May 2022 15:04:35 +0000 (18:04 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 5 May 2022 15:25:42 +0000 (18:25 +0300)
Document the fact that struct lvds_lfp_data_entry can't be used
directly and instead must be accessed via the data table pointers.

Also remove the bogus comment implying that there might be a
variable number of panel entries in the table. There are always
exactly 16.

Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220504150440.13748-5-ville.syrjala@linux.intel.com
drivers/gpu/drm/i915/display/intel_vbt_defs.h

index 2554f4b..4b98bab 100644 (file)
@@ -735,7 +735,7 @@ struct lvds_lfp_data_ptr {
 } __packed;
 
 struct bdb_lvds_lfp_data_ptrs {
-       u8 lvds_entries; /* followed by one or more lvds_data_ptr structs */
+       u8 lvds_entries;
        struct lvds_lfp_data_ptr ptr[16];
        struct lvds_lfp_data_ptr_table panel_name; /* 156-163? */
 } __packed;
@@ -769,6 +769,11 @@ struct lvds_pnp_id {
        u8 mfg_year;
 } __packed;
 
+/*
+ * For reference only. fp_timing has variable size so
+ * the data must be accessed using the data table pointers.
+ * Do not use this directly!
+ */
 struct lvds_lfp_data_entry {
        struct lvds_fp_timing fp_timing;
        struct lvds_dvo_timing dvo_timing;