summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Plattner <aplattner@nvidia.com>2016-05-24 12:15:07 -0700
committerAaron Plattner <aplattner@nvidia.com>2016-05-24 12:15:07 -0700
commit4aefa0df8e5806a126f303cb990341e7cda15242 (patch)
tree605553e35b90aacb718f433536c938e07ae7e5e2
parent3a4a584df9f7968813cc5686033108db25c73894 (diff)
367.18367.18
-rw-r--r--doc/version.mk2
-rw-r--r--samples/nv-control-events.c1
-rw-r--r--samples/nv-control-info.c1
-rw-r--r--samples/version.mk2
-rw-r--r--src/gtk+-2.x/ctkdisplaydevice.c112
-rw-r--r--src/gtk+-2.x/ctkevent.c6
-rw-r--r--src/gtk+-2.x/ctkmultisample.c141
-rw-r--r--src/gtk+-2.x/ctkmultisample.h1
-rw-r--r--src/gtk+-2.x/ctkpowermizer.c3
-rw-r--r--src/gtk+-2.x/ctkserver.c13
-rw-r--r--src/libXNVCtrl/NVCtrl.h39
-rw-r--r--src/libXNVCtrl/utils.mk6
-rw-r--r--src/libXNVCtrl/version.mk2
-rw-r--r--src/libXNVCtrlAttributes/NvCtrlAttributes.c2
-rw-r--r--src/parse.c6
-rw-r--r--src/version.h2
-rw-r--r--src/version.mk2
-rw-r--r--utils.mk6
-rw-r--r--version.mk2
19 files changed, 168 insertions, 181 deletions
diff --git a/doc/version.mk b/doc/version.mk
index 5c7a2e0..b04515f 100644
--- a/doc/version.mk
+++ b/doc/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 364.19
+NVIDIA_VERSION = 367.18
diff --git a/samples/nv-control-events.c b/samples/nv-control-events.c
index 6b3dfc4..8e4c23e 100644
--- a/samples/nv-control-events.c
+++ b/samples/nv-control-events.c
@@ -500,7 +500,6 @@ static AttrEntry attr_table[] = {
MAKE_ENTRY(NV_CTRL_SYNC_TO_VBLANK),
MAKE_ENTRY(NV_CTRL_LOG_ANISO),
MAKE_ENTRY(NV_CTRL_FSAA_MODE),
- MAKE_ENTRY(NV_CTRL_TEXTURE_SHARPEN),
MAKE_ENTRY(NV_CTRL_UBB),
MAKE_ENTRY(NV_CTRL_OVERLAY),
MAKE_ENTRY(NV_CTRL_STEREO),
diff --git a/samples/nv-control-info.c b/samples/nv-control-info.c
index d6a7049..bfc5045 100644
--- a/samples/nv-control-info.c
+++ b/samples/nv-control-info.c
@@ -52,7 +52,6 @@ static const char *attr_int_table[NV_CTRL_LAST_ATTRIBUTE + 1] = {
MAKE_ENTRY(NV_CTRL_SYNC_TO_VBLANK),
MAKE_ENTRY(NV_CTRL_LOG_ANISO),
MAKE_ENTRY(NV_CTRL_FSAA_MODE),
- MAKE_ENTRY(NV_CTRL_TEXTURE_SHARPEN),
MAKE_ENTRY(NV_CTRL_UBB),
MAKE_ENTRY(NV_CTRL_OVERLAY),
MAKE_ENTRY(NV_CTRL_STEREO),
diff --git a/samples/version.mk b/samples/version.mk
index 5c7a2e0..b04515f 100644
--- a/samples/version.mk
+++ b/samples/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 364.19
+NVIDIA_VERSION = 367.18
diff --git a/src/gtk+-2.x/ctkdisplaydevice.c b/src/gtk+-2.x/ctkdisplaydevice.c
index 4b4e62d..c62dd0e 100644
--- a/src/gtk+-2.x/ctkdisplaydevice.c
+++ b/src/gtk+-2.x/ctkdisplaydevice.c
@@ -60,6 +60,9 @@ static gboolean update_chip_info(InfoEntry *entry);
static gboolean update_signal_info(InfoEntry *entry);
static gboolean update_link_info(InfoEntry *entry);
static gboolean update_refresh_rate(InfoEntry *entry);
+static gboolean update_connector_type_info(InfoEntry *entry);
+static gboolean update_multistream_info(InfoEntry *entry);
+static gboolean update_audio_info(InfoEntry *entry);
static gboolean register_link_events(InfoEntry *entry);
static gboolean unregister_link_events(InfoEntry *entry);
@@ -102,6 +105,15 @@ static const char * __refresh_rate_help =
"The refresh rate displays the rate at which the screen is currently "
"refreshing the image.";
+static const char * __connector_type_help =
+"Report the connector type that the DisplayPort display is using.";
+
+static const char * __multistream_help =
+"Report whether the configured DisplayPort display supports multistream.";
+
+static const char * __audio_help =
+"Report whether the configured DisplayPort display is capable of playing audio.";
+
typedef gboolean (*InfoEntryFunc)(InfoEntry *entry);
typedef struct {
@@ -155,6 +167,27 @@ static InfoEntryData __info_entry_data[] = {
register_refresh_rate_events,
unregister_refresh_rate_events,
},
+ {
+ "DisplayPort Connector Type",
+ &__connector_type_help,
+ update_connector_type_info,
+ NULL,
+ NULL,
+ },
+ {
+ "DisplayPort Multistream Available",
+ &__multistream_help,
+ update_multistream_info,
+ NULL,
+ NULL,
+ },
+ {
+ "DisplayPort Audio Available",
+ &__audio_help,
+ update_audio_info,
+ NULL,
+ NULL,
+ },
};
GType ctk_display_device_get_type(void)
@@ -727,6 +760,85 @@ static gboolean update_link_info(InfoEntry *entry)
}
+static gboolean update_connector_type_info(InfoEntry *entry)
+{
+ CtkDisplayDevice *ctk_object = entry->ctk_object;
+ CtrlTarget *ctrl_target = ctk_object->ctrl_target;
+ ReturnStatus ret;
+ gint val;
+ const char *str;
+
+ ret = NvCtrlGetAttribute(ctrl_target,
+ NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE, &val);
+ if (ret != NvCtrlSuccess) {
+ return FALSE;
+ }
+
+ switch (val) {
+ case NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_DISPLAYPORT:
+ str = "DisplayPort";
+ break;
+ case NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_HDMI:
+ str = "HDMI";
+ break;
+ case NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_DVI:
+ str = "DVI";
+ break;
+ case NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_VGA:
+ str = "VGA";
+ break;
+ default:
+ case NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_UNKNOWN:
+ str = "Unknown";
+ break;
+ }
+
+ gtk_label_set_text(GTK_LABEL(entry->txt), str);
+
+ return TRUE;
+}
+
+
+static gboolean update_multistream_info(InfoEntry *entry)
+{
+ CtkDisplayDevice *ctk_object = entry->ctk_object;
+ CtrlTarget *ctrl_target = ctk_object->ctrl_target;
+ ReturnStatus ret;
+ gint val;
+
+ ret = NvCtrlGetAttribute(ctrl_target, NV_CTRL_DISPLAYPORT_IS_MULTISTREAM,
+ &val);
+ if (ret != NvCtrlSuccess) {
+ return FALSE;
+ }
+
+ gtk_label_set_text(GTK_LABEL(entry->txt), val ? "Yes": "No");
+
+ return TRUE;
+}
+
+static gboolean update_audio_info(InfoEntry *entry)
+{
+ CtkDisplayDevice *ctk_object = entry->ctk_object;
+ CtrlTarget *ctrl_target = ctk_object->ctrl_target;
+ ReturnStatus ret;
+ gint val;
+
+ ret = NvCtrlGetAttribute(ctrl_target,
+ NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE,
+ &val);
+ if (ret != NvCtrlSuccess) {
+ return FALSE;
+ }
+
+ gtk_label_set_text(GTK_LABEL(entry->txt), val ? "Yes": "No");
+
+ return TRUE;
+}
+
+
+
+
static gboolean update_refresh_rate(InfoEntry *entry)
{
diff --git a/src/gtk+-2.x/ctkevent.c b/src/gtk+-2.x/ctkevent.c
index 17a9127..97aea2a 100644
--- a/src/gtk+-2.x/ctkevent.c
+++ b/src/gtk+-2.x/ctkevent.c
@@ -126,7 +126,6 @@ static void ctk_event_class_init(CtkEventClass *ctk_event_class)
MAKE_SIGNAL(NV_CTRL_SYNC_TO_VBLANK);
MAKE_SIGNAL(NV_CTRL_LOG_ANISO);
MAKE_SIGNAL(NV_CTRL_FSAA_MODE);
- MAKE_SIGNAL(NV_CTRL_TEXTURE_SHARPEN);
MAKE_SIGNAL(NV_CTRL_UBB);
MAKE_SIGNAL(NV_CTRL_OVERLAY);
MAKE_SIGNAL(NV_CTRL_STEREO);
@@ -340,6 +339,9 @@ static void ctk_event_class_init(CtkEventClass *ctk_event_class)
MAKE_SIGNAL(NV_CTRL_THERMAL_COOLER_CURRENT_LEVEL);
MAKE_SIGNAL(NV_CTRL_STEREO_SWAP_MODE);
MAKE_SIGNAL(NV_CTRL_GPU_FRAMELOCK_FIRMWARE_UNSUPPORTED);
+ MAKE_SIGNAL(NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE);
+ MAKE_SIGNAL(NV_CTRL_DISPLAYPORT_IS_MULTISTREAM);
+ MAKE_SIGNAL(NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE);
#undef MAKE_SIGNAL
/*
@@ -349,7 +351,7 @@ static void ctk_event_class_init(CtkEventClass *ctk_event_class)
* knows about.
*/
-#if NV_CTRL_LAST_ATTRIBUTE != NV_CTRL_GPU_FRAMELOCK_FIRMWARE_UNSUPPORTED
+#if NV_CTRL_LAST_ATTRIBUTE != NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE
#warning "There are attributes that do not emit signals!"
#endif
diff --git a/src/gtk+-2.x/ctkmultisample.c b/src/gtk+-2.x/ctkmultisample.c
index 2e9eb69..07628cd 100644
--- a/src/gtk+-2.x/ctkmultisample.c
+++ b/src/gtk+-2.x/ctkmultisample.c
@@ -93,14 +93,6 @@ static void log_aniso_value_changed(GtkRange *range, gpointer user_data);
static void log_aniso_range_update_received(GObject *object, CtrlEvent *event,
gpointer user_data);
-static void post_texture_sharpening_toggled(CtkMultisample *ctk_multisample,
- gboolean enabled);
-
-static void texture_sharpening_toggled(GtkWidget *widget, gpointer user_data);
-
-static void texture_sharpening_update_received(GObject *object, CtrlEvent *event,
- gpointer user_data);
-
static void update_fxaa_from_fsaa_change(CtkMultisample *ctk_multisample,
int fsaa_value);
static void update_fsaa_from_fxaa_change(CtkMultisample *ctk_multisample,
@@ -142,11 +134,6 @@ static const char *__fxaa_enable_help =
"FXAA disables triple buffering, antialiasing, and other antialiasing "
"setting methods.";
-static const char *__texture_sharpening_help =
-"To improve image quality, select this option "
-"to sharpen textures when running OpenGL applications "
-"with antialiasing enabled.";
-
/*
* bits indicating which attributes require documenting in the online
@@ -173,7 +160,6 @@ static const char *__texture_sharpening_help =
#define __FSAA_ENHANCE (1 << (NV_CTRL_FSAA_MODE_MAX + 2))
#define __FXAA (1 << (NV_CTRL_FSAA_MODE_MAX + 3))
#define __LOG_ANISO_RANGE (1 << (NV_CTRL_FSAA_MODE_MAX + 4))
-#define __TEXTURE_SHARPEN (1 << (NV_CTRL_FSAA_MODE_MAX + 5))
#define FRAME_PADDING 5
@@ -513,52 +499,6 @@ GtkWidget *ctk_multisample_new(CtrlTarget *ctrl_target,
}
}
- /*
- * Texture sharpen
- *
- * If one of the supported multisample modes was enabled by the
- * user, this check button controls texture sharpening.
- */
-
- ret = NvCtrlGetAttribute(ctrl_target, NV_CTRL_TEXTURE_SHARPEN, &val);
-
- if (ret == NvCtrlSuccess) {
-
- /* create "TextureSharpening" frame */
-
- frame = gtk_frame_new("Texture Quality");
- gtk_box_pack_start(GTK_BOX(object), frame, FALSE, FALSE, 0);
-
- /* create the vbox to store the widgets inside the frame */
-
- vbox = gtk_vbox_new(FALSE, 5);
- gtk_container_set_border_width(GTK_CONTAINER(vbox), FRAME_PADDING);
- gtk_container_add(GTK_CONTAINER(frame), vbox);
-
- /* "Texture Sharpening" checkbox */
-
- check_button = gtk_check_button_new_with_label("Texture Sharpening");
-
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), val);
-
- gtk_box_pack_start(GTK_BOX(vbox), check_button, FALSE, FALSE, 0);
-
- g_signal_connect(G_OBJECT(check_button), "toggled",
- G_CALLBACK(texture_sharpening_toggled),
- (gpointer) ctk_multisample);
-
- g_signal_connect(G_OBJECT(ctk_event),
- CTK_EVENT_NAME(NV_CTRL_TEXTURE_SHARPEN),
- G_CALLBACK(texture_sharpening_update_received),
- (gpointer) ctk_multisample);
-
- ctk_config_set_tooltip(ctk_config, check_button,
- __texture_sharpening_help);
-
- ctk_multisample->active_attributes |= __TEXTURE_SHARPEN;
- ctk_multisample->texture_sharpening_button = check_button;
- }
-
/* if nothing is available, teardown this object and return NULL */
if (!ctk_multisample->active_attributes) {
@@ -1435,82 +1375,6 @@ static void log_aniso_range_update_received(GObject *object,
/*
- * post_texture_sharpening_toggled() - helper function for
- * texture_sharpening_toggled() and
- * texture_sharpening_update_received(); this does whatever work is
- * necessary after the texture sharpening button has been toggled --
- * currently, just post a statusbar message.
- */
-
-static void post_texture_sharpening_toggled(CtkMultisample *ctk_multisample,
- gboolean enabled)
-{
- ctk_config_statusbar_message(ctk_multisample->ctk_config,
- "Texture sharpening %s.",
- enabled ? "enabled" : "disabled");
-
-} /* post_texture_sharpening_toggled() */
-
-
-
-/*
- * texture_sharpening_toggled() - callback for the "toggled" signal
- * from the texture sharpening check button.
- */
-
-static void texture_sharpening_toggled(GtkWidget *widget, gpointer user_data)
-{
- CtkMultisample *ctk_multisample = CTK_MULTISAMPLE(user_data);
- CtrlTarget *ctrl_target = ctk_multisample->ctrl_target;
- gboolean enabled;
-
- enabled = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
-
- NvCtrlSetAttribute(ctrl_target, NV_CTRL_TEXTURE_SHARPEN, enabled);
-
- post_texture_sharpening_toggled(ctk_multisample, enabled);
-
-} /* texture_sharpening_toggled() */
-
-
-
-/*
- * texture_sharpening_update_received() - callback function for when
- * the NV_CTRL_TEXTURE_SHARPEN attribute is changed by another
- * NV-CONTROL client.
- */
-
-static void texture_sharpening_update_received(GObject *object,
- CtrlEvent *event,
- gpointer user_data)
-{
- CtkMultisample *ctk_multisample;
- GtkToggleButton *button;
-
- if (event->type != CTRL_EVENT_TYPE_INTEGER_ATTRIBUTE) {
- return;
- }
-
- ctk_multisample = CTK_MULTISAMPLE(user_data);
- button = GTK_TOGGLE_BUTTON(ctk_multisample->texture_sharpening_button);
-
- g_signal_handlers_block_by_func(G_OBJECT(button),
- G_CALLBACK(texture_sharpening_toggled),
- (gpointer) ctk_multisample);
-
- gtk_toggle_button_set_active(button, event->int_attr.value);
-
- post_texture_sharpening_toggled(ctk_multisample, event->int_attr.value);
-
- g_signal_handlers_unblock_by_func(G_OBJECT(button),
- G_CALLBACK(texture_sharpening_toggled),
- (gpointer) ctk_multisample);
-
-} /* texture_sharpening_update_received() */
-
-
-
-/*
* ctk_multisample_create_help() - create a GtkTextBuffer describing
* the available image quality options.
*/
@@ -1703,11 +1567,6 @@ GtkTextBuffer *ctk_multisample_create_help(GtkTextTagTable *table,
ctk_help_para(b, &i, "%s", __aniso_slider_help);
}
- if (ctk_multisample->active_attributes & __TEXTURE_SHARPEN) {
- ctk_help_heading(b, &i, "Texture Sharpening");
- ctk_help_para(b, &i, "%s", __texture_sharpening_help);
- }
-
ctk_help_finish(b);
return b;
diff --git a/src/gtk+-2.x/ctkmultisample.h b/src/gtk+-2.x/ctkmultisample.h
index 7ed8270..537b414 100644
--- a/src/gtk+-2.x/ctkmultisample.h
+++ b/src/gtk+-2.x/ctkmultisample.h
@@ -61,7 +61,6 @@ struct _CtkMultisample
GtkWidget *fxaa_enable_check_button;
GtkWidget *log_aniso_app_override_check_button;
GtkWidget *log_aniso_scale;
- GtkWidget *texture_sharpening_button;
CtkDropDownMenu *d;
guint active_attributes;
diff --git a/src/gtk+-2.x/ctkpowermizer.c b/src/gtk+-2.x/ctkpowermizer.c
index 5c9e890..249ce3c 100644
--- a/src/gtk+-2.x/ctkpowermizer.c
+++ b/src/gtk+-2.x/ctkpowermizer.c
@@ -105,7 +105,8 @@ static const char *__editable_performance_levels_table_help =
"performance level, the offset applies to both the minimum and maximum.";
static const char *__gpu_clock_offset_help =
-"This is the amount, in MHz, to over- or under-clock the Graphics Clock.";
+"This is the amount, in MHz, to over- or under-clock the Graphics Clock."
+" The requested offset will be adjusted to the nearest available clock.";
static const char *__memory_transfer_rate_offset_help =
"This is the amount, in MHz, to over- or under-clock the Memory Transfer Rate.";
diff --git a/src/gtk+-2.x/ctkserver.c b/src/gtk+-2.x/ctkserver.c
index 4c8d8a8..e4c21c1 100644
--- a/src/gtk+-2.x/ctkserver.c
+++ b/src/gtk+-2.x/ctkserver.c
@@ -293,11 +293,14 @@ GtkWidget* ctk_server_new(CtrlTarget *ctrl_target,
ret = NvCtrlGetAttribute(ctrl_target, NV_CTRL_ARCHITECTURE, &tmp);
arch = NULL;
if (ret == NvCtrlSuccess) {
- if (tmp == NV_CTRL_ARCHITECTURE_X86) arch = "x86";
- else if (tmp == NV_CTRL_ARCHITECTURE_X86_64) arch = "x86_64";
- else if (tmp == NV_CTRL_ARCHITECTURE_IA64) arch = "ia64";
- else if (tmp == NV_CTRL_ARCHITECTURE_ARM) arch = "ARM";
- else if (tmp == NV_CTRL_ARCHITECTURE_AARCH64) arch = "AArch64";
+ switch (tmp) {
+ case NV_CTRL_ARCHITECTURE_X86: arch = "x86"; break;
+ case NV_CTRL_ARCHITECTURE_X86_64: arch = "x86_64"; break;
+ case NV_CTRL_ARCHITECTURE_IA64: arch = "ia64"; break;
+ case NV_CTRL_ARCHITECTURE_ARM: arch = "ARM"; break;
+ case NV_CTRL_ARCHITECTURE_AARCH64: arch = "AArch64"; break;
+ case NV_CTRL_ARCHITECTURE_PPC64LE: arch = "ppc64le"; break;
+ }
}
if (!arch) arch = "Unknown";
os = g_strdup_printf("%s-%s", os, arch);
diff --git a/src/libXNVCtrl/NVCtrl.h b/src/libXNVCtrl/NVCtrl.h
index 451729d..788f3bd 100644
--- a/src/libXNVCtrl/NVCtrl.h
+++ b/src/libXNVCtrl/NVCtrl.h
@@ -293,17 +293,6 @@
/*
- * NV_CTRL_TEXTURE_SHARPEN - enables texture sharpening for OpenGL
- * clients. This setting is only applied to OpenGL clients that are
- * started after this setting is applied.
- */
-
-#define NV_CTRL_TEXTURE_SHARPEN 12 /* RW-X */
-#define NV_CTRL_TEXTURE_SHARPEN_OFF 0
-#define NV_CTRL_TEXTURE_SHARPEN_ON 1
-
-
-/*
* NV_CTRL_UBB - returns whether UBB is enabled for the specified X
* screen.
*/
@@ -705,6 +694,7 @@
#define NV_CTRL_ARCHITECTURE_IA64 2
#define NV_CTRL_ARCHITECTURE_ARM 3
#define NV_CTRL_ARCHITECTURE_AARCH64 4
+#define NV_CTRL_ARCHITECTURE_PPC64LE 5
/*
@@ -3435,7 +3425,32 @@
#define NV_CTRL_GPU_FRAMELOCK_FIRMWARE_UNSUPPORTED_FALSE 0
#define NV_CTRL_GPU_FRAMELOCK_FIRMWARE_UNSUPPORTED_TRUE 1
-#define NV_CTRL_LAST_ATTRIBUTE NV_CTRL_GPU_FRAMELOCK_FIRMWARE_UNSUPPORTED
+/*
+ * NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE - Returns the connector type used by
+ * a DisplayPort display.
+ */
+
+#define NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE 421 /* R-DG */
+#define NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_UNKNOWN 0
+#define NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_DISPLAYPORT 1
+#define NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_HDMI 2
+#define NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_DVI 3
+#define NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE_VGA 4
+
+/*
+ * NV_CTRL_DISPLAYPORT_IS_MULTISTREAM - Returns multi-stream support for
+ * DisplayPort displays.
+ */
+#define NV_CTRL_DISPLAYPORT_IS_MULTISTREAM 422 /* R-DG */
+
+/*
+ * NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE - Returns whether a DisplayPort
+ * device supports audio.
+ */
+#define NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE 423 /* R-DG */
+
+
+#define NV_CTRL_LAST_ATTRIBUTE NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE
/**************************************************************************/
diff --git a/src/libXNVCtrl/utils.mk b/src/libXNVCtrl/utils.mk
index 958714f..31d40f9 100644
--- a/src/libXNVCtrl/utils.mk
+++ b/src/libXNVCtrl/utils.mk
@@ -54,9 +54,11 @@ HOST_CFLAGS += -Wno-unused-parameter -Wno-format-zero-length
ifeq ($(DEBUG),1)
STRIP_CMD ?= true
+ DO_STRIP ?=
CFLAGS += -O0 -g
else
STRIP_CMD ?= strip
+ DO_STRIP ?= 1
endif
INSTALL ?= install
@@ -154,10 +156,6 @@ OUTPUTDIR_ABSOLUTE ?= $(CURDIR)/$(OUTPUTDIR)
NV_SEPARATE_DEBUG_INFO ?=
NV_KEEP_UNSTRIPPED_BINARIES ?=
-DO_STRIP ?=
-ifneq ($(DEBUG),1)
- DO_STRIP = 1
-endif
NV_QUIET_COMMAND_REMOVED_TARGET_PREFIX ?=
diff --git a/src/libXNVCtrl/version.mk b/src/libXNVCtrl/version.mk
index 5c7a2e0..b04515f 100644
--- a/src/libXNVCtrl/version.mk
+++ b/src/libXNVCtrl/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 364.19
+NVIDIA_VERSION = 367.18
diff --git a/src/libXNVCtrlAttributes/NvCtrlAttributes.c b/src/libXNVCtrlAttributes/NvCtrlAttributes.c
index 609b391..ae7c212 100644
--- a/src/libXNVCtrlAttributes/NvCtrlAttributes.c
+++ b/src/libXNVCtrlAttributes/NvCtrlAttributes.c
@@ -1872,7 +1872,7 @@ NvCtrlEventHandleNextEvent(NvCtrlEventHandle *handle, CtrlEvent *event)
if (xevt_type == TARGET_BINARY_ATTRIBUTE_CHANGED_EVENT) {
XNVCtrlBinaryAttributeChangedEventTarget *nvctrlevent =
- (XNVCtrlBinaryAttributeChangedEventTarget *) &event;
+ (XNVCtrlBinaryAttributeChangedEventTarget *) &xevent;
event->type = CTRL_EVENT_TYPE_BINARY_ATTRIBUTE;
event->target_type = nvctrlevent->target_type;
diff --git a/src/parse.c b/src/parse.c
index 6f1d6d7..c538015 100644
--- a/src/parse.c
+++ b/src/parse.c
@@ -108,7 +108,6 @@ const AttributeTableEntry attributeTable[] = {
{ "SyncToVBlank", NV_CTRL_SYNC_TO_VBLANK, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Enables sync to vertical blanking for OpenGL clients. This setting only takes effect on OpenGL clients started after it is set." },
{ "LogAniso", NV_CTRL_LOG_ANISO, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Enables anisotropic filtering for OpenGL clients; on some NVIDIA hardware, this can only be enabled or disabled; on other hardware different levels of anisotropic filtering can be specified. This setting only takes effect on OpenGL clients started after it is set." },
{ "FSAA", NV_CTRL_FSAA_MODE, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "The full screen antialiasing setting for OpenGL clients. This setting only takes effect on OpenGL clients started after it is set. Enabling antialiasing will disable FXAA." },
- { "TextureSharpen", NV_CTRL_TEXTURE_SHARPEN, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Enables texture sharpening for OpenGL clients. This setting only takes effect on OpenGL clients started after it is set." },
{ "ForceGenericCpu", NV_CTRL_FORCE_GENERIC_CPU, INT_ATTR, {0,0,0,0,1,0}, { .int_flags = {0,0,0,0,0,0,0} }, "NOT SUPPORTED." },
{ "GammaCorrectedAALines", NV_CTRL_OPENGL_AA_LINE_GAMMA, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "For OpenGL clients, allow gamma-corrected antialiased lines to consider variances in the color display capabilities of output devices when rendering smooth lines. Only available on recent Quadro GPUs. This setting only takes effect on OpenGL clients started after it is set." },
{ "TextureClamping", NV_CTRL_TEXTURE_CLAMPING, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Define the behavior of OpenGL texture clamping for unbordered textures. If enabled (1), the conformant behavior is used. If disabled (0), GL_CLAMP is remapped to GL_CLAMP_TO_EDGE to avoid seams in applications that rely on this behavior, which was the only option in some very old hardware." },
@@ -331,6 +330,9 @@ const AttributeTableEntry attributeTable[] = {
{ "CurrentMetaMode", NV_CTRL_STRING_CURRENT_METAMODE_VERSION_2, STR_ATTR, {0,0,0,0,1,0}, {}, "Controls the current MetaMode." },
{ "XineramaInfoOrder", NV_CTRL_STRING_NVIDIA_XINERAMA_INFO_ORDER, STR_ATTR, {0,0,0,0,1,0}, {}, "Controls the nvidiaXineramaInfoOrder." },
{ "BuildModepool", NV_CTRL_STRING_OPERATION_BUILD_MODEPOOL, SOP_ATTR, {0,0,0,0,1,1}, {}, "Build the modepool of the display device if it does not already have one." },
+ { "DisplayPortConnectorType", NV_CTRL_DISPLAYPORT_CONNECTOR_TYPE, INT_ATTR, {0,0,0,0,1,0}, {}, "Returns the DisplayPort connector type."},
+ { "DisplayPortIsMultiStream", NV_CTRL_DISPLAYPORT_IS_MULTISTREAM, INT_ATTR, {0,0,0,0,1,0}, {}, "Returns 1 if the DisplayPort display is a MultiStream device, and 0 otherwise."},
+ { "DisplayPortSinkIsAudioCapable", NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE, INT_ATTR, {0,0,0,0,1,0}, {}, "Returns 1 if the DisplayPort display is capable of playing audio, and 0 otherwise."},
/* TV */
{ "TVOverScan", NV_CTRL_TV_OVERSCAN, INT_ATTR, {0,0,0,0,0,0}, { .int_flags = {0,0,0,0,0,0,0} }, "Adjusts the amount of overscan on the specified display device." },
@@ -384,7 +386,7 @@ const int attributeTableLen = ARRAY_LEN(attributeTable);
* the last attribute that the table knows about.
*/
-#if NV_CTRL_LAST_ATTRIBUTE != NV_CTRL_GPU_FRAMELOCK_FIRMWARE_UNSUPPORTED
+#if NV_CTRL_LAST_ATTRIBUTE != NV_CTRL_DISPLAYPORT_SINK_IS_AUDIO_CAPABLE
#warning "Have you forgotten to add a new integer attribute to attributeTable?"
#endif
diff --git a/src/version.h b/src/version.h
index 2ed551d..da6dd55 100644
--- a/src/version.h
+++ b/src/version.h
@@ -1 +1 @@
-#define NVIDIA_VERSION "364.19"
+#define NVIDIA_VERSION "367.18"
diff --git a/src/version.mk b/src/version.mk
index 5c7a2e0..b04515f 100644
--- a/src/version.mk
+++ b/src/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 364.19
+NVIDIA_VERSION = 367.18
diff --git a/utils.mk b/utils.mk
index 958714f..31d40f9 100644
--- a/utils.mk
+++ b/utils.mk
@@ -54,9 +54,11 @@ HOST_CFLAGS += -Wno-unused-parameter -Wno-format-zero-length
ifeq ($(DEBUG),1)
STRIP_CMD ?= true
+ DO_STRIP ?=
CFLAGS += -O0 -g
else
STRIP_CMD ?= strip
+ DO_STRIP ?= 1
endif
INSTALL ?= install
@@ -154,10 +156,6 @@ OUTPUTDIR_ABSOLUTE ?= $(CURDIR)/$(OUTPUTDIR)
NV_SEPARATE_DEBUG_INFO ?=
NV_KEEP_UNSTRIPPED_BINARIES ?=
-DO_STRIP ?=
-ifneq ($(DEBUG),1)
- DO_STRIP = 1
-endif
NV_QUIET_COMMAND_REMOVED_TARGET_PREFIX ?=
diff --git a/version.mk b/version.mk
index 5c7a2e0..b04515f 100644
--- a/version.mk
+++ b/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 364.19
+NVIDIA_VERSION = 367.18