Commit db49296b authored by Tvrtko Ursulin's avatar Tvrtko Ursulin

drm/i915: Shrink TV modes const data

Make struct video_levels and struct tv_mode use data types
of sufficient width to save approximately one kilobyte in
the .rodata section.

v2: Do not align struct members. (Jani Nikula, Joonas Lahtinen)
Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1476353366-13931-1-git-send-email-tvrtko.ursulin@linux.intel.com
parent ae9400ca
...@@ -86,7 +86,8 @@ struct intel_tv { ...@@ -86,7 +86,8 @@ struct intel_tv {
}; };
struct video_levels { struct video_levels {
int blank, black, burst; u16 blank, black;
u8 burst;
}; };
struct color_conversion { struct color_conversion {
...@@ -339,34 +340,43 @@ static const struct video_levels component_levels = { ...@@ -339,34 +340,43 @@ static const struct video_levels component_levels = {
struct tv_mode { struct tv_mode {
const char *name; const char *name;
int clock;
int refresh; /* in millihertz (for precision) */ u32 clock;
u16 refresh; /* in millihertz (for precision) */
u32 oversample; u32 oversample;
int hsync_end, hblank_start, hblank_end, htotal; u8 hsync_end;
bool progressive, trilevel_sync, component_only; u16 hblank_start, hblank_end, htotal;
int vsync_start_f1, vsync_start_f2, vsync_len; bool progressive : 1, trilevel_sync : 1, component_only : 1;
bool veq_ena; u8 vsync_start_f1, vsync_start_f2, vsync_len;
int veq_start_f1, veq_start_f2, veq_len; bool veq_ena : 1;
int vi_end_f1, vi_end_f2, nbr_end; u8 veq_start_f1, veq_start_f2, veq_len;
bool burst_ena; u8 vi_end_f1, vi_end_f2;
int hburst_start, hburst_len; u16 nbr_end;
int vburst_start_f1, vburst_end_f1; bool burst_ena : 1;
int vburst_start_f2, vburst_end_f2; u8 hburst_start, hburst_len;
int vburst_start_f3, vburst_end_f3; u8 vburst_start_f1;
int vburst_start_f4, vburst_end_f4; u16 vburst_end_f1;
u8 vburst_start_f2;
u16 vburst_end_f2;
u8 vburst_start_f3;
u16 vburst_end_f3;
u8 vburst_start_f4;
u16 vburst_end_f4;
/* /*
* subcarrier programming * subcarrier programming
*/ */
int dda2_size, dda3_size, dda1_inc, dda2_inc, dda3_inc; u16 dda2_size, dda3_size;
u8 dda1_inc;
u16 dda2_inc, dda3_inc;
u32 sc_reset; u32 sc_reset;
bool pal_burst; bool pal_burst : 1;
/* /*
* blank/black levels * blank/black levels
*/ */
const struct video_levels *composite_levels, *svideo_levels; const struct video_levels *composite_levels, *svideo_levels;
const struct color_conversion *composite_color, *svideo_color; const struct color_conversion *composite_color, *svideo_color;
const u32 *filter_table; const u32 *filter_table;
int max_srcw; u16 max_srcw;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment