Lines Matching defs:descriptor

3013 static bool is_display_descriptor(const struct detailed_timing *descriptor, u8 type)
3015 BUILD_BUG_ON(offsetof(typeof(*descriptor), pixel_clock) != 0);
3016 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.pad1) != 2);
3017 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.type) != 3);
3019 return descriptor->pixel_clock == 0 &&
3020 descriptor->data.other_data.pad1 == 0 &&
3021 descriptor->data.other_data.type == type;
3024 static bool is_detailed_timing_descriptor(const struct detailed_timing *descriptor)
3026 BUILD_BUG_ON(offsetof(typeof(*descriptor), pixel_clock) != 0);
3028 return descriptor->pixel_clock != 0;
3091 is_rb(const struct detailed_timing *descriptor, void *data)
3095 if (!is_display_descriptor(descriptor, EDID_DETAIL_MONITOR_RANGE))
3098 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.flags) != 10);
3099 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.formula.cvt.flags) != 15);
3101 if (descriptor->data.other_data.data.range.flags == DRM_EDID_CVT_SUPPORT_FLAG &&
3102 descriptor->data.other_data.data.range.formula.cvt.flags & DRM_EDID_CVT_FLAGS_REDUCED_BLANKING)
3121 find_gtf2(const struct detailed_timing *descriptor, void *data)
3125 if (!is_display_descriptor(descriptor, EDID_DETAIL_MONITOR_RANGE))
3128 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.flags) != 10);
3130 if (descriptor->data.other_data.data.range.flags == DRM_EDID_SECONDARY_GTF_SUPPORT_FLAG)
3131 *res = descriptor;
3138 const struct detailed_timing *descriptor = NULL;
3140 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor);
3142 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.formula.gtf2.hfreq_start_khz) != 12);
3144 return descriptor ? descriptor->data.other_data.data.range.formula.gtf2.hfreq_start_khz * 2 : 0;
3150 const struct detailed_timing *descriptor = NULL;
3152 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor);
3154 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.formula.gtf2.c) != 13);
3156 return descriptor ? descriptor->data.other_data.data.range.formula.gtf2.c : 0;
3162 const struct detailed_timing *descriptor = NULL;
3164 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor);
3166 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.formula.gtf2.m) != 14);
3168 return descriptor ? le16_to_cpu(descriptor->data.other_data.data.range.formula.gtf2.m) : 0;
3174 const struct detailed_timing *descriptor = NULL;
3176 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor);
3178 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.formula.gtf2.k) != 16);
3180 return descriptor ? descriptor->data.other_data.data.range.formula.gtf2.k : 0;
3186 const struct detailed_timing *descriptor = NULL;
3188 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor);
3190 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.formula.gtf2.j) != 17);
3192 return descriptor ? descriptor->data.other_data.data.range.formula.gtf2.j : 0;
3196 get_timing_level(const struct detailed_timing *descriptor, void *data)
3200 if (!is_display_descriptor(descriptor, EDID_DETAIL_MONITOR_RANGE))
3203 BUILD_BUG_ON(offsetof(typeof(*descriptor), data.other_data.data.range.flags) != 10);
3205 switch (descriptor->data.other_data.data.range.flags) {
3227 * If the range descriptor doesn't
6331 * of the range descriptor seems to guarantee that
6335 * range descriptor are not accepted here.