diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2015-01-16 08:23:03 -0800 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2015-01-16 08:23:03 -0800 |
commit | a993b9a192db1490e6388b9934627addf6e9cfc8 (patch) | |
tree | e96b20a8fdaa1a51e14f6a24f107dd7c50640fa2 | |
parent | e99353e41f4ed8a7883bf0c7d2d22b3844483050 (diff) |
346.35346.35
-rw-r--r-- | doc/version.mk | 2 | ||||
-rw-r--r-- | samples/version.mk | 2 | ||||
-rw-r--r-- | src/gtk+-2.x/ctkdisplayconfig.c | 23 | ||||
-rw-r--r-- | src/gtk+-2.x/ctkvdpau.c | 52 | ||||
-rw-r--r-- | src/libXNVCtrl/NVCtrl.h | 6 | ||||
-rw-r--r-- | src/libXNVCtrl/version.mk | 2 | ||||
-rw-r--r-- | src/parse.c | 2 | ||||
-rw-r--r-- | src/version.h | 2 | ||||
-rw-r--r-- | src/version.mk | 2 | ||||
-rw-r--r-- | version.mk | 2 |
10 files changed, 62 insertions, 33 deletions
diff --git a/doc/version.mk b/doc/version.mk index b4c796d..ad8d06d 100644 --- a/doc/version.mk +++ b/doc/version.mk @@ -1 +1 @@ -NVIDIA_VERSION = 346.22 +NVIDIA_VERSION = 346.35 diff --git a/samples/version.mk b/samples/version.mk index b4c796d..ad8d06d 100644 --- a/samples/version.mk +++ b/samples/version.mk @@ -1 +1 @@ -NVIDIA_VERSION = 346.22 +NVIDIA_VERSION = 346.35 diff --git a/src/gtk+-2.x/ctkdisplayconfig.c b/src/gtk+-2.x/ctkdisplayconfig.c index bd5d657..b6c5450 100644 --- a/src/gtk+-2.x/ctkdisplayconfig.c +++ b/src/gtk+-2.x/ctkdisplayconfig.c @@ -4944,7 +4944,8 @@ static gint validation_auto_fix(CtkDisplayConfig *ctk_object) * **/ -static gchar * validate_screen(nvScreenPtr screen) +static gchar * validate_screen(nvScreenPtr screen, + gboolean *can_ignore_error) { nvDisplayPtr display; nvModePtr mode; @@ -4957,6 +4958,7 @@ static gchar * validate_screen(nvScreenPtr screen) gchar bullet[8]; // UTF8 Bullet string int len; + gboolean is_implicit; @@ -4969,6 +4971,7 @@ static gchar * validate_screen(nvScreenPtr screen) /* Count the number of display devices used in the metamode */ num_displays = 0; + is_implicit = TRUE; for (display = screen->displays; display; display = display->next_in_screen) { @@ -4979,6 +4982,11 @@ static gchar * validate_screen(nvScreenPtr screen) } if (mode->modeline) { num_displays++; + } else if (mode->metamode) { + is_implicit = is_implicit && + (mode->metamode->source == METAMODE_SOURCE_IMPLICIT); + } else { + is_implicit = FALSE; } } @@ -4992,6 +5000,7 @@ static gchar * validate_screen(nvScreenPtr screen) g_free(err_str); g_free(tmp); err_str = tmp2; + *can_ignore_error = *can_ignore_error && is_implicit; } @@ -5005,6 +5014,7 @@ static gchar * validate_screen(nvScreenPtr screen) g_free(err_str); g_free(tmp); err_str = tmp2; + *can_ignore_error = FALSE; } } @@ -5033,11 +5043,12 @@ static int validate_layout(CtkDisplayConfig *ctk_object, int validation_type) gchar *tmp; gint result; int num_absolute = 0; + gboolean can_ignore_error = TRUE; /* Validate each screen and count the number of screens using abs. pos. */ for (screen = layout->screens; screen; screen = screen->next_in_layout) { - err_str = validate_screen(screen); + err_str = validate_screen(screen, &can_ignore_error); if (err_str) { tmp = g_strconcat((err_strs ? err_strs : ""), err_str, NULL); g_free(err_strs); @@ -5081,6 +5092,14 @@ static int validate_layout(CtkDisplayConfig *ctk_object, int validation_type) return 1; } + /* Layout is not valid but inconsistencies are only due to implicit + * metamodes not having valid displays so we will ignore them. + */ + if (err_strs && can_ignore_error) { + g_free(err_strs); + return 1; + } + /* Layout is not valid, ask the user what we should do */ gtk_text_buffer_set_text (GTK_TEXT_BUFFER(ctk_object->buf_validation_override), err_strs, -1); diff --git a/src/gtk+-2.x/ctkvdpau.c b/src/gtk+-2.x/ctkvdpau.c index a8b074c..1b076fc 100644 --- a/src/gtk+-2.x/ctkvdpau.c +++ b/src/gtk+-2.x/ctkvdpau.c @@ -161,25 +161,30 @@ static int queryBaseInfo(CtkVDPAU *ctk_vdpau, VdpDevice device, VdpGetProcAddress *getProcAddress) { static const Desc decoder_list[] = { - {"MPEG1", VDP_DECODER_PROFILE_MPEG1, 0x01}, - {"MPEG2", VDP_DECODER_PROFILE_MPEG2_SIMPLE, 0x02}, - {"MPEG2", VDP_DECODER_PROFILE_MPEG2_MAIN, 0x02}, - {"H264", VDP_DECODER_PROFILE_H264_BASELINE, 0x04}, - {"H264", VDP_DECODER_PROFILE_H264_MAIN, 0x04}, - {"H264", VDP_DECODER_PROFILE_H264_HIGH, 0x04}, - {"VC1", VDP_DECODER_PROFILE_VC1_SIMPLE, 0x08}, - {"VC1" , VDP_DECODER_PROFILE_VC1_MAIN, 0x08}, - {"VC1", VDP_DECODER_PROFILE_VC1_ADVANCED, 0x08}, - {"MPEG4", VDP_DECODER_PROFILE_MPEG4_PART2_SP, 0x10}, - {"MPEG4", VDP_DECODER_PROFILE_MPEG4_PART2_ASP, 0x10}, - {"DIVX4", VDP_DECODER_PROFILE_DIVX4_QMOBILE, 0x20}, - {"DIVX4", VDP_DECODER_PROFILE_DIVX4_MOBILE, 0x20}, - {"DIVX4", VDP_DECODER_PROFILE_DIVX4_HOME_THEATER, 0x20}, - {"DIVX4", VDP_DECODER_PROFILE_DIVX4_HD_1080P, 0x20}, - {"DIVX5", VDP_DECODER_PROFILE_DIVX5_QMOBILE, 0x40}, - {"DIVX5", VDP_DECODER_PROFILE_DIVX5_MOBILE, 0x40}, - {"DIVX5", VDP_DECODER_PROFILE_DIVX5_HOME_THEATER, 0x40}, - {"DIVX5", VDP_DECODER_PROFILE_DIVX5_HD_1080P, 0x40}, + {"MPEG1", VDP_DECODER_PROFILE_MPEG1, 0x01}, + {"MPEG2", VDP_DECODER_PROFILE_MPEG2_SIMPLE, 0x02}, + {"MPEG2", VDP_DECODER_PROFILE_MPEG2_MAIN, 0x02}, + {"H264", VDP_DECODER_PROFILE_H264_BASELINE, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_MAIN, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_HIGH, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_EXTENDED, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_PROGRESSIVE_HIGH, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_CONSTRAINED_HIGH, 0x04}, + {"H264", VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE, 0x04}, + {"VC1", VDP_DECODER_PROFILE_VC1_SIMPLE, 0x08}, + {"VC1" , VDP_DECODER_PROFILE_VC1_MAIN, 0x08}, + {"VC1", VDP_DECODER_PROFILE_VC1_ADVANCED, 0x08}, + {"MPEG4", VDP_DECODER_PROFILE_MPEG4_PART2_SP, 0x10}, + {"MPEG4", VDP_DECODER_PROFILE_MPEG4_PART2_ASP, 0x10}, + {"DIVX4", VDP_DECODER_PROFILE_DIVX4_QMOBILE, 0x20}, + {"DIVX4", VDP_DECODER_PROFILE_DIVX4_MOBILE, 0x20}, + {"DIVX4", VDP_DECODER_PROFILE_DIVX4_HOME_THEATER, 0x20}, + {"DIVX4", VDP_DECODER_PROFILE_DIVX4_HD_1080P, 0x20}, + {"DIVX5", VDP_DECODER_PROFILE_DIVX5_QMOBILE, 0x40}, + {"DIVX5", VDP_DECODER_PROFILE_DIVX5_MOBILE, 0x40}, + {"DIVX5", VDP_DECODER_PROFILE_DIVX5_HOME_THEATER, 0x40}, + {"DIVX5", VDP_DECODER_PROFILE_DIVX5_HD_1080P, 0x40}, }; const size_t decoder_list_count = sizeof(decoder_list)/sizeof(Desc); @@ -475,6 +480,15 @@ static int queryDecoderCaps(CtkVDPAU *ctk_vdpau, VdpDevice device, {"H264 Baseline", VDP_DECODER_PROFILE_H264_BASELINE, 0}, {"H264 Main", VDP_DECODER_PROFILE_H264_MAIN, 0}, {"H264 High", VDP_DECODER_PROFILE_H264_HIGH, 0}, + {"H264 Constrained Baseline", + VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE, 0}, + {"H264 Extended", VDP_DECODER_PROFILE_H264_EXTENDED, 0}, + {"H264 Progressive High", + VDP_DECODER_PROFILE_H264_PROGRESSIVE_HIGH, 0}, + {"H264 Constrained High", + VDP_DECODER_PROFILE_H264_CONSTRAINED_HIGH, 0}, + {"H264 High 4:4:4 Predictive", + VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE, 0}, {"VC1 Simple", VDP_DECODER_PROFILE_VC1_SIMPLE, 0}, {"VC1 Main", VDP_DECODER_PROFILE_VC1_MAIN, 0}, {"VC1 Advanced", VDP_DECODER_PROFILE_VC1_ADVANCED, 0}, diff --git a/src/libXNVCtrl/NVCtrl.h b/src/libXNVCtrl/NVCtrl.h index 415da49..94876e2 100644 --- a/src/libXNVCtrl/NVCtrl.h +++ b/src/libXNVCtrl/NVCtrl.h @@ -2126,12 +2126,8 @@ #define NV_CTRL_SWITCH_TO_DISPLAYS 276 /* deprecated */ - /* - * NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT - Event that notifies - * when a notebook lid change occurs (i.e. when the lid is opened or - * closed.) This attribute can be queried to retrieve the current - * notebook lid status (opened/closed.) + * NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT - deprecated */ #define NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT 277 /* RW- */ diff --git a/src/libXNVCtrl/version.mk b/src/libXNVCtrl/version.mk index b4c796d..ad8d06d 100644 --- a/src/libXNVCtrl/version.mk +++ b/src/libXNVCtrl/version.mk @@ -1 +1 @@ -NVIDIA_VERSION = 346.22 +NVIDIA_VERSION = 346.35 diff --git a/src/parse.c b/src/parse.c index 9ded501..a4b16b1 100644 --- a/src/parse.c +++ b/src/parse.c @@ -92,7 +92,7 @@ const AttributeTableEntry attributeTable[] = { { "HWOverlay", NV_CTRL_HWOVERLAY, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "When a workstation overlay is in use, this value is 1 if the hardware overlay is used, or 0 if the overlay is emulated." }, { "GlyphCache", NV_CTRL_GLYPH_CACHE, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Enable or disable caching of glyphs (text) in video memory." }, { "SwitchToDisplays", NV_CTRL_SWITCH_TO_DISPLAYS, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,1,0,0,1} }, "DEPRECATED." }, - { "NotebookDisplayChangeLidEvent", NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Reports notebook lid open/close events." }, + { "NotebookDisplayChangeLidEvent", NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,0,0,0,0} }, "DEPRECATED." }, { "NotebookInternalLCD", NV_CTRL_NOTEBOOK_INTERNAL_LCD, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,1,0,0,0} }, "DEPRECATED." }, { "Depth30Allowed", NV_CTRL_DEPTH_30_ALLOWED, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Returns whether the NVIDIA X driver supports depth 30 on the specified X screen or GPU." }, { "NoScanout", NV_CTRL_NO_SCANOUT, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Returns whether the special \"NoScanout\" mode is enabled on the specified X screen or GPU." }, diff --git a/src/version.h b/src/version.h index d93eab3..f2586a4 100644 --- a/src/version.h +++ b/src/version.h @@ -1 +1 @@ -#define NVIDIA_VERSION "346.22" +#define NVIDIA_VERSION "346.35" diff --git a/src/version.mk b/src/version.mk index b4c796d..ad8d06d 100644 --- a/src/version.mk +++ b/src/version.mk @@ -1 +1 @@ -NVIDIA_VERSION = 346.22 +NVIDIA_VERSION = 346.35 @@ -1 +1 @@ -NVIDIA_VERSION = 346.22 +NVIDIA_VERSION = 346.35 |